| void {
+ const command = new RemoveEndpointsCommand(args);
+ if (typeof optionsOrCb === "function") {
+ this.send(command, optionsOrCb);
+ } else if (typeof cb === "function") {
+ if (typeof optionsOrCb !== "object") throw new Error(`Expect http options but get ${typeof optionsOrCb}`);
+ this.send(command, optionsOrCb || {}, cb);
+ } else {
+ return this.send(command, optionsOrCb);
+ }
+ }
+
/**
* Add tags to an accelerator resource.
* For more information, see Tagging
diff --git a/clients/client-global-accelerator/src/GlobalAcceleratorClient.ts b/clients/client-global-accelerator/src/GlobalAcceleratorClient.ts
index 660055593012..20389f5b840b 100644
--- a/clients/client-global-accelerator/src/GlobalAcceleratorClient.ts
+++ b/clients/client-global-accelerator/src/GlobalAcceleratorClient.ts
@@ -1,13 +1,7 @@
// smithy-typescript generated code
-import {
- EndpointsInputConfig,
- EndpointsResolvedConfig,
- RegionInputConfig,
- RegionResolvedConfig,
- resolveEndpointsConfig,
- resolveRegionConfig,
-} from "@aws-sdk/config-resolver";
+import { RegionInputConfig, RegionResolvedConfig, resolveRegionConfig } from "@aws-sdk/config-resolver";
import { getContentLengthPlugin } from "@aws-sdk/middleware-content-length";
+import { EndpointInputConfig, EndpointResolvedConfig, resolveEndpointConfig } from "@aws-sdk/middleware-endpoint";
import {
getHostHeaderPlugin,
HostHeaderInputConfig,
@@ -41,13 +35,13 @@ import {
Credentials as __Credentials,
Decoder as __Decoder,
Encoder as __Encoder,
+ EndpointV2 as __EndpointV2,
Hash as __Hash,
HashConstructor as __HashConstructor,
HttpHandlerOptions as __HttpHandlerOptions,
Logger as __Logger,
Provider as __Provider,
Provider,
- RegionInfoProvider,
StreamCollector as __StreamCollector,
UrlParser as __UrlParser,
UserAgent as __UserAgent,
@@ -57,6 +51,7 @@ import {
AddCustomRoutingEndpointsCommandInput,
AddCustomRoutingEndpointsCommandOutput,
} from "./commands/AddCustomRoutingEndpointsCommand";
+import { AddEndpointsCommandInput, AddEndpointsCommandOutput } from "./commands/AddEndpointsCommand";
import { AdvertiseByoipCidrCommandInput, AdvertiseByoipCidrCommandOutput } from "./commands/AdvertiseByoipCidrCommand";
import {
AllowCustomRoutingTrafficCommandInput,
@@ -168,6 +163,7 @@ import {
RemoveCustomRoutingEndpointsCommandInput,
RemoveCustomRoutingEndpointsCommandOutput,
} from "./commands/RemoveCustomRoutingEndpointsCommand";
+import { RemoveEndpointsCommandInput, RemoveEndpointsCommandOutput } from "./commands/RemoveEndpointsCommand";
import { TagResourceCommandInput, TagResourceCommandOutput } from "./commands/TagResourceCommand";
import { UntagResourceCommandInput, UntagResourceCommandOutput } from "./commands/UntagResourceCommand";
import {
@@ -193,10 +189,17 @@ import {
} from "./commands/UpdateEndpointGroupCommand";
import { UpdateListenerCommandInput, UpdateListenerCommandOutput } from "./commands/UpdateListenerCommand";
import { WithdrawByoipCidrCommandInput, WithdrawByoipCidrCommandOutput } from "./commands/WithdrawByoipCidrCommand";
+import {
+ ClientInputEndpointParameters,
+ ClientResolvedEndpointParameters,
+ EndpointParameters,
+ resolveClientEndpointParameters,
+} from "./endpoint/EndpointParameters";
import { getRuntimeConfig as __getRuntimeConfig } from "./runtimeConfig";
export type ServiceInputTypes =
| AddCustomRoutingEndpointsCommandInput
+ | AddEndpointsCommandInput
| AdvertiseByoipCidrCommandInput
| AllowCustomRoutingTrafficCommandInput
| CreateAcceleratorCommandInput
@@ -233,6 +236,7 @@ export type ServiceInputTypes =
| ListTagsForResourceCommandInput
| ProvisionByoipCidrCommandInput
| RemoveCustomRoutingEndpointsCommandInput
+ | RemoveEndpointsCommandInput
| TagResourceCommandInput
| UntagResourceCommandInput
| UpdateAcceleratorAttributesCommandInput
@@ -246,6 +250,7 @@ export type ServiceInputTypes =
export type ServiceOutputTypes =
| AddCustomRoutingEndpointsCommandOutput
+ | AddEndpointsCommandOutput
| AdvertiseByoipCidrCommandOutput
| AllowCustomRoutingTrafficCommandOutput
| CreateAcceleratorCommandOutput
@@ -282,6 +287,7 @@ export type ServiceOutputTypes =
| ListTagsForResourceCommandOutput
| ProvisionByoipCidrCommandOutput
| RemoveCustomRoutingEndpointsCommandOutput
+ | RemoveEndpointsCommandOutput
| TagResourceCommandOutput
| UntagResourceCommandOutput
| UpdateAcceleratorAttributesCommandOutput
@@ -402,12 +408,6 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__
*/
credentialDefaultProvider?: (input: any) => __Provider<__Credentials>;
- /**
- * Fetch related hostname, signing name or signing region with given region.
- * @internal
- */
- regionInfoProvider?: RegionInfoProvider;
-
/**
* The provider populating default tracking information to be sent with `user-agent`, `x-amz-user-agent` header
* @internal
@@ -423,11 +423,12 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__
type GlobalAcceleratorClientConfigType = Partial<__SmithyConfiguration<__HttpHandlerOptions>> &
ClientDefaults &
RegionInputConfig &
- EndpointsInputConfig &
+ EndpointInputConfig &
RetryInputConfig &
HostHeaderInputConfig &
AwsAuthInputConfig &
- UserAgentInputConfig;
+ UserAgentInputConfig &
+ ClientInputEndpointParameters;
/**
* The configuration interface of GlobalAcceleratorClient class constructor that set the region, credentials and other options.
*/
@@ -436,11 +437,12 @@ export interface GlobalAcceleratorClientConfig extends GlobalAcceleratorClientCo
type GlobalAcceleratorClientResolvedConfigType = __SmithyResolvedConfiguration<__HttpHandlerOptions> &
Required &
RegionResolvedConfig &
- EndpointsResolvedConfig &
+ EndpointResolvedConfig &
RetryResolvedConfig &
HostHeaderResolvedConfig &
AwsAuthResolvedConfig &
- UserAgentResolvedConfig;
+ UserAgentResolvedConfig &
+ ClientResolvedEndpointParameters;
/**
* The resolved configuration interface of GlobalAcceleratorClient class. This is resolved and normalized from the {@link GlobalAcceleratorClientConfig | constructor configuration interface}.
*/
@@ -514,14 +516,15 @@ export class GlobalAcceleratorClient extends __Client<
constructor(configuration: GlobalAcceleratorClientConfig) {
const _config_0 = __getRuntimeConfig(configuration);
- const _config_1 = resolveRegionConfig(_config_0);
- const _config_2 = resolveEndpointsConfig(_config_1);
- const _config_3 = resolveRetryConfig(_config_2);
- const _config_4 = resolveHostHeaderConfig(_config_3);
- const _config_5 = resolveAwsAuthConfig(_config_4);
- const _config_6 = resolveUserAgentConfig(_config_5);
- super(_config_6);
- this.config = _config_6;
+ const _config_1 = resolveClientEndpointParameters(_config_0);
+ const _config_2 = resolveRegionConfig(_config_1);
+ const _config_3 = resolveEndpointConfig(_config_2);
+ const _config_4 = resolveRetryConfig(_config_3);
+ const _config_5 = resolveHostHeaderConfig(_config_4);
+ const _config_6 = resolveAwsAuthConfig(_config_5);
+ const _config_7 = resolveUserAgentConfig(_config_6);
+ super(_config_7);
+ this.config = _config_7;
this.middlewareStack.use(getRetryPlugin(this.config));
this.middlewareStack.use(getContentLengthPlugin(this.config));
this.middlewareStack.use(getHostHeaderPlugin(this.config));
diff --git a/clients/client-global-accelerator/src/commands/AddCustomRoutingEndpointsCommand.ts b/clients/client-global-accelerator/src/commands/AddCustomRoutingEndpointsCommand.ts
index 6e1f7e11e01f..1693e3e07967 100644
--- a/clients/client-global-accelerator/src/commands/AddCustomRoutingEndpointsCommand.ts
+++ b/clients/client-global-accelerator/src/commands/AddCustomRoutingEndpointsCommand.ts
@@ -1,4 +1,5 @@
// smithy-typescript generated code
+import { EndpointParameterInstructions, getEndpointPlugin } from "@aws-sdk/middleware-endpoint";
import { getSerdePlugin } from "@aws-sdk/middleware-serde";
import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http";
import { Command as $Command } from "@aws-sdk/smithy-client";
@@ -66,6 +67,15 @@ export class AddCustomRoutingEndpointsCommand extends $Command<
// Start section: command_properties
// End section: command_properties
+ public static getEndpointParameterInstructions(): EndpointParameterInstructions {
+ return {
+ UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" },
+ Endpoint: { type: "builtInParams", name: "endpoint" },
+ Region: { type: "builtInParams", name: "region" },
+ UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" },
+ };
+ }
+
constructor(readonly input: AddCustomRoutingEndpointsCommandInput) {
// Start section: command_constructor
super();
@@ -81,6 +91,9 @@ export class AddCustomRoutingEndpointsCommand extends $Command<
options?: __HttpHandlerOptions
): Handler {
this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize));
+ this.middlewareStack.use(
+ getEndpointPlugin(configuration, AddCustomRoutingEndpointsCommand.getEndpointParameterInstructions())
+ );
const stack = clientStack.concat(this.middlewareStack);
diff --git a/clients/client-global-accelerator/src/commands/AddEndpointsCommand.ts b/clients/client-global-accelerator/src/commands/AddEndpointsCommand.ts
new file mode 100644
index 000000000000..e79e19059ee8
--- /dev/null
+++ b/clients/client-global-accelerator/src/commands/AddEndpointsCommand.ts
@@ -0,0 +1,131 @@
+// smithy-typescript generated code
+import { EndpointParameterInstructions, getEndpointPlugin } from "@aws-sdk/middleware-endpoint";
+import { getSerdePlugin } from "@aws-sdk/middleware-serde";
+import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http";
+import { Command as $Command } from "@aws-sdk/smithy-client";
+import {
+ FinalizeHandlerArguments,
+ Handler,
+ HandlerExecutionContext,
+ HttpHandlerOptions as __HttpHandlerOptions,
+ MetadataBearer as __MetadataBearer,
+ MiddlewareStack,
+ SerdeContext as __SerdeContext,
+} from "@aws-sdk/types";
+
+import {
+ GlobalAcceleratorClientResolvedConfig,
+ ServiceInputTypes,
+ ServiceOutputTypes,
+} from "../GlobalAcceleratorClient";
+import {
+ AddEndpointsRequest,
+ AddEndpointsRequestFilterSensitiveLog,
+ AddEndpointsResponse,
+ AddEndpointsResponseFilterSensitiveLog,
+} from "../models/models_0";
+import {
+ deserializeAws_json1_1AddEndpointsCommand,
+ serializeAws_json1_1AddEndpointsCommand,
+} from "../protocols/Aws_json1_1";
+
+export interface AddEndpointsCommandInput extends AddEndpointsRequest {}
+export interface AddEndpointsCommandOutput extends AddEndpointsResponse, __MetadataBearer {}
+
+/**
+ * Add endpoints to an endpoint group. The AddEndpoints
API operation is the recommended option for adding endpoints. The
+ * alternative options are to add endpoints when you create an endpoint group (with the
+ * CreateEndpointGroup API)
+ * or when you update an endpoint group (with the
+ * UpdateEndpointGroup API).
+ * There are two advantages to using AddEndpoints
to add endpoints:
+ *
+ * -
+ *
It's faster, because Global Accelerator only has to resolve the new endpoints that
+ * you're adding.
+ *
+ * -
+ *
It's more convenient, because you don't need to specify all of the current
+ * endpoints that are already in the endpoint group in addition to the new endpoints that you want to add.
+ *
+ *
+ * @example
+ * Use a bare-bones client and the command you need to make an API call.
+ * ```javascript
+ * import { GlobalAcceleratorClient, AddEndpointsCommand } from "@aws-sdk/client-global-accelerator"; // ES Modules import
+ * // const { GlobalAcceleratorClient, AddEndpointsCommand } = require("@aws-sdk/client-global-accelerator"); // CommonJS import
+ * const client = new GlobalAcceleratorClient(config);
+ * const command = new AddEndpointsCommand(input);
+ * const response = await client.send(command);
+ * ```
+ *
+ * @see {@link AddEndpointsCommandInput} for command's `input` shape.
+ * @see {@link AddEndpointsCommandOutput} for command's `response` shape.
+ * @see {@link GlobalAcceleratorClientResolvedConfig | config} for GlobalAcceleratorClient's `config` shape.
+ *
+ */
+export class AddEndpointsCommand extends $Command<
+ AddEndpointsCommandInput,
+ AddEndpointsCommandOutput,
+ GlobalAcceleratorClientResolvedConfig
+> {
+ // Start section: command_properties
+ // End section: command_properties
+
+ public static getEndpointParameterInstructions(): EndpointParameterInstructions {
+ return {
+ UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" },
+ Endpoint: { type: "builtInParams", name: "endpoint" },
+ Region: { type: "builtInParams", name: "region" },
+ UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" },
+ };
+ }
+
+ constructor(readonly input: AddEndpointsCommandInput) {
+ // Start section: command_constructor
+ super();
+ // End section: command_constructor
+ }
+
+ /**
+ * @internal
+ */
+ resolveMiddleware(
+ clientStack: MiddlewareStack,
+ configuration: GlobalAcceleratorClientResolvedConfig,
+ options?: __HttpHandlerOptions
+ ): Handler {
+ this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize));
+ this.middlewareStack.use(getEndpointPlugin(configuration, AddEndpointsCommand.getEndpointParameterInstructions()));
+
+ const stack = clientStack.concat(this.middlewareStack);
+
+ const { logger } = configuration;
+ const clientName = "GlobalAcceleratorClient";
+ const commandName = "AddEndpointsCommand";
+ const handlerExecutionContext: HandlerExecutionContext = {
+ logger,
+ clientName,
+ commandName,
+ inputFilterSensitiveLog: AddEndpointsRequestFilterSensitiveLog,
+ outputFilterSensitiveLog: AddEndpointsResponseFilterSensitiveLog,
+ };
+ const { requestHandler } = configuration;
+ return stack.resolve(
+ (request: FinalizeHandlerArguments) =>
+ requestHandler.handle(request.request as __HttpRequest, options || {}),
+ handlerExecutionContext
+ );
+ }
+
+ private serialize(input: AddEndpointsCommandInput, context: __SerdeContext): Promise<__HttpRequest> {
+ return serializeAws_json1_1AddEndpointsCommand(input, context);
+ }
+
+ private deserialize(output: __HttpResponse, context: __SerdeContext): Promise {
+ return deserializeAws_json1_1AddEndpointsCommand(output, context);
+ }
+
+ // Start section: command_body_extra
+ // End section: command_body_extra
+}
diff --git a/clients/client-global-accelerator/src/commands/AdvertiseByoipCidrCommand.ts b/clients/client-global-accelerator/src/commands/AdvertiseByoipCidrCommand.ts
index 29eb42d49ac7..2f231429ff81 100644
--- a/clients/client-global-accelerator/src/commands/AdvertiseByoipCidrCommand.ts
+++ b/clients/client-global-accelerator/src/commands/AdvertiseByoipCidrCommand.ts
@@ -1,4 +1,5 @@
// smithy-typescript generated code
+import { EndpointParameterInstructions, getEndpointPlugin } from "@aws-sdk/middleware-endpoint";
import { getSerdePlugin } from "@aws-sdk/middleware-serde";
import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http";
import { Command as $Command } from "@aws-sdk/smithy-client";
@@ -62,6 +63,15 @@ export class AdvertiseByoipCidrCommand extends $Command<
// Start section: command_properties
// End section: command_properties
+ public static getEndpointParameterInstructions(): EndpointParameterInstructions {
+ return {
+ UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" },
+ Endpoint: { type: "builtInParams", name: "endpoint" },
+ Region: { type: "builtInParams", name: "region" },
+ UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" },
+ };
+ }
+
constructor(readonly input: AdvertiseByoipCidrCommandInput) {
// Start section: command_constructor
super();
@@ -77,6 +87,9 @@ export class AdvertiseByoipCidrCommand extends $Command<
options?: __HttpHandlerOptions
): Handler {
this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize));
+ this.middlewareStack.use(
+ getEndpointPlugin(configuration, AdvertiseByoipCidrCommand.getEndpointParameterInstructions())
+ );
const stack = clientStack.concat(this.middlewareStack);
diff --git a/clients/client-global-accelerator/src/commands/AllowCustomRoutingTrafficCommand.ts b/clients/client-global-accelerator/src/commands/AllowCustomRoutingTrafficCommand.ts
index 3d49e88c1c39..cc6f36a75079 100644
--- a/clients/client-global-accelerator/src/commands/AllowCustomRoutingTrafficCommand.ts
+++ b/clients/client-global-accelerator/src/commands/AllowCustomRoutingTrafficCommand.ts
@@ -1,4 +1,5 @@
// smithy-typescript generated code
+import { EndpointParameterInstructions, getEndpointPlugin } from "@aws-sdk/middleware-endpoint";
import { getSerdePlugin } from "@aws-sdk/middleware-serde";
import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http";
import { Command as $Command } from "@aws-sdk/smithy-client";
@@ -59,6 +60,15 @@ export class AllowCustomRoutingTrafficCommand extends $Command<
// Start section: command_properties
// End section: command_properties
+ public static getEndpointParameterInstructions(): EndpointParameterInstructions {
+ return {
+ UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" },
+ Endpoint: { type: "builtInParams", name: "endpoint" },
+ Region: { type: "builtInParams", name: "region" },
+ UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" },
+ };
+ }
+
constructor(readonly input: AllowCustomRoutingTrafficCommandInput) {
// Start section: command_constructor
super();
@@ -74,6 +84,9 @@ export class AllowCustomRoutingTrafficCommand extends $Command<
options?: __HttpHandlerOptions
): Handler {
this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize));
+ this.middlewareStack.use(
+ getEndpointPlugin(configuration, AllowCustomRoutingTrafficCommand.getEndpointParameterInstructions())
+ );
const stack = clientStack.concat(this.middlewareStack);
diff --git a/clients/client-global-accelerator/src/commands/CreateAcceleratorCommand.ts b/clients/client-global-accelerator/src/commands/CreateAcceleratorCommand.ts
index ed5300b9272d..987a1c76c6ea 100644
--- a/clients/client-global-accelerator/src/commands/CreateAcceleratorCommand.ts
+++ b/clients/client-global-accelerator/src/commands/CreateAcceleratorCommand.ts
@@ -1,4 +1,5 @@
// smithy-typescript generated code
+import { EndpointParameterInstructions, getEndpointPlugin } from "@aws-sdk/middleware-endpoint";
import { getSerdePlugin } from "@aws-sdk/middleware-serde";
import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http";
import { Command as $Command } from "@aws-sdk/smithy-client";
@@ -62,6 +63,15 @@ export class CreateAcceleratorCommand extends $Command<
// Start section: command_properties
// End section: command_properties
+ public static getEndpointParameterInstructions(): EndpointParameterInstructions {
+ return {
+ UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" },
+ Endpoint: { type: "builtInParams", name: "endpoint" },
+ Region: { type: "builtInParams", name: "region" },
+ UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" },
+ };
+ }
+
constructor(readonly input: CreateAcceleratorCommandInput) {
// Start section: command_constructor
super();
@@ -77,6 +87,9 @@ export class CreateAcceleratorCommand extends $Command<
options?: __HttpHandlerOptions
): Handler {
this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize));
+ this.middlewareStack.use(
+ getEndpointPlugin(configuration, CreateAcceleratorCommand.getEndpointParameterInstructions())
+ );
const stack = clientStack.concat(this.middlewareStack);
diff --git a/clients/client-global-accelerator/src/commands/CreateCustomRoutingAcceleratorCommand.ts b/clients/client-global-accelerator/src/commands/CreateCustomRoutingAcceleratorCommand.ts
index b33395356f97..1ff925028a55 100644
--- a/clients/client-global-accelerator/src/commands/CreateCustomRoutingAcceleratorCommand.ts
+++ b/clients/client-global-accelerator/src/commands/CreateCustomRoutingAcceleratorCommand.ts
@@ -1,4 +1,5 @@
// smithy-typescript generated code
+import { EndpointParameterInstructions, getEndpointPlugin } from "@aws-sdk/middleware-endpoint";
import { getSerdePlugin } from "@aws-sdk/middleware-serde";
import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http";
import { Command as $Command } from "@aws-sdk/smithy-client";
@@ -68,6 +69,15 @@ export class CreateCustomRoutingAcceleratorCommand extends $Command<
// Start section: command_properties
// End section: command_properties
+ public static getEndpointParameterInstructions(): EndpointParameterInstructions {
+ return {
+ UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" },
+ Endpoint: { type: "builtInParams", name: "endpoint" },
+ Region: { type: "builtInParams", name: "region" },
+ UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" },
+ };
+ }
+
constructor(readonly input: CreateCustomRoutingAcceleratorCommandInput) {
// Start section: command_constructor
super();
@@ -83,6 +93,9 @@ export class CreateCustomRoutingAcceleratorCommand extends $Command<
options?: __HttpHandlerOptions
): Handler {
this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize));
+ this.middlewareStack.use(
+ getEndpointPlugin(configuration, CreateCustomRoutingAcceleratorCommand.getEndpointParameterInstructions())
+ );
const stack = clientStack.concat(this.middlewareStack);
diff --git a/clients/client-global-accelerator/src/commands/CreateCustomRoutingEndpointGroupCommand.ts b/clients/client-global-accelerator/src/commands/CreateCustomRoutingEndpointGroupCommand.ts
index 7a8cfe45cbca..ceef1ac9d779 100644
--- a/clients/client-global-accelerator/src/commands/CreateCustomRoutingEndpointGroupCommand.ts
+++ b/clients/client-global-accelerator/src/commands/CreateCustomRoutingEndpointGroupCommand.ts
@@ -1,4 +1,5 @@
// smithy-typescript generated code
+import { EndpointParameterInstructions, getEndpointPlugin } from "@aws-sdk/middleware-endpoint";
import { getSerdePlugin } from "@aws-sdk/middleware-serde";
import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http";
import { Command as $Command } from "@aws-sdk/smithy-client";
@@ -60,6 +61,15 @@ export class CreateCustomRoutingEndpointGroupCommand extends $Command<
// Start section: command_properties
// End section: command_properties
+ public static getEndpointParameterInstructions(): EndpointParameterInstructions {
+ return {
+ UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" },
+ Endpoint: { type: "builtInParams", name: "endpoint" },
+ Region: { type: "builtInParams", name: "region" },
+ UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" },
+ };
+ }
+
constructor(readonly input: CreateCustomRoutingEndpointGroupCommandInput) {
// Start section: command_constructor
super();
@@ -75,6 +85,9 @@ export class CreateCustomRoutingEndpointGroupCommand extends $Command<
options?: __HttpHandlerOptions
): Handler {
this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize));
+ this.middlewareStack.use(
+ getEndpointPlugin(configuration, CreateCustomRoutingEndpointGroupCommand.getEndpointParameterInstructions())
+ );
const stack = clientStack.concat(this.middlewareStack);
diff --git a/clients/client-global-accelerator/src/commands/CreateCustomRoutingListenerCommand.ts b/clients/client-global-accelerator/src/commands/CreateCustomRoutingListenerCommand.ts
index 55e4bc836491..7170abd2422b 100644
--- a/clients/client-global-accelerator/src/commands/CreateCustomRoutingListenerCommand.ts
+++ b/clients/client-global-accelerator/src/commands/CreateCustomRoutingListenerCommand.ts
@@ -1,4 +1,5 @@
// smithy-typescript generated code
+import { EndpointParameterInstructions, getEndpointPlugin } from "@aws-sdk/middleware-endpoint";
import { getSerdePlugin } from "@aws-sdk/middleware-serde";
import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http";
import { Command as $Command } from "@aws-sdk/smithy-client";
@@ -59,6 +60,15 @@ export class CreateCustomRoutingListenerCommand extends $Command<
// Start section: command_properties
// End section: command_properties
+ public static getEndpointParameterInstructions(): EndpointParameterInstructions {
+ return {
+ UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" },
+ Endpoint: { type: "builtInParams", name: "endpoint" },
+ Region: { type: "builtInParams", name: "region" },
+ UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" },
+ };
+ }
+
constructor(readonly input: CreateCustomRoutingListenerCommandInput) {
// Start section: command_constructor
super();
@@ -74,6 +84,9 @@ export class CreateCustomRoutingListenerCommand extends $Command<
options?: __HttpHandlerOptions
): Handler {
this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize));
+ this.middlewareStack.use(
+ getEndpointPlugin(configuration, CreateCustomRoutingListenerCommand.getEndpointParameterInstructions())
+ );
const stack = clientStack.concat(this.middlewareStack);
diff --git a/clients/client-global-accelerator/src/commands/CreateEndpointGroupCommand.ts b/clients/client-global-accelerator/src/commands/CreateEndpointGroupCommand.ts
index 4df9cbb36ec5..a94ed1b7f934 100644
--- a/clients/client-global-accelerator/src/commands/CreateEndpointGroupCommand.ts
+++ b/clients/client-global-accelerator/src/commands/CreateEndpointGroupCommand.ts
@@ -1,4 +1,5 @@
// smithy-typescript generated code
+import { EndpointParameterInstructions, getEndpointPlugin } from "@aws-sdk/middleware-endpoint";
import { getSerdePlugin } from "@aws-sdk/middleware-serde";
import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http";
import { Command as $Command } from "@aws-sdk/smithy-client";
@@ -57,6 +58,15 @@ export class CreateEndpointGroupCommand extends $Command<
// Start section: command_properties
// End section: command_properties
+ public static getEndpointParameterInstructions(): EndpointParameterInstructions {
+ return {
+ UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" },
+ Endpoint: { type: "builtInParams", name: "endpoint" },
+ Region: { type: "builtInParams", name: "region" },
+ UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" },
+ };
+ }
+
constructor(readonly input: CreateEndpointGroupCommandInput) {
// Start section: command_constructor
super();
@@ -72,6 +82,9 @@ export class CreateEndpointGroupCommand extends $Command<
options?: __HttpHandlerOptions
): Handler {
this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize));
+ this.middlewareStack.use(
+ getEndpointPlugin(configuration, CreateEndpointGroupCommand.getEndpointParameterInstructions())
+ );
const stack = clientStack.concat(this.middlewareStack);
diff --git a/clients/client-global-accelerator/src/commands/CreateListenerCommand.ts b/clients/client-global-accelerator/src/commands/CreateListenerCommand.ts
index e412baf6f169..af05b55fa4e7 100644
--- a/clients/client-global-accelerator/src/commands/CreateListenerCommand.ts
+++ b/clients/client-global-accelerator/src/commands/CreateListenerCommand.ts
@@ -1,4 +1,5 @@
// smithy-typescript generated code
+import { EndpointParameterInstructions, getEndpointPlugin } from "@aws-sdk/middleware-endpoint";
import { getSerdePlugin } from "@aws-sdk/middleware-serde";
import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http";
import { Command as $Command } from "@aws-sdk/smithy-client";
@@ -57,6 +58,15 @@ export class CreateListenerCommand extends $Command<
// Start section: command_properties
// End section: command_properties
+ public static getEndpointParameterInstructions(): EndpointParameterInstructions {
+ return {
+ UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" },
+ Endpoint: { type: "builtInParams", name: "endpoint" },
+ Region: { type: "builtInParams", name: "region" },
+ UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" },
+ };
+ }
+
constructor(readonly input: CreateListenerCommandInput) {
// Start section: command_constructor
super();
@@ -72,6 +82,9 @@ export class CreateListenerCommand extends $Command<
options?: __HttpHandlerOptions
): Handler {
this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize));
+ this.middlewareStack.use(
+ getEndpointPlugin(configuration, CreateListenerCommand.getEndpointParameterInstructions())
+ );
const stack = clientStack.concat(this.middlewareStack);
diff --git a/clients/client-global-accelerator/src/commands/DeleteAcceleratorCommand.ts b/clients/client-global-accelerator/src/commands/DeleteAcceleratorCommand.ts
index c7563f4f1f20..ca3af0005a47 100644
--- a/clients/client-global-accelerator/src/commands/DeleteAcceleratorCommand.ts
+++ b/clients/client-global-accelerator/src/commands/DeleteAcceleratorCommand.ts
@@ -1,4 +1,5 @@
// smithy-typescript generated code
+import { EndpointParameterInstructions, getEndpointPlugin } from "@aws-sdk/middleware-endpoint";
import { getSerdePlugin } from "@aws-sdk/middleware-serde";
import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http";
import { Command as $Command } from "@aws-sdk/smithy-client";
@@ -64,6 +65,15 @@ export class DeleteAcceleratorCommand extends $Command<
// Start section: command_properties
// End section: command_properties
+ public static getEndpointParameterInstructions(): EndpointParameterInstructions {
+ return {
+ UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" },
+ Endpoint: { type: "builtInParams", name: "endpoint" },
+ Region: { type: "builtInParams", name: "region" },
+ UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" },
+ };
+ }
+
constructor(readonly input: DeleteAcceleratorCommandInput) {
// Start section: command_constructor
super();
@@ -79,6 +89,9 @@ export class DeleteAcceleratorCommand extends $Command<
options?: __HttpHandlerOptions
): Handler {
this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize));
+ this.middlewareStack.use(
+ getEndpointPlugin(configuration, DeleteAcceleratorCommand.getEndpointParameterInstructions())
+ );
const stack = clientStack.concat(this.middlewareStack);
diff --git a/clients/client-global-accelerator/src/commands/DeleteCustomRoutingAcceleratorCommand.ts b/clients/client-global-accelerator/src/commands/DeleteCustomRoutingAcceleratorCommand.ts
index 6bd5779c1646..8e5602282a4b 100644
--- a/clients/client-global-accelerator/src/commands/DeleteCustomRoutingAcceleratorCommand.ts
+++ b/clients/client-global-accelerator/src/commands/DeleteCustomRoutingAcceleratorCommand.ts
@@ -1,4 +1,5 @@
// smithy-typescript generated code
+import { EndpointParameterInstructions, getEndpointPlugin } from "@aws-sdk/middleware-endpoint";
import { getSerdePlugin } from "@aws-sdk/middleware-serde";
import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http";
import { Command as $Command } from "@aws-sdk/smithy-client";
@@ -67,6 +68,15 @@ export class DeleteCustomRoutingAcceleratorCommand extends $Command<
// Start section: command_properties
// End section: command_properties
+ public static getEndpointParameterInstructions(): EndpointParameterInstructions {
+ return {
+ UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" },
+ Endpoint: { type: "builtInParams", name: "endpoint" },
+ Region: { type: "builtInParams", name: "region" },
+ UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" },
+ };
+ }
+
constructor(readonly input: DeleteCustomRoutingAcceleratorCommandInput) {
// Start section: command_constructor
super();
@@ -82,6 +92,9 @@ export class DeleteCustomRoutingAcceleratorCommand extends $Command<
options?: __HttpHandlerOptions
): Handler {
this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize));
+ this.middlewareStack.use(
+ getEndpointPlugin(configuration, DeleteCustomRoutingAcceleratorCommand.getEndpointParameterInstructions())
+ );
const stack = clientStack.concat(this.middlewareStack);
diff --git a/clients/client-global-accelerator/src/commands/DeleteCustomRoutingEndpointGroupCommand.ts b/clients/client-global-accelerator/src/commands/DeleteCustomRoutingEndpointGroupCommand.ts
index 09066128eed9..a6f694cda52f 100644
--- a/clients/client-global-accelerator/src/commands/DeleteCustomRoutingEndpointGroupCommand.ts
+++ b/clients/client-global-accelerator/src/commands/DeleteCustomRoutingEndpointGroupCommand.ts
@@ -1,4 +1,5 @@
// smithy-typescript generated code
+import { EndpointParameterInstructions, getEndpointPlugin } from "@aws-sdk/middleware-endpoint";
import { getSerdePlugin } from "@aws-sdk/middleware-serde";
import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http";
import { Command as $Command } from "@aws-sdk/smithy-client";
@@ -54,6 +55,15 @@ export class DeleteCustomRoutingEndpointGroupCommand extends $Command<
// Start section: command_properties
// End section: command_properties
+ public static getEndpointParameterInstructions(): EndpointParameterInstructions {
+ return {
+ UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" },
+ Endpoint: { type: "builtInParams", name: "endpoint" },
+ Region: { type: "builtInParams", name: "region" },
+ UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" },
+ };
+ }
+
constructor(readonly input: DeleteCustomRoutingEndpointGroupCommandInput) {
// Start section: command_constructor
super();
@@ -69,6 +79,9 @@ export class DeleteCustomRoutingEndpointGroupCommand extends $Command<
options?: __HttpHandlerOptions
): Handler {
this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize));
+ this.middlewareStack.use(
+ getEndpointPlugin(configuration, DeleteCustomRoutingEndpointGroupCommand.getEndpointParameterInstructions())
+ );
const stack = clientStack.concat(this.middlewareStack);
diff --git a/clients/client-global-accelerator/src/commands/DeleteCustomRoutingListenerCommand.ts b/clients/client-global-accelerator/src/commands/DeleteCustomRoutingListenerCommand.ts
index 3e44b104b1b2..bcb484a52e9f 100644
--- a/clients/client-global-accelerator/src/commands/DeleteCustomRoutingListenerCommand.ts
+++ b/clients/client-global-accelerator/src/commands/DeleteCustomRoutingListenerCommand.ts
@@ -1,4 +1,5 @@
// smithy-typescript generated code
+import { EndpointParameterInstructions, getEndpointPlugin } from "@aws-sdk/middleware-endpoint";
import { getSerdePlugin } from "@aws-sdk/middleware-serde";
import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http";
import { Command as $Command } from "@aws-sdk/smithy-client";
@@ -54,6 +55,15 @@ export class DeleteCustomRoutingListenerCommand extends $Command<
// Start section: command_properties
// End section: command_properties
+ public static getEndpointParameterInstructions(): EndpointParameterInstructions {
+ return {
+ UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" },
+ Endpoint: { type: "builtInParams", name: "endpoint" },
+ Region: { type: "builtInParams", name: "region" },
+ UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" },
+ };
+ }
+
constructor(readonly input: DeleteCustomRoutingListenerCommandInput) {
// Start section: command_constructor
super();
@@ -69,6 +79,9 @@ export class DeleteCustomRoutingListenerCommand extends $Command<
options?: __HttpHandlerOptions
): Handler {
this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize));
+ this.middlewareStack.use(
+ getEndpointPlugin(configuration, DeleteCustomRoutingListenerCommand.getEndpointParameterInstructions())
+ );
const stack = clientStack.concat(this.middlewareStack);
diff --git a/clients/client-global-accelerator/src/commands/DeleteEndpointGroupCommand.ts b/clients/client-global-accelerator/src/commands/DeleteEndpointGroupCommand.ts
index b2e6626d321a..143ef0f711f6 100644
--- a/clients/client-global-accelerator/src/commands/DeleteEndpointGroupCommand.ts
+++ b/clients/client-global-accelerator/src/commands/DeleteEndpointGroupCommand.ts
@@ -1,4 +1,5 @@
// smithy-typescript generated code
+import { EndpointParameterInstructions, getEndpointPlugin } from "@aws-sdk/middleware-endpoint";
import { getSerdePlugin } from "@aws-sdk/middleware-serde";
import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http";
import { Command as $Command } from "@aws-sdk/smithy-client";
@@ -51,6 +52,15 @@ export class DeleteEndpointGroupCommand extends $Command<
// Start section: command_properties
// End section: command_properties
+ public static getEndpointParameterInstructions(): EndpointParameterInstructions {
+ return {
+ UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" },
+ Endpoint: { type: "builtInParams", name: "endpoint" },
+ Region: { type: "builtInParams", name: "region" },
+ UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" },
+ };
+ }
+
constructor(readonly input: DeleteEndpointGroupCommandInput) {
// Start section: command_constructor
super();
@@ -66,6 +76,9 @@ export class DeleteEndpointGroupCommand extends $Command<
options?: __HttpHandlerOptions
): Handler {
this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize));
+ this.middlewareStack.use(
+ getEndpointPlugin(configuration, DeleteEndpointGroupCommand.getEndpointParameterInstructions())
+ );
const stack = clientStack.concat(this.middlewareStack);
diff --git a/clients/client-global-accelerator/src/commands/DeleteListenerCommand.ts b/clients/client-global-accelerator/src/commands/DeleteListenerCommand.ts
index 0bd54601e4bf..2c3b7d3a081d 100644
--- a/clients/client-global-accelerator/src/commands/DeleteListenerCommand.ts
+++ b/clients/client-global-accelerator/src/commands/DeleteListenerCommand.ts
@@ -1,4 +1,5 @@
// smithy-typescript generated code
+import { EndpointParameterInstructions, getEndpointPlugin } from "@aws-sdk/middleware-endpoint";
import { getSerdePlugin } from "@aws-sdk/middleware-serde";
import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http";
import { Command as $Command } from "@aws-sdk/smithy-client";
@@ -51,6 +52,15 @@ export class DeleteListenerCommand extends $Command<
// Start section: command_properties
// End section: command_properties
+ public static getEndpointParameterInstructions(): EndpointParameterInstructions {
+ return {
+ UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" },
+ Endpoint: { type: "builtInParams", name: "endpoint" },
+ Region: { type: "builtInParams", name: "region" },
+ UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" },
+ };
+ }
+
constructor(readonly input: DeleteListenerCommandInput) {
// Start section: command_constructor
super();
@@ -66,6 +76,9 @@ export class DeleteListenerCommand extends $Command<
options?: __HttpHandlerOptions
): Handler {
this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize));
+ this.middlewareStack.use(
+ getEndpointPlugin(configuration, DeleteListenerCommand.getEndpointParameterInstructions())
+ );
const stack = clientStack.concat(this.middlewareStack);
diff --git a/clients/client-global-accelerator/src/commands/DenyCustomRoutingTrafficCommand.ts b/clients/client-global-accelerator/src/commands/DenyCustomRoutingTrafficCommand.ts
index 00da4c8c1611..a87e3161b49f 100644
--- a/clients/client-global-accelerator/src/commands/DenyCustomRoutingTrafficCommand.ts
+++ b/clients/client-global-accelerator/src/commands/DenyCustomRoutingTrafficCommand.ts
@@ -1,4 +1,5 @@
// smithy-typescript generated code
+import { EndpointParameterInstructions, getEndpointPlugin } from "@aws-sdk/middleware-endpoint";
import { getSerdePlugin } from "@aws-sdk/middleware-serde";
import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http";
import { Command as $Command } from "@aws-sdk/smithy-client";
@@ -56,6 +57,15 @@ export class DenyCustomRoutingTrafficCommand extends $Command<
// Start section: command_properties
// End section: command_properties
+ public static getEndpointParameterInstructions(): EndpointParameterInstructions {
+ return {
+ UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" },
+ Endpoint: { type: "builtInParams", name: "endpoint" },
+ Region: { type: "builtInParams", name: "region" },
+ UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" },
+ };
+ }
+
constructor(readonly input: DenyCustomRoutingTrafficCommandInput) {
// Start section: command_constructor
super();
@@ -71,6 +81,9 @@ export class DenyCustomRoutingTrafficCommand extends $Command<
options?: __HttpHandlerOptions
): Handler {
this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize));
+ this.middlewareStack.use(
+ getEndpointPlugin(configuration, DenyCustomRoutingTrafficCommand.getEndpointParameterInstructions())
+ );
const stack = clientStack.concat(this.middlewareStack);
diff --git a/clients/client-global-accelerator/src/commands/DeprovisionByoipCidrCommand.ts b/clients/client-global-accelerator/src/commands/DeprovisionByoipCidrCommand.ts
index bf9b379f9bde..0aabc4c462aa 100644
--- a/clients/client-global-accelerator/src/commands/DeprovisionByoipCidrCommand.ts
+++ b/clients/client-global-accelerator/src/commands/DeprovisionByoipCidrCommand.ts
@@ -1,4 +1,5 @@
// smithy-typescript generated code
+import { EndpointParameterInstructions, getEndpointPlugin } from "@aws-sdk/middleware-endpoint";
import { getSerdePlugin } from "@aws-sdk/middleware-serde";
import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http";
import { Command as $Command } from "@aws-sdk/smithy-client";
@@ -62,6 +63,15 @@ export class DeprovisionByoipCidrCommand extends $Command<
// Start section: command_properties
// End section: command_properties
+ public static getEndpointParameterInstructions(): EndpointParameterInstructions {
+ return {
+ UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" },
+ Endpoint: { type: "builtInParams", name: "endpoint" },
+ Region: { type: "builtInParams", name: "region" },
+ UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" },
+ };
+ }
+
constructor(readonly input: DeprovisionByoipCidrCommandInput) {
// Start section: command_constructor
super();
@@ -77,6 +87,9 @@ export class DeprovisionByoipCidrCommand extends $Command<
options?: __HttpHandlerOptions
): Handler {
this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize));
+ this.middlewareStack.use(
+ getEndpointPlugin(configuration, DeprovisionByoipCidrCommand.getEndpointParameterInstructions())
+ );
const stack = clientStack.concat(this.middlewareStack);
diff --git a/clients/client-global-accelerator/src/commands/DescribeAcceleratorAttributesCommand.ts b/clients/client-global-accelerator/src/commands/DescribeAcceleratorAttributesCommand.ts
index 733f5ac90657..540b57d8aaa0 100644
--- a/clients/client-global-accelerator/src/commands/DescribeAcceleratorAttributesCommand.ts
+++ b/clients/client-global-accelerator/src/commands/DescribeAcceleratorAttributesCommand.ts
@@ -1,4 +1,5 @@
// smithy-typescript generated code
+import { EndpointParameterInstructions, getEndpointPlugin } from "@aws-sdk/middleware-endpoint";
import { getSerdePlugin } from "@aws-sdk/middleware-serde";
import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http";
import { Command as $Command } from "@aws-sdk/smithy-client";
@@ -59,6 +60,15 @@ export class DescribeAcceleratorAttributesCommand extends $Command<
// Start section: command_properties
// End section: command_properties
+ public static getEndpointParameterInstructions(): EndpointParameterInstructions {
+ return {
+ UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" },
+ Endpoint: { type: "builtInParams", name: "endpoint" },
+ Region: { type: "builtInParams", name: "region" },
+ UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" },
+ };
+ }
+
constructor(readonly input: DescribeAcceleratorAttributesCommandInput) {
// Start section: command_constructor
super();
@@ -74,6 +84,9 @@ export class DescribeAcceleratorAttributesCommand extends $Command<
options?: __HttpHandlerOptions
): Handler {
this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize));
+ this.middlewareStack.use(
+ getEndpointPlugin(configuration, DescribeAcceleratorAttributesCommand.getEndpointParameterInstructions())
+ );
const stack = clientStack.concat(this.middlewareStack);
diff --git a/clients/client-global-accelerator/src/commands/DescribeAcceleratorCommand.ts b/clients/client-global-accelerator/src/commands/DescribeAcceleratorCommand.ts
index f05ed69bd22c..d0e6d4bc6f7d 100644
--- a/clients/client-global-accelerator/src/commands/DescribeAcceleratorCommand.ts
+++ b/clients/client-global-accelerator/src/commands/DescribeAcceleratorCommand.ts
@@ -1,4 +1,5 @@
// smithy-typescript generated code
+import { EndpointParameterInstructions, getEndpointPlugin } from "@aws-sdk/middleware-endpoint";
import { getSerdePlugin } from "@aws-sdk/middleware-serde";
import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http";
import { Command as $Command } from "@aws-sdk/smithy-client";
@@ -56,6 +57,15 @@ export class DescribeAcceleratorCommand extends $Command<
// Start section: command_properties
// End section: command_properties
+ public static getEndpointParameterInstructions(): EndpointParameterInstructions {
+ return {
+ UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" },
+ Endpoint: { type: "builtInParams", name: "endpoint" },
+ Region: { type: "builtInParams", name: "region" },
+ UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" },
+ };
+ }
+
constructor(readonly input: DescribeAcceleratorCommandInput) {
// Start section: command_constructor
super();
@@ -71,6 +81,9 @@ export class DescribeAcceleratorCommand extends $Command<
options?: __HttpHandlerOptions
): Handler {
this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize));
+ this.middlewareStack.use(
+ getEndpointPlugin(configuration, DescribeAcceleratorCommand.getEndpointParameterInstructions())
+ );
const stack = clientStack.concat(this.middlewareStack);
diff --git a/clients/client-global-accelerator/src/commands/DescribeCustomRoutingAcceleratorAttributesCommand.ts b/clients/client-global-accelerator/src/commands/DescribeCustomRoutingAcceleratorAttributesCommand.ts
index 1479cc2ac7c7..3e3898c40f63 100644
--- a/clients/client-global-accelerator/src/commands/DescribeCustomRoutingAcceleratorAttributesCommand.ts
+++ b/clients/client-global-accelerator/src/commands/DescribeCustomRoutingAcceleratorAttributesCommand.ts
@@ -1,4 +1,5 @@
// smithy-typescript generated code
+import { EndpointParameterInstructions, getEndpointPlugin } from "@aws-sdk/middleware-endpoint";
import { getSerdePlugin } from "@aws-sdk/middleware-serde";
import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http";
import { Command as $Command } from "@aws-sdk/smithy-client";
@@ -59,6 +60,15 @@ export class DescribeCustomRoutingAcceleratorAttributesCommand extends $Command<
// Start section: command_properties
// End section: command_properties
+ public static getEndpointParameterInstructions(): EndpointParameterInstructions {
+ return {
+ UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" },
+ Endpoint: { type: "builtInParams", name: "endpoint" },
+ Region: { type: "builtInParams", name: "region" },
+ UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" },
+ };
+ }
+
constructor(readonly input: DescribeCustomRoutingAcceleratorAttributesCommandInput) {
// Start section: command_constructor
super();
@@ -77,6 +87,12 @@ export class DescribeCustomRoutingAcceleratorAttributesCommand extends $Command<
DescribeCustomRoutingAcceleratorAttributesCommandOutput
> {
this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize));
+ this.middlewareStack.use(
+ getEndpointPlugin(
+ configuration,
+ DescribeCustomRoutingAcceleratorAttributesCommand.getEndpointParameterInstructions()
+ )
+ );
const stack = clientStack.concat(this.middlewareStack);
diff --git a/clients/client-global-accelerator/src/commands/DescribeCustomRoutingAcceleratorCommand.ts b/clients/client-global-accelerator/src/commands/DescribeCustomRoutingAcceleratorCommand.ts
index 068ac40b40e5..3b8addcf6feb 100644
--- a/clients/client-global-accelerator/src/commands/DescribeCustomRoutingAcceleratorCommand.ts
+++ b/clients/client-global-accelerator/src/commands/DescribeCustomRoutingAcceleratorCommand.ts
@@ -1,4 +1,5 @@
// smithy-typescript generated code
+import { EndpointParameterInstructions, getEndpointPlugin } from "@aws-sdk/middleware-endpoint";
import { getSerdePlugin } from "@aws-sdk/middleware-serde";
import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http";
import { Command as $Command } from "@aws-sdk/smithy-client";
@@ -58,6 +59,15 @@ export class DescribeCustomRoutingAcceleratorCommand extends $Command<
// Start section: command_properties
// End section: command_properties
+ public static getEndpointParameterInstructions(): EndpointParameterInstructions {
+ return {
+ UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" },
+ Endpoint: { type: "builtInParams", name: "endpoint" },
+ Region: { type: "builtInParams", name: "region" },
+ UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" },
+ };
+ }
+
constructor(readonly input: DescribeCustomRoutingAcceleratorCommandInput) {
// Start section: command_constructor
super();
@@ -73,6 +83,9 @@ export class DescribeCustomRoutingAcceleratorCommand extends $Command<
options?: __HttpHandlerOptions
): Handler {
this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize));
+ this.middlewareStack.use(
+ getEndpointPlugin(configuration, DescribeCustomRoutingAcceleratorCommand.getEndpointParameterInstructions())
+ );
const stack = clientStack.concat(this.middlewareStack);
diff --git a/clients/client-global-accelerator/src/commands/DescribeCustomRoutingEndpointGroupCommand.ts b/clients/client-global-accelerator/src/commands/DescribeCustomRoutingEndpointGroupCommand.ts
index d375626162f7..825dfe6d1184 100644
--- a/clients/client-global-accelerator/src/commands/DescribeCustomRoutingEndpointGroupCommand.ts
+++ b/clients/client-global-accelerator/src/commands/DescribeCustomRoutingEndpointGroupCommand.ts
@@ -1,4 +1,5 @@
// smithy-typescript generated code
+import { EndpointParameterInstructions, getEndpointPlugin } from "@aws-sdk/middleware-endpoint";
import { getSerdePlugin } from "@aws-sdk/middleware-serde";
import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http";
import { Command as $Command } from "@aws-sdk/smithy-client";
@@ -58,6 +59,15 @@ export class DescribeCustomRoutingEndpointGroupCommand extends $Command<
// Start section: command_properties
// End section: command_properties
+ public static getEndpointParameterInstructions(): EndpointParameterInstructions {
+ return {
+ UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" },
+ Endpoint: { type: "builtInParams", name: "endpoint" },
+ Region: { type: "builtInParams", name: "region" },
+ UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" },
+ };
+ }
+
constructor(readonly input: DescribeCustomRoutingEndpointGroupCommandInput) {
// Start section: command_constructor
super();
@@ -73,6 +83,9 @@ export class DescribeCustomRoutingEndpointGroupCommand extends $Command<
options?: __HttpHandlerOptions
): Handler {
this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize));
+ this.middlewareStack.use(
+ getEndpointPlugin(configuration, DescribeCustomRoutingEndpointGroupCommand.getEndpointParameterInstructions())
+ );
const stack = clientStack.concat(this.middlewareStack);
diff --git a/clients/client-global-accelerator/src/commands/DescribeCustomRoutingListenerCommand.ts b/clients/client-global-accelerator/src/commands/DescribeCustomRoutingListenerCommand.ts
index 81eb3a3d9070..6ead84d5a97b 100644
--- a/clients/client-global-accelerator/src/commands/DescribeCustomRoutingListenerCommand.ts
+++ b/clients/client-global-accelerator/src/commands/DescribeCustomRoutingListenerCommand.ts
@@ -1,4 +1,5 @@
// smithy-typescript generated code
+import { EndpointParameterInstructions, getEndpointPlugin } from "@aws-sdk/middleware-endpoint";
import { getSerdePlugin } from "@aws-sdk/middleware-serde";
import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http";
import { Command as $Command } from "@aws-sdk/smithy-client";
@@ -58,6 +59,15 @@ export class DescribeCustomRoutingListenerCommand extends $Command<
// Start section: command_properties
// End section: command_properties
+ public static getEndpointParameterInstructions(): EndpointParameterInstructions {
+ return {
+ UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" },
+ Endpoint: { type: "builtInParams", name: "endpoint" },
+ Region: { type: "builtInParams", name: "region" },
+ UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" },
+ };
+ }
+
constructor(readonly input: DescribeCustomRoutingListenerCommandInput) {
// Start section: command_constructor
super();
@@ -73,6 +83,9 @@ export class DescribeCustomRoutingListenerCommand extends $Command<
options?: __HttpHandlerOptions
): Handler {
this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize));
+ this.middlewareStack.use(
+ getEndpointPlugin(configuration, DescribeCustomRoutingListenerCommand.getEndpointParameterInstructions())
+ );
const stack = clientStack.concat(this.middlewareStack);
diff --git a/clients/client-global-accelerator/src/commands/DescribeEndpointGroupCommand.ts b/clients/client-global-accelerator/src/commands/DescribeEndpointGroupCommand.ts
index 250d2077eef1..51764fd23c9e 100644
--- a/clients/client-global-accelerator/src/commands/DescribeEndpointGroupCommand.ts
+++ b/clients/client-global-accelerator/src/commands/DescribeEndpointGroupCommand.ts
@@ -1,4 +1,5 @@
// smithy-typescript generated code
+import { EndpointParameterInstructions, getEndpointPlugin } from "@aws-sdk/middleware-endpoint";
import { getSerdePlugin } from "@aws-sdk/middleware-serde";
import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http";
import { Command as $Command } from "@aws-sdk/smithy-client";
@@ -56,6 +57,15 @@ export class DescribeEndpointGroupCommand extends $Command<
// Start section: command_properties
// End section: command_properties
+ public static getEndpointParameterInstructions(): EndpointParameterInstructions {
+ return {
+ UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" },
+ Endpoint: { type: "builtInParams", name: "endpoint" },
+ Region: { type: "builtInParams", name: "region" },
+ UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" },
+ };
+ }
+
constructor(readonly input: DescribeEndpointGroupCommandInput) {
// Start section: command_constructor
super();
@@ -71,6 +81,9 @@ export class DescribeEndpointGroupCommand extends $Command<
options?: __HttpHandlerOptions
): Handler {
this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize));
+ this.middlewareStack.use(
+ getEndpointPlugin(configuration, DescribeEndpointGroupCommand.getEndpointParameterInstructions())
+ );
const stack = clientStack.concat(this.middlewareStack);
diff --git a/clients/client-global-accelerator/src/commands/DescribeListenerCommand.ts b/clients/client-global-accelerator/src/commands/DescribeListenerCommand.ts
index 5160c0a6ea0a..772885da1d35 100644
--- a/clients/client-global-accelerator/src/commands/DescribeListenerCommand.ts
+++ b/clients/client-global-accelerator/src/commands/DescribeListenerCommand.ts
@@ -1,4 +1,5 @@
// smithy-typescript generated code
+import { EndpointParameterInstructions, getEndpointPlugin } from "@aws-sdk/middleware-endpoint";
import { getSerdePlugin } from "@aws-sdk/middleware-serde";
import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http";
import { Command as $Command } from "@aws-sdk/smithy-client";
@@ -56,6 +57,15 @@ export class DescribeListenerCommand extends $Command<
// Start section: command_properties
// End section: command_properties
+ public static getEndpointParameterInstructions(): EndpointParameterInstructions {
+ return {
+ UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" },
+ Endpoint: { type: "builtInParams", name: "endpoint" },
+ Region: { type: "builtInParams", name: "region" },
+ UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" },
+ };
+ }
+
constructor(readonly input: DescribeListenerCommandInput) {
// Start section: command_constructor
super();
@@ -71,6 +81,9 @@ export class DescribeListenerCommand extends $Command<
options?: __HttpHandlerOptions
): Handler {
this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize));
+ this.middlewareStack.use(
+ getEndpointPlugin(configuration, DescribeListenerCommand.getEndpointParameterInstructions())
+ );
const stack = clientStack.concat(this.middlewareStack);
diff --git a/clients/client-global-accelerator/src/commands/ListAcceleratorsCommand.ts b/clients/client-global-accelerator/src/commands/ListAcceleratorsCommand.ts
index 86b0d55f4a40..9bd3b0ea5ccf 100644
--- a/clients/client-global-accelerator/src/commands/ListAcceleratorsCommand.ts
+++ b/clients/client-global-accelerator/src/commands/ListAcceleratorsCommand.ts
@@ -1,4 +1,5 @@
// smithy-typescript generated code
+import { EndpointParameterInstructions, getEndpointPlugin } from "@aws-sdk/middleware-endpoint";
import { getSerdePlugin } from "@aws-sdk/middleware-serde";
import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http";
import { Command as $Command } from "@aws-sdk/smithy-client";
@@ -56,6 +57,15 @@ export class ListAcceleratorsCommand extends $Command<
// Start section: command_properties
// End section: command_properties
+ public static getEndpointParameterInstructions(): EndpointParameterInstructions {
+ return {
+ UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" },
+ Endpoint: { type: "builtInParams", name: "endpoint" },
+ Region: { type: "builtInParams", name: "region" },
+ UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" },
+ };
+ }
+
constructor(readonly input: ListAcceleratorsCommandInput) {
// Start section: command_constructor
super();
@@ -71,6 +81,9 @@ export class ListAcceleratorsCommand extends $Command<
options?: __HttpHandlerOptions
): Handler {
this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize));
+ this.middlewareStack.use(
+ getEndpointPlugin(configuration, ListAcceleratorsCommand.getEndpointParameterInstructions())
+ );
const stack = clientStack.concat(this.middlewareStack);
diff --git a/clients/client-global-accelerator/src/commands/ListByoipCidrsCommand.ts b/clients/client-global-accelerator/src/commands/ListByoipCidrsCommand.ts
index 5a83f58c4c5b..ca1642658431 100644
--- a/clients/client-global-accelerator/src/commands/ListByoipCidrsCommand.ts
+++ b/clients/client-global-accelerator/src/commands/ListByoipCidrsCommand.ts
@@ -1,4 +1,5 @@
// smithy-typescript generated code
+import { EndpointParameterInstructions, getEndpointPlugin } from "@aws-sdk/middleware-endpoint";
import { getSerdePlugin } from "@aws-sdk/middleware-serde";
import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http";
import { Command as $Command } from "@aws-sdk/smithy-client";
@@ -57,6 +58,15 @@ export class ListByoipCidrsCommand extends $Command<
// Start section: command_properties
// End section: command_properties
+ public static getEndpointParameterInstructions(): EndpointParameterInstructions {
+ return {
+ UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" },
+ Endpoint: { type: "builtInParams", name: "endpoint" },
+ Region: { type: "builtInParams", name: "region" },
+ UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" },
+ };
+ }
+
constructor(readonly input: ListByoipCidrsCommandInput) {
// Start section: command_constructor
super();
@@ -72,6 +82,9 @@ export class ListByoipCidrsCommand extends $Command<
options?: __HttpHandlerOptions
): Handler {
this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize));
+ this.middlewareStack.use(
+ getEndpointPlugin(configuration, ListByoipCidrsCommand.getEndpointParameterInstructions())
+ );
const stack = clientStack.concat(this.middlewareStack);
diff --git a/clients/client-global-accelerator/src/commands/ListCustomRoutingAcceleratorsCommand.ts b/clients/client-global-accelerator/src/commands/ListCustomRoutingAcceleratorsCommand.ts
index 0763641b755d..aed3cf30d2cf 100644
--- a/clients/client-global-accelerator/src/commands/ListCustomRoutingAcceleratorsCommand.ts
+++ b/clients/client-global-accelerator/src/commands/ListCustomRoutingAcceleratorsCommand.ts
@@ -1,4 +1,5 @@
// smithy-typescript generated code
+import { EndpointParameterInstructions, getEndpointPlugin } from "@aws-sdk/middleware-endpoint";
import { getSerdePlugin } from "@aws-sdk/middleware-serde";
import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http";
import { Command as $Command } from "@aws-sdk/smithy-client";
@@ -58,6 +59,15 @@ export class ListCustomRoutingAcceleratorsCommand extends $Command<
// Start section: command_properties
// End section: command_properties
+ public static getEndpointParameterInstructions(): EndpointParameterInstructions {
+ return {
+ UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" },
+ Endpoint: { type: "builtInParams", name: "endpoint" },
+ Region: { type: "builtInParams", name: "region" },
+ UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" },
+ };
+ }
+
constructor(readonly input: ListCustomRoutingAcceleratorsCommandInput) {
// Start section: command_constructor
super();
@@ -73,6 +83,9 @@ export class ListCustomRoutingAcceleratorsCommand extends $Command<
options?: __HttpHandlerOptions
): Handler {
this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize));
+ this.middlewareStack.use(
+ getEndpointPlugin(configuration, ListCustomRoutingAcceleratorsCommand.getEndpointParameterInstructions())
+ );
const stack = clientStack.concat(this.middlewareStack);
diff --git a/clients/client-global-accelerator/src/commands/ListCustomRoutingEndpointGroupsCommand.ts b/clients/client-global-accelerator/src/commands/ListCustomRoutingEndpointGroupsCommand.ts
index b4dd78130453..62f4f4011a21 100644
--- a/clients/client-global-accelerator/src/commands/ListCustomRoutingEndpointGroupsCommand.ts
+++ b/clients/client-global-accelerator/src/commands/ListCustomRoutingEndpointGroupsCommand.ts
@@ -1,4 +1,5 @@
// smithy-typescript generated code
+import { EndpointParameterInstructions, getEndpointPlugin } from "@aws-sdk/middleware-endpoint";
import { getSerdePlugin } from "@aws-sdk/middleware-serde";
import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http";
import { Command as $Command } from "@aws-sdk/smithy-client";
@@ -58,6 +59,15 @@ export class ListCustomRoutingEndpointGroupsCommand extends $Command<
// Start section: command_properties
// End section: command_properties
+ public static getEndpointParameterInstructions(): EndpointParameterInstructions {
+ return {
+ UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" },
+ Endpoint: { type: "builtInParams", name: "endpoint" },
+ Region: { type: "builtInParams", name: "region" },
+ UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" },
+ };
+ }
+
constructor(readonly input: ListCustomRoutingEndpointGroupsCommandInput) {
// Start section: command_constructor
super();
@@ -73,6 +83,9 @@ export class ListCustomRoutingEndpointGroupsCommand extends $Command<
options?: __HttpHandlerOptions
): Handler {
this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize));
+ this.middlewareStack.use(
+ getEndpointPlugin(configuration, ListCustomRoutingEndpointGroupsCommand.getEndpointParameterInstructions())
+ );
const stack = clientStack.concat(this.middlewareStack);
diff --git a/clients/client-global-accelerator/src/commands/ListCustomRoutingListenersCommand.ts b/clients/client-global-accelerator/src/commands/ListCustomRoutingListenersCommand.ts
index 00dc0a1b7ba2..8d2767acade8 100644
--- a/clients/client-global-accelerator/src/commands/ListCustomRoutingListenersCommand.ts
+++ b/clients/client-global-accelerator/src/commands/ListCustomRoutingListenersCommand.ts
@@ -1,4 +1,5 @@
// smithy-typescript generated code
+import { EndpointParameterInstructions, getEndpointPlugin } from "@aws-sdk/middleware-endpoint";
import { getSerdePlugin } from "@aws-sdk/middleware-serde";
import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http";
import { Command as $Command } from "@aws-sdk/smithy-client";
@@ -56,6 +57,15 @@ export class ListCustomRoutingListenersCommand extends $Command<
// Start section: command_properties
// End section: command_properties
+ public static getEndpointParameterInstructions(): EndpointParameterInstructions {
+ return {
+ UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" },
+ Endpoint: { type: "builtInParams", name: "endpoint" },
+ Region: { type: "builtInParams", name: "region" },
+ UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" },
+ };
+ }
+
constructor(readonly input: ListCustomRoutingListenersCommandInput) {
// Start section: command_constructor
super();
@@ -71,6 +81,9 @@ export class ListCustomRoutingListenersCommand extends $Command<
options?: __HttpHandlerOptions
): Handler {
this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize));
+ this.middlewareStack.use(
+ getEndpointPlugin(configuration, ListCustomRoutingListenersCommand.getEndpointParameterInstructions())
+ );
const stack = clientStack.concat(this.middlewareStack);
diff --git a/clients/client-global-accelerator/src/commands/ListCustomRoutingPortMappingsByDestinationCommand.ts b/clients/client-global-accelerator/src/commands/ListCustomRoutingPortMappingsByDestinationCommand.ts
index aa310c4dd2ee..ae68adc4247f 100644
--- a/clients/client-global-accelerator/src/commands/ListCustomRoutingPortMappingsByDestinationCommand.ts
+++ b/clients/client-global-accelerator/src/commands/ListCustomRoutingPortMappingsByDestinationCommand.ts
@@ -1,4 +1,5 @@
// smithy-typescript generated code
+import { EndpointParameterInstructions, getEndpointPlugin } from "@aws-sdk/middleware-endpoint";
import { getSerdePlugin } from "@aws-sdk/middleware-serde";
import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http";
import { Command as $Command } from "@aws-sdk/smithy-client";
@@ -62,6 +63,15 @@ export class ListCustomRoutingPortMappingsByDestinationCommand extends $Command<
// Start section: command_properties
// End section: command_properties
+ public static getEndpointParameterInstructions(): EndpointParameterInstructions {
+ return {
+ UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" },
+ Endpoint: { type: "builtInParams", name: "endpoint" },
+ Region: { type: "builtInParams", name: "region" },
+ UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" },
+ };
+ }
+
constructor(readonly input: ListCustomRoutingPortMappingsByDestinationCommandInput) {
// Start section: command_constructor
super();
@@ -80,6 +90,12 @@ export class ListCustomRoutingPortMappingsByDestinationCommand extends $Command<
ListCustomRoutingPortMappingsByDestinationCommandOutput
> {
this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize));
+ this.middlewareStack.use(
+ getEndpointPlugin(
+ configuration,
+ ListCustomRoutingPortMappingsByDestinationCommand.getEndpointParameterInstructions()
+ )
+ );
const stack = clientStack.concat(this.middlewareStack);
diff --git a/clients/client-global-accelerator/src/commands/ListCustomRoutingPortMappingsCommand.ts b/clients/client-global-accelerator/src/commands/ListCustomRoutingPortMappingsCommand.ts
index cd65251e6e3e..5c6900a6dcc9 100644
--- a/clients/client-global-accelerator/src/commands/ListCustomRoutingPortMappingsCommand.ts
+++ b/clients/client-global-accelerator/src/commands/ListCustomRoutingPortMappingsCommand.ts
@@ -1,4 +1,5 @@
// smithy-typescript generated code
+import { EndpointParameterInstructions, getEndpointPlugin } from "@aws-sdk/middleware-endpoint";
import { getSerdePlugin } from "@aws-sdk/middleware-serde";
import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http";
import { Command as $Command } from "@aws-sdk/smithy-client";
@@ -66,6 +67,15 @@ export class ListCustomRoutingPortMappingsCommand extends $Command<
// Start section: command_properties
// End section: command_properties
+ public static getEndpointParameterInstructions(): EndpointParameterInstructions {
+ return {
+ UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" },
+ Endpoint: { type: "builtInParams", name: "endpoint" },
+ Region: { type: "builtInParams", name: "region" },
+ UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" },
+ };
+ }
+
constructor(readonly input: ListCustomRoutingPortMappingsCommandInput) {
// Start section: command_constructor
super();
@@ -81,6 +91,9 @@ export class ListCustomRoutingPortMappingsCommand extends $Command<
options?: __HttpHandlerOptions
): Handler {
this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize));
+ this.middlewareStack.use(
+ getEndpointPlugin(configuration, ListCustomRoutingPortMappingsCommand.getEndpointParameterInstructions())
+ );
const stack = clientStack.concat(this.middlewareStack);
diff --git a/clients/client-global-accelerator/src/commands/ListEndpointGroupsCommand.ts b/clients/client-global-accelerator/src/commands/ListEndpointGroupsCommand.ts
index ee179dd6de5d..f3837be19d16 100644
--- a/clients/client-global-accelerator/src/commands/ListEndpointGroupsCommand.ts
+++ b/clients/client-global-accelerator/src/commands/ListEndpointGroupsCommand.ts
@@ -1,4 +1,5 @@
// smithy-typescript generated code
+import { EndpointParameterInstructions, getEndpointPlugin } from "@aws-sdk/middleware-endpoint";
import { getSerdePlugin } from "@aws-sdk/middleware-serde";
import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http";
import { Command as $Command } from "@aws-sdk/smithy-client";
@@ -56,6 +57,15 @@ export class ListEndpointGroupsCommand extends $Command<
// Start section: command_properties
// End section: command_properties
+ public static getEndpointParameterInstructions(): EndpointParameterInstructions {
+ return {
+ UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" },
+ Endpoint: { type: "builtInParams", name: "endpoint" },
+ Region: { type: "builtInParams", name: "region" },
+ UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" },
+ };
+ }
+
constructor(readonly input: ListEndpointGroupsCommandInput) {
// Start section: command_constructor
super();
@@ -71,6 +81,9 @@ export class ListEndpointGroupsCommand extends $Command<
options?: __HttpHandlerOptions
): Handler {
this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize));
+ this.middlewareStack.use(
+ getEndpointPlugin(configuration, ListEndpointGroupsCommand.getEndpointParameterInstructions())
+ );
const stack = clientStack.concat(this.middlewareStack);
diff --git a/clients/client-global-accelerator/src/commands/ListListenersCommand.ts b/clients/client-global-accelerator/src/commands/ListListenersCommand.ts
index ee0e0e8ae62b..fece6e47bc30 100644
--- a/clients/client-global-accelerator/src/commands/ListListenersCommand.ts
+++ b/clients/client-global-accelerator/src/commands/ListListenersCommand.ts
@@ -1,4 +1,5 @@
// smithy-typescript generated code
+import { EndpointParameterInstructions, getEndpointPlugin } from "@aws-sdk/middleware-endpoint";
import { getSerdePlugin } from "@aws-sdk/middleware-serde";
import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http";
import { Command as $Command } from "@aws-sdk/smithy-client";
@@ -56,6 +57,15 @@ export class ListListenersCommand extends $Command<
// Start section: command_properties
// End section: command_properties
+ public static getEndpointParameterInstructions(): EndpointParameterInstructions {
+ return {
+ UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" },
+ Endpoint: { type: "builtInParams", name: "endpoint" },
+ Region: { type: "builtInParams", name: "region" },
+ UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" },
+ };
+ }
+
constructor(readonly input: ListListenersCommandInput) {
// Start section: command_constructor
super();
@@ -71,6 +81,7 @@ export class ListListenersCommand extends $Command<
options?: __HttpHandlerOptions
): Handler {
this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize));
+ this.middlewareStack.use(getEndpointPlugin(configuration, ListListenersCommand.getEndpointParameterInstructions()));
const stack = clientStack.concat(this.middlewareStack);
diff --git a/clients/client-global-accelerator/src/commands/ListTagsForResourceCommand.ts b/clients/client-global-accelerator/src/commands/ListTagsForResourceCommand.ts
index bb7e313dfe36..7b9a41b8029f 100644
--- a/clients/client-global-accelerator/src/commands/ListTagsForResourceCommand.ts
+++ b/clients/client-global-accelerator/src/commands/ListTagsForResourceCommand.ts
@@ -1,4 +1,5 @@
// smithy-typescript generated code
+import { EndpointParameterInstructions, getEndpointPlugin } from "@aws-sdk/middleware-endpoint";
import { getSerdePlugin } from "@aws-sdk/middleware-serde";
import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http";
import { Command as $Command } from "@aws-sdk/smithy-client";
@@ -58,6 +59,15 @@ export class ListTagsForResourceCommand extends $Command<
// Start section: command_properties
// End section: command_properties
+ public static getEndpointParameterInstructions(): EndpointParameterInstructions {
+ return {
+ UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" },
+ Endpoint: { type: "builtInParams", name: "endpoint" },
+ Region: { type: "builtInParams", name: "region" },
+ UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" },
+ };
+ }
+
constructor(readonly input: ListTagsForResourceCommandInput) {
// Start section: command_constructor
super();
@@ -73,6 +83,9 @@ export class ListTagsForResourceCommand extends $Command<
options?: __HttpHandlerOptions
): Handler {
this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize));
+ this.middlewareStack.use(
+ getEndpointPlugin(configuration, ListTagsForResourceCommand.getEndpointParameterInstructions())
+ );
const stack = clientStack.concat(this.middlewareStack);
diff --git a/clients/client-global-accelerator/src/commands/ProvisionByoipCidrCommand.ts b/clients/client-global-accelerator/src/commands/ProvisionByoipCidrCommand.ts
index b211862277d4..d2f2a427e99c 100644
--- a/clients/client-global-accelerator/src/commands/ProvisionByoipCidrCommand.ts
+++ b/clients/client-global-accelerator/src/commands/ProvisionByoipCidrCommand.ts
@@ -1,4 +1,5 @@
// smithy-typescript generated code
+import { EndpointParameterInstructions, getEndpointPlugin } from "@aws-sdk/middleware-endpoint";
import { getSerdePlugin } from "@aws-sdk/middleware-serde";
import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http";
import { Command as $Command } from "@aws-sdk/smithy-client";
@@ -61,6 +62,15 @@ export class ProvisionByoipCidrCommand extends $Command<
// Start section: command_properties
// End section: command_properties
+ public static getEndpointParameterInstructions(): EndpointParameterInstructions {
+ return {
+ UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" },
+ Endpoint: { type: "builtInParams", name: "endpoint" },
+ Region: { type: "builtInParams", name: "region" },
+ UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" },
+ };
+ }
+
constructor(readonly input: ProvisionByoipCidrCommandInput) {
// Start section: command_constructor
super();
@@ -76,6 +86,9 @@ export class ProvisionByoipCidrCommand extends $Command<
options?: __HttpHandlerOptions
): Handler {
this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize));
+ this.middlewareStack.use(
+ getEndpointPlugin(configuration, ProvisionByoipCidrCommand.getEndpointParameterInstructions())
+ );
const stack = clientStack.concat(this.middlewareStack);
diff --git a/clients/client-global-accelerator/src/commands/RemoveCustomRoutingEndpointsCommand.ts b/clients/client-global-accelerator/src/commands/RemoveCustomRoutingEndpointsCommand.ts
index 8fc02a79f6f5..e19f67452cb9 100644
--- a/clients/client-global-accelerator/src/commands/RemoveCustomRoutingEndpointsCommand.ts
+++ b/clients/client-global-accelerator/src/commands/RemoveCustomRoutingEndpointsCommand.ts
@@ -1,4 +1,5 @@
// smithy-typescript generated code
+import { EndpointParameterInstructions, getEndpointPlugin } from "@aws-sdk/middleware-endpoint";
import { getSerdePlugin } from "@aws-sdk/middleware-serde";
import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http";
import { Command as $Command } from "@aws-sdk/smithy-client";
@@ -54,6 +55,15 @@ export class RemoveCustomRoutingEndpointsCommand extends $Command<
// Start section: command_properties
// End section: command_properties
+ public static getEndpointParameterInstructions(): EndpointParameterInstructions {
+ return {
+ UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" },
+ Endpoint: { type: "builtInParams", name: "endpoint" },
+ Region: { type: "builtInParams", name: "region" },
+ UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" },
+ };
+ }
+
constructor(readonly input: RemoveCustomRoutingEndpointsCommandInput) {
// Start section: command_constructor
super();
@@ -69,6 +79,9 @@ export class RemoveCustomRoutingEndpointsCommand extends $Command<
options?: __HttpHandlerOptions
): Handler {
this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize));
+ this.middlewareStack.use(
+ getEndpointPlugin(configuration, RemoveCustomRoutingEndpointsCommand.getEndpointParameterInstructions())
+ );
const stack = clientStack.concat(this.middlewareStack);
diff --git a/clients/client-global-accelerator/src/commands/RemoveEndpointsCommand.ts b/clients/client-global-accelerator/src/commands/RemoveEndpointsCommand.ts
new file mode 100644
index 000000000000..409b9ec2fb12
--- /dev/null
+++ b/clients/client-global-accelerator/src/commands/RemoveEndpointsCommand.ts
@@ -0,0 +1,129 @@
+// smithy-typescript generated code
+import { EndpointParameterInstructions, getEndpointPlugin } from "@aws-sdk/middleware-endpoint";
+import { getSerdePlugin } from "@aws-sdk/middleware-serde";
+import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http";
+import { Command as $Command } from "@aws-sdk/smithy-client";
+import {
+ FinalizeHandlerArguments,
+ Handler,
+ HandlerExecutionContext,
+ HttpHandlerOptions as __HttpHandlerOptions,
+ MetadataBearer as __MetadataBearer,
+ MiddlewareStack,
+ SerdeContext as __SerdeContext,
+} from "@aws-sdk/types";
+
+import {
+ GlobalAcceleratorClientResolvedConfig,
+ ServiceInputTypes,
+ ServiceOutputTypes,
+} from "../GlobalAcceleratorClient";
+import { RemoveEndpointsRequest, RemoveEndpointsRequestFilterSensitiveLog } from "../models/models_0";
+import {
+ deserializeAws_json1_1RemoveEndpointsCommand,
+ serializeAws_json1_1RemoveEndpointsCommand,
+} from "../protocols/Aws_json1_1";
+
+export interface RemoveEndpointsCommandInput extends RemoveEndpointsRequest {}
+export interface RemoveEndpointsCommandOutput extends __MetadataBearer {}
+
+/**
+ * Remove endpoints from an endpoint group.
+ * The RemoveEndpoints
API operation is the recommended option for removing endpoints. The alternative is to remove
+ * endpoints by updating an endpoint group by using the
+ * UpdateEndpointGroup
+ * API operation. There are two advantages to using AddEndpoints
to remove endpoints instead:
+ *
+ * -
+ *
It's more convenient, because you only need to specify the endpoints that you want to remove. With the
+ * UpdateEndpointGroup
API operation, you must specify all of the endpoints in the
+ * endpoint group except the ones that you want to remove from the group.
+ *
+ * -
+ *
It's faster, because Global Accelerator doesn't need to resolve any endpoints. With the
+ * UpdateEndpointGroup
API operation, Global Accelerator must resolve all of the endpoints that
+ * remain in the group.
+ *
+ *
+ * @example
+ * Use a bare-bones client and the command you need to make an API call.
+ * ```javascript
+ * import { GlobalAcceleratorClient, RemoveEndpointsCommand } from "@aws-sdk/client-global-accelerator"; // ES Modules import
+ * // const { GlobalAcceleratorClient, RemoveEndpointsCommand } = require("@aws-sdk/client-global-accelerator"); // CommonJS import
+ * const client = new GlobalAcceleratorClient(config);
+ * const command = new RemoveEndpointsCommand(input);
+ * const response = await client.send(command);
+ * ```
+ *
+ * @see {@link RemoveEndpointsCommandInput} for command's `input` shape.
+ * @see {@link RemoveEndpointsCommandOutput} for command's `response` shape.
+ * @see {@link GlobalAcceleratorClientResolvedConfig | config} for GlobalAcceleratorClient's `config` shape.
+ *
+ */
+export class RemoveEndpointsCommand extends $Command<
+ RemoveEndpointsCommandInput,
+ RemoveEndpointsCommandOutput,
+ GlobalAcceleratorClientResolvedConfig
+> {
+ // Start section: command_properties
+ // End section: command_properties
+
+ public static getEndpointParameterInstructions(): EndpointParameterInstructions {
+ return {
+ UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" },
+ Endpoint: { type: "builtInParams", name: "endpoint" },
+ Region: { type: "builtInParams", name: "region" },
+ UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" },
+ };
+ }
+
+ constructor(readonly input: RemoveEndpointsCommandInput) {
+ // Start section: command_constructor
+ super();
+ // End section: command_constructor
+ }
+
+ /**
+ * @internal
+ */
+ resolveMiddleware(
+ clientStack: MiddlewareStack,
+ configuration: GlobalAcceleratorClientResolvedConfig,
+ options?: __HttpHandlerOptions
+ ): Handler {
+ this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize));
+ this.middlewareStack.use(
+ getEndpointPlugin(configuration, RemoveEndpointsCommand.getEndpointParameterInstructions())
+ );
+
+ const stack = clientStack.concat(this.middlewareStack);
+
+ const { logger } = configuration;
+ const clientName = "GlobalAcceleratorClient";
+ const commandName = "RemoveEndpointsCommand";
+ const handlerExecutionContext: HandlerExecutionContext = {
+ logger,
+ clientName,
+ commandName,
+ inputFilterSensitiveLog: RemoveEndpointsRequestFilterSensitiveLog,
+ outputFilterSensitiveLog: (output: any) => output,
+ };
+ const { requestHandler } = configuration;
+ return stack.resolve(
+ (request: FinalizeHandlerArguments) =>
+ requestHandler.handle(request.request as __HttpRequest, options || {}),
+ handlerExecutionContext
+ );
+ }
+
+ private serialize(input: RemoveEndpointsCommandInput, context: __SerdeContext): Promise<__HttpRequest> {
+ return serializeAws_json1_1RemoveEndpointsCommand(input, context);
+ }
+
+ private deserialize(output: __HttpResponse, context: __SerdeContext): Promise {
+ return deserializeAws_json1_1RemoveEndpointsCommand(output, context);
+ }
+
+ // Start section: command_body_extra
+ // End section: command_body_extra
+}
diff --git a/clients/client-global-accelerator/src/commands/TagResourceCommand.ts b/clients/client-global-accelerator/src/commands/TagResourceCommand.ts
index e4761d879edc..992cd34749ed 100644
--- a/clients/client-global-accelerator/src/commands/TagResourceCommand.ts
+++ b/clients/client-global-accelerator/src/commands/TagResourceCommand.ts
@@ -1,4 +1,5 @@
// smithy-typescript generated code
+import { EndpointParameterInstructions, getEndpointPlugin } from "@aws-sdk/middleware-endpoint";
import { getSerdePlugin } from "@aws-sdk/middleware-serde";
import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http";
import { Command as $Command } from "@aws-sdk/smithy-client";
@@ -58,6 +59,15 @@ export class TagResourceCommand extends $Command<
// Start section: command_properties
// End section: command_properties
+ public static getEndpointParameterInstructions(): EndpointParameterInstructions {
+ return {
+ UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" },
+ Endpoint: { type: "builtInParams", name: "endpoint" },
+ Region: { type: "builtInParams", name: "region" },
+ UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" },
+ };
+ }
+
constructor(readonly input: TagResourceCommandInput) {
// Start section: command_constructor
super();
@@ -73,6 +83,7 @@ export class TagResourceCommand extends $Command<
options?: __HttpHandlerOptions
): Handler {
this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize));
+ this.middlewareStack.use(getEndpointPlugin(configuration, TagResourceCommand.getEndpointParameterInstructions()));
const stack = clientStack.concat(this.middlewareStack);
diff --git a/clients/client-global-accelerator/src/commands/UntagResourceCommand.ts b/clients/client-global-accelerator/src/commands/UntagResourceCommand.ts
index a9da0ff87b74..60201a116191 100644
--- a/clients/client-global-accelerator/src/commands/UntagResourceCommand.ts
+++ b/clients/client-global-accelerator/src/commands/UntagResourceCommand.ts
@@ -1,4 +1,5 @@
// smithy-typescript generated code
+import { EndpointParameterInstructions, getEndpointPlugin } from "@aws-sdk/middleware-endpoint";
import { getSerdePlugin } from "@aws-sdk/middleware-serde";
import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http";
import { Command as $Command } from "@aws-sdk/smithy-client";
@@ -59,6 +60,15 @@ export class UntagResourceCommand extends $Command<
// Start section: command_properties
// End section: command_properties
+ public static getEndpointParameterInstructions(): EndpointParameterInstructions {
+ return {
+ UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" },
+ Endpoint: { type: "builtInParams", name: "endpoint" },
+ Region: { type: "builtInParams", name: "region" },
+ UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" },
+ };
+ }
+
constructor(readonly input: UntagResourceCommandInput) {
// Start section: command_constructor
super();
@@ -74,6 +84,7 @@ export class UntagResourceCommand extends $Command<
options?: __HttpHandlerOptions
): Handler {
this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize));
+ this.middlewareStack.use(getEndpointPlugin(configuration, UntagResourceCommand.getEndpointParameterInstructions()));
const stack = clientStack.concat(this.middlewareStack);
diff --git a/clients/client-global-accelerator/src/commands/UpdateAcceleratorAttributesCommand.ts b/clients/client-global-accelerator/src/commands/UpdateAcceleratorAttributesCommand.ts
index 0e84e143735f..69b28d748b91 100644
--- a/clients/client-global-accelerator/src/commands/UpdateAcceleratorAttributesCommand.ts
+++ b/clients/client-global-accelerator/src/commands/UpdateAcceleratorAttributesCommand.ts
@@ -1,4 +1,5 @@
// smithy-typescript generated code
+import { EndpointParameterInstructions, getEndpointPlugin } from "@aws-sdk/middleware-endpoint";
import { getSerdePlugin } from "@aws-sdk/middleware-serde";
import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http";
import { Command as $Command } from "@aws-sdk/smithy-client";
@@ -58,6 +59,15 @@ export class UpdateAcceleratorAttributesCommand extends $Command<
// Start section: command_properties
// End section: command_properties
+ public static getEndpointParameterInstructions(): EndpointParameterInstructions {
+ return {
+ UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" },
+ Endpoint: { type: "builtInParams", name: "endpoint" },
+ Region: { type: "builtInParams", name: "region" },
+ UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" },
+ };
+ }
+
constructor(readonly input: UpdateAcceleratorAttributesCommandInput) {
// Start section: command_constructor
super();
@@ -73,6 +83,9 @@ export class UpdateAcceleratorAttributesCommand extends $Command<
options?: __HttpHandlerOptions
): Handler {
this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize));
+ this.middlewareStack.use(
+ getEndpointPlugin(configuration, UpdateAcceleratorAttributesCommand.getEndpointParameterInstructions())
+ );
const stack = clientStack.concat(this.middlewareStack);
diff --git a/clients/client-global-accelerator/src/commands/UpdateAcceleratorCommand.ts b/clients/client-global-accelerator/src/commands/UpdateAcceleratorCommand.ts
index 5702cb502a13..331398ba55ff 100644
--- a/clients/client-global-accelerator/src/commands/UpdateAcceleratorCommand.ts
+++ b/clients/client-global-accelerator/src/commands/UpdateAcceleratorCommand.ts
@@ -1,4 +1,5 @@
// smithy-typescript generated code
+import { EndpointParameterInstructions, getEndpointPlugin } from "@aws-sdk/middleware-endpoint";
import { getSerdePlugin } from "@aws-sdk/middleware-serde";
import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http";
import { Command as $Command } from "@aws-sdk/smithy-client";
@@ -62,6 +63,15 @@ export class UpdateAcceleratorCommand extends $Command<
// Start section: command_properties
// End section: command_properties
+ public static getEndpointParameterInstructions(): EndpointParameterInstructions {
+ return {
+ UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" },
+ Endpoint: { type: "builtInParams", name: "endpoint" },
+ Region: { type: "builtInParams", name: "region" },
+ UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" },
+ };
+ }
+
constructor(readonly input: UpdateAcceleratorCommandInput) {
// Start section: command_constructor
super();
@@ -77,6 +87,9 @@ export class UpdateAcceleratorCommand extends $Command<
options?: __HttpHandlerOptions
): Handler {
this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize));
+ this.middlewareStack.use(
+ getEndpointPlugin(configuration, UpdateAcceleratorCommand.getEndpointParameterInstructions())
+ );
const stack = clientStack.concat(this.middlewareStack);
diff --git a/clients/client-global-accelerator/src/commands/UpdateCustomRoutingAcceleratorAttributesCommand.ts b/clients/client-global-accelerator/src/commands/UpdateCustomRoutingAcceleratorAttributesCommand.ts
index 55cf86aebb38..df41eada4e30 100644
--- a/clients/client-global-accelerator/src/commands/UpdateCustomRoutingAcceleratorAttributesCommand.ts
+++ b/clients/client-global-accelerator/src/commands/UpdateCustomRoutingAcceleratorAttributesCommand.ts
@@ -1,4 +1,5 @@
// smithy-typescript generated code
+import { EndpointParameterInstructions, getEndpointPlugin } from "@aws-sdk/middleware-endpoint";
import { getSerdePlugin } from "@aws-sdk/middleware-serde";
import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http";
import { Command as $Command } from "@aws-sdk/smithy-client";
@@ -59,6 +60,15 @@ export class UpdateCustomRoutingAcceleratorAttributesCommand extends $Command<
// Start section: command_properties
// End section: command_properties
+ public static getEndpointParameterInstructions(): EndpointParameterInstructions {
+ return {
+ UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" },
+ Endpoint: { type: "builtInParams", name: "endpoint" },
+ Region: { type: "builtInParams", name: "region" },
+ UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" },
+ };
+ }
+
constructor(readonly input: UpdateCustomRoutingAcceleratorAttributesCommandInput) {
// Start section: command_constructor
super();
@@ -77,6 +87,12 @@ export class UpdateCustomRoutingAcceleratorAttributesCommand extends $Command<
UpdateCustomRoutingAcceleratorAttributesCommandOutput
> {
this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize));
+ this.middlewareStack.use(
+ getEndpointPlugin(
+ configuration,
+ UpdateCustomRoutingAcceleratorAttributesCommand.getEndpointParameterInstructions()
+ )
+ );
const stack = clientStack.concat(this.middlewareStack);
diff --git a/clients/client-global-accelerator/src/commands/UpdateCustomRoutingAcceleratorCommand.ts b/clients/client-global-accelerator/src/commands/UpdateCustomRoutingAcceleratorCommand.ts
index c5951dc060bd..a8187c33664e 100644
--- a/clients/client-global-accelerator/src/commands/UpdateCustomRoutingAcceleratorCommand.ts
+++ b/clients/client-global-accelerator/src/commands/UpdateCustomRoutingAcceleratorCommand.ts
@@ -1,4 +1,5 @@
// smithy-typescript generated code
+import { EndpointParameterInstructions, getEndpointPlugin } from "@aws-sdk/middleware-endpoint";
import { getSerdePlugin } from "@aws-sdk/middleware-serde";
import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http";
import { Command as $Command } from "@aws-sdk/smithy-client";
@@ -58,6 +59,15 @@ export class UpdateCustomRoutingAcceleratorCommand extends $Command<
// Start section: command_properties
// End section: command_properties
+ public static getEndpointParameterInstructions(): EndpointParameterInstructions {
+ return {
+ UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" },
+ Endpoint: { type: "builtInParams", name: "endpoint" },
+ Region: { type: "builtInParams", name: "region" },
+ UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" },
+ };
+ }
+
constructor(readonly input: UpdateCustomRoutingAcceleratorCommandInput) {
// Start section: command_constructor
super();
@@ -73,6 +83,9 @@ export class UpdateCustomRoutingAcceleratorCommand extends $Command<
options?: __HttpHandlerOptions
): Handler {
this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize));
+ this.middlewareStack.use(
+ getEndpointPlugin(configuration, UpdateCustomRoutingAcceleratorCommand.getEndpointParameterInstructions())
+ );
const stack = clientStack.concat(this.middlewareStack);
diff --git a/clients/client-global-accelerator/src/commands/UpdateCustomRoutingListenerCommand.ts b/clients/client-global-accelerator/src/commands/UpdateCustomRoutingListenerCommand.ts
index 26d6bbd95835..cf767c2751a9 100644
--- a/clients/client-global-accelerator/src/commands/UpdateCustomRoutingListenerCommand.ts
+++ b/clients/client-global-accelerator/src/commands/UpdateCustomRoutingListenerCommand.ts
@@ -1,4 +1,5 @@
// smithy-typescript generated code
+import { EndpointParameterInstructions, getEndpointPlugin } from "@aws-sdk/middleware-endpoint";
import { getSerdePlugin } from "@aws-sdk/middleware-serde";
import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http";
import { Command as $Command } from "@aws-sdk/smithy-client";
@@ -58,6 +59,15 @@ export class UpdateCustomRoutingListenerCommand extends $Command<
// Start section: command_properties
// End section: command_properties
+ public static getEndpointParameterInstructions(): EndpointParameterInstructions {
+ return {
+ UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" },
+ Endpoint: { type: "builtInParams", name: "endpoint" },
+ Region: { type: "builtInParams", name: "region" },
+ UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" },
+ };
+ }
+
constructor(readonly input: UpdateCustomRoutingListenerCommandInput) {
// Start section: command_constructor
super();
@@ -73,6 +83,9 @@ export class UpdateCustomRoutingListenerCommand extends $Command<
options?: __HttpHandlerOptions
): Handler {
this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize));
+ this.middlewareStack.use(
+ getEndpointPlugin(configuration, UpdateCustomRoutingListenerCommand.getEndpointParameterInstructions())
+ );
const stack = clientStack.concat(this.middlewareStack);
diff --git a/clients/client-global-accelerator/src/commands/UpdateEndpointGroupCommand.ts b/clients/client-global-accelerator/src/commands/UpdateEndpointGroupCommand.ts
index e34d43304f35..c3e5be0635d2 100644
--- a/clients/client-global-accelerator/src/commands/UpdateEndpointGroupCommand.ts
+++ b/clients/client-global-accelerator/src/commands/UpdateEndpointGroupCommand.ts
@@ -1,4 +1,5 @@
// smithy-typescript generated code
+import { EndpointParameterInstructions, getEndpointPlugin } from "@aws-sdk/middleware-endpoint";
import { getSerdePlugin } from "@aws-sdk/middleware-serde";
import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http";
import { Command as $Command } from "@aws-sdk/smithy-client";
@@ -56,6 +57,15 @@ export class UpdateEndpointGroupCommand extends $Command<
// Start section: command_properties
// End section: command_properties
+ public static getEndpointParameterInstructions(): EndpointParameterInstructions {
+ return {
+ UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" },
+ Endpoint: { type: "builtInParams", name: "endpoint" },
+ Region: { type: "builtInParams", name: "region" },
+ UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" },
+ };
+ }
+
constructor(readonly input: UpdateEndpointGroupCommandInput) {
// Start section: command_constructor
super();
@@ -71,6 +81,9 @@ export class UpdateEndpointGroupCommand extends $Command<
options?: __HttpHandlerOptions
): Handler {
this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize));
+ this.middlewareStack.use(
+ getEndpointPlugin(configuration, UpdateEndpointGroupCommand.getEndpointParameterInstructions())
+ );
const stack = clientStack.concat(this.middlewareStack);
diff --git a/clients/client-global-accelerator/src/commands/UpdateListenerCommand.ts b/clients/client-global-accelerator/src/commands/UpdateListenerCommand.ts
index b7aa2a0d75a3..3da7e5618a63 100644
--- a/clients/client-global-accelerator/src/commands/UpdateListenerCommand.ts
+++ b/clients/client-global-accelerator/src/commands/UpdateListenerCommand.ts
@@ -1,4 +1,5 @@
// smithy-typescript generated code
+import { EndpointParameterInstructions, getEndpointPlugin } from "@aws-sdk/middleware-endpoint";
import { getSerdePlugin } from "@aws-sdk/middleware-serde";
import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http";
import { Command as $Command } from "@aws-sdk/smithy-client";
@@ -56,6 +57,15 @@ export class UpdateListenerCommand extends $Command<
// Start section: command_properties
// End section: command_properties
+ public static getEndpointParameterInstructions(): EndpointParameterInstructions {
+ return {
+ UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" },
+ Endpoint: { type: "builtInParams", name: "endpoint" },
+ Region: { type: "builtInParams", name: "region" },
+ UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" },
+ };
+ }
+
constructor(readonly input: UpdateListenerCommandInput) {
// Start section: command_constructor
super();
@@ -71,6 +81,9 @@ export class UpdateListenerCommand extends $Command<
options?: __HttpHandlerOptions
): Handler {
this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize));
+ this.middlewareStack.use(
+ getEndpointPlugin(configuration, UpdateListenerCommand.getEndpointParameterInstructions())
+ );
const stack = clientStack.concat(this.middlewareStack);
diff --git a/clients/client-global-accelerator/src/commands/WithdrawByoipCidrCommand.ts b/clients/client-global-accelerator/src/commands/WithdrawByoipCidrCommand.ts
index 63b3bc87fdb8..d21dcf006051 100644
--- a/clients/client-global-accelerator/src/commands/WithdrawByoipCidrCommand.ts
+++ b/clients/client-global-accelerator/src/commands/WithdrawByoipCidrCommand.ts
@@ -1,4 +1,5 @@
// smithy-typescript generated code
+import { EndpointParameterInstructions, getEndpointPlugin } from "@aws-sdk/middleware-endpoint";
import { getSerdePlugin } from "@aws-sdk/middleware-serde";
import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http";
import { Command as $Command } from "@aws-sdk/smithy-client";
@@ -62,6 +63,15 @@ export class WithdrawByoipCidrCommand extends $Command<
// Start section: command_properties
// End section: command_properties
+ public static getEndpointParameterInstructions(): EndpointParameterInstructions {
+ return {
+ UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" },
+ Endpoint: { type: "builtInParams", name: "endpoint" },
+ Region: { type: "builtInParams", name: "region" },
+ UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" },
+ };
+ }
+
constructor(readonly input: WithdrawByoipCidrCommandInput) {
// Start section: command_constructor
super();
@@ -77,6 +87,9 @@ export class WithdrawByoipCidrCommand extends $Command<
options?: __HttpHandlerOptions
): Handler {
this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize));
+ this.middlewareStack.use(
+ getEndpointPlugin(configuration, WithdrawByoipCidrCommand.getEndpointParameterInstructions())
+ );
const stack = clientStack.concat(this.middlewareStack);
diff --git a/clients/client-global-accelerator/src/commands/index.ts b/clients/client-global-accelerator/src/commands/index.ts
index b5a10d61e78a..99b9da06b425 100644
--- a/clients/client-global-accelerator/src/commands/index.ts
+++ b/clients/client-global-accelerator/src/commands/index.ts
@@ -1,5 +1,6 @@
// smithy-typescript generated code
export * from "./AddCustomRoutingEndpointsCommand";
+export * from "./AddEndpointsCommand";
export * from "./AdvertiseByoipCidrCommand";
export * from "./AllowCustomRoutingTrafficCommand";
export * from "./CreateAcceleratorCommand";
@@ -36,6 +37,7 @@ export * from "./ListListenersCommand";
export * from "./ListTagsForResourceCommand";
export * from "./ProvisionByoipCidrCommand";
export * from "./RemoveCustomRoutingEndpointsCommand";
+export * from "./RemoveEndpointsCommand";
export * from "./TagResourceCommand";
export * from "./UntagResourceCommand";
export * from "./UpdateAcceleratorAttributesCommand";
diff --git a/clients/client-global-accelerator/src/endpoint/EndpointParameters.ts b/clients/client-global-accelerator/src/endpoint/EndpointParameters.ts
new file mode 100644
index 000000000000..8729653bf302
--- /dev/null
+++ b/clients/client-global-accelerator/src/endpoint/EndpointParameters.ts
@@ -0,0 +1,31 @@
+// smithy-typescript generated code
+import { EndpointParameters as __EndpointParameters, Provider } from "@aws-sdk/types";
+
+export interface ClientInputEndpointParameters {
+ region?: string | Provider;
+ useDualstackEndpoint?: boolean | Provider;
+ useFipsEndpoint?: boolean | Provider;
+ endpoint?: string | Provider;
+}
+
+export type ClientResolvedEndpointParameters = ClientInputEndpointParameters & {
+ defaultSigningName: string;
+};
+
+export const resolveClientEndpointParameters = (
+ options: T & ClientInputEndpointParameters
+): T & ClientResolvedEndpointParameters => {
+ return {
+ ...options,
+ useDualstackEndpoint: options.useDualstackEndpoint ?? false,
+ useFipsEndpoint: options.useFipsEndpoint ?? false,
+ defaultSigningName: "globalaccelerator",
+ };
+};
+
+export interface EndpointParameters extends __EndpointParameters {
+ Region?: string;
+ UseDualStack?: boolean;
+ UseFIPS?: boolean;
+ Endpoint?: string;
+}
diff --git a/clients/client-global-accelerator/src/endpoint/endpointResolver.ts b/clients/client-global-accelerator/src/endpoint/endpointResolver.ts
new file mode 100644
index 000000000000..4a70bb06b40a
--- /dev/null
+++ b/clients/client-global-accelerator/src/endpoint/endpointResolver.ts
@@ -0,0 +1,16 @@
+// smithy-typescript generated code
+import { EndpointV2, Logger } from "@aws-sdk/types";
+import { EndpointParams, resolveEndpoint } from "@aws-sdk/util-endpoints";
+
+import { EndpointParameters } from "./EndpointParameters";
+import { ruleSet } from "./ruleset";
+
+export const defaultEndpointResolver = (
+ endpointParams: EndpointParameters,
+ context: { logger?: Logger } = {}
+): EndpointV2 => {
+ return resolveEndpoint(ruleSet, {
+ endpointParams: endpointParams as EndpointParams,
+ logger: context.logger,
+ });
+};
diff --git a/clients/client-global-accelerator/src/endpoint/ruleset.ts b/clients/client-global-accelerator/src/endpoint/ruleset.ts
new file mode 100644
index 000000000000..0b213d8896aa
--- /dev/null
+++ b/clients/client-global-accelerator/src/endpoint/ruleset.ts
@@ -0,0 +1,314 @@
+// smithy-typescript generated code
+import { RuleSetObject } from "@aws-sdk/util-endpoints";
+
+export const ruleSet: RuleSetObject = {
+ version: "1.0",
+ parameters: {
+ Region: {
+ builtIn: "AWS::Region",
+ required: false,
+ documentation: "The AWS region used to dispatch the request.",
+ type: "String",
+ },
+ UseDualStack: {
+ builtIn: "AWS::UseDualStack",
+ required: true,
+ default: false,
+ documentation:
+ "When true, use the dual-stack endpoint. If the configured endpoint does not support dual-stack, dispatching the request MAY return an error.",
+ type: "Boolean",
+ },
+ UseFIPS: {
+ builtIn: "AWS::UseFIPS",
+ required: true,
+ default: false,
+ documentation:
+ "When true, send this request to the FIPS-compliant regional endpoint. If the configured endpoint does not have a FIPS compliant endpoint, dispatching the request will return an error.",
+ type: "Boolean",
+ },
+ Endpoint: {
+ builtIn: "SDK::Endpoint",
+ required: false,
+ documentation: "Override the endpoint used to send this request",
+ type: "String",
+ },
+ },
+ rules: [
+ {
+ conditions: [
+ {
+ fn: "aws.partition",
+ argv: [
+ {
+ ref: "Region",
+ },
+ ],
+ assign: "PartitionResult",
+ },
+ ],
+ type: "tree",
+ rules: [
+ {
+ conditions: [
+ {
+ fn: "isSet",
+ argv: [
+ {
+ ref: "Endpoint",
+ },
+ ],
+ },
+ {
+ fn: "parseURL",
+ argv: [
+ {
+ ref: "Endpoint",
+ },
+ ],
+ assign: "url",
+ },
+ ],
+ type: "tree",
+ rules: [
+ {
+ conditions: [
+ {
+ fn: "booleanEquals",
+ argv: [
+ {
+ ref: "UseFIPS",
+ },
+ true,
+ ],
+ },
+ ],
+ error: "Invalid Configuration: FIPS and custom endpoint are not supported",
+ type: "error",
+ },
+ {
+ conditions: [],
+ type: "tree",
+ rules: [
+ {
+ conditions: [
+ {
+ fn: "booleanEquals",
+ argv: [
+ {
+ ref: "UseDualStack",
+ },
+ true,
+ ],
+ },
+ ],
+ error: "Invalid Configuration: Dualstack and custom endpoint are not supported",
+ type: "error",
+ },
+ {
+ conditions: [],
+ endpoint: {
+ url: {
+ ref: "Endpoint",
+ },
+ properties: {},
+ headers: {},
+ },
+ type: "endpoint",
+ },
+ ],
+ },
+ ],
+ },
+ {
+ conditions: [
+ {
+ fn: "booleanEquals",
+ argv: [
+ {
+ ref: "UseFIPS",
+ },
+ true,
+ ],
+ },
+ {
+ fn: "booleanEquals",
+ argv: [
+ {
+ ref: "UseDualStack",
+ },
+ true,
+ ],
+ },
+ ],
+ type: "tree",
+ rules: [
+ {
+ conditions: [
+ {
+ fn: "booleanEquals",
+ argv: [
+ true,
+ {
+ fn: "getAttr",
+ argv: [
+ {
+ ref: "PartitionResult",
+ },
+ "supportsFIPS",
+ ],
+ },
+ ],
+ },
+ {
+ fn: "booleanEquals",
+ argv: [
+ true,
+ {
+ fn: "getAttr",
+ argv: [
+ {
+ ref: "PartitionResult",
+ },
+ "supportsDualStack",
+ ],
+ },
+ ],
+ },
+ ],
+ type: "tree",
+ rules: [
+ {
+ conditions: [],
+ endpoint: {
+ url: "https://globalaccelerator-fips.{Region}.{PartitionResult#dualStackDnsSuffix}",
+ properties: {},
+ headers: {},
+ },
+ type: "endpoint",
+ },
+ ],
+ },
+ {
+ conditions: [],
+ error: "FIPS and DualStack are enabled, but this partition does not support one or both",
+ type: "error",
+ },
+ ],
+ },
+ {
+ conditions: [
+ {
+ fn: "booleanEquals",
+ argv: [
+ {
+ ref: "UseFIPS",
+ },
+ true,
+ ],
+ },
+ ],
+ type: "tree",
+ rules: [
+ {
+ conditions: [
+ {
+ fn: "booleanEquals",
+ argv: [
+ true,
+ {
+ fn: "getAttr",
+ argv: [
+ {
+ ref: "PartitionResult",
+ },
+ "supportsFIPS",
+ ],
+ },
+ ],
+ },
+ ],
+ type: "tree",
+ rules: [
+ {
+ conditions: [],
+ endpoint: {
+ url: "https://globalaccelerator-fips.{Region}.{PartitionResult#dnsSuffix}",
+ properties: {},
+ headers: {},
+ },
+ type: "endpoint",
+ },
+ ],
+ },
+ {
+ conditions: [],
+ error: "FIPS is enabled but this partition does not support FIPS",
+ type: "error",
+ },
+ ],
+ },
+ {
+ conditions: [
+ {
+ fn: "booleanEquals",
+ argv: [
+ {
+ ref: "UseDualStack",
+ },
+ true,
+ ],
+ },
+ ],
+ type: "tree",
+ rules: [
+ {
+ conditions: [
+ {
+ fn: "booleanEquals",
+ argv: [
+ true,
+ {
+ fn: "getAttr",
+ argv: [
+ {
+ ref: "PartitionResult",
+ },
+ "supportsDualStack",
+ ],
+ },
+ ],
+ },
+ ],
+ type: "tree",
+ rules: [
+ {
+ conditions: [],
+ endpoint: {
+ url: "https://globalaccelerator.{Region}.{PartitionResult#dualStackDnsSuffix}",
+ properties: {},
+ headers: {},
+ },
+ type: "endpoint",
+ },
+ ],
+ },
+ {
+ conditions: [],
+ error: "DualStack is enabled but this partition does not support DualStack",
+ type: "error",
+ },
+ ],
+ },
+ {
+ conditions: [],
+ endpoint: {
+ url: "https://globalaccelerator.{Region}.{PartitionResult#dnsSuffix}",
+ properties: {},
+ headers: {},
+ },
+ type: "endpoint",
+ },
+ ],
+ },
+ ],
+};
diff --git a/clients/client-global-accelerator/src/endpoints.ts b/clients/client-global-accelerator/src/endpoints.ts
deleted file mode 100644
index d24f92cc6cd6..000000000000
--- a/clients/client-global-accelerator/src/endpoints.ts
+++ /dev/null
@@ -1,137 +0,0 @@
-// smithy-typescript generated code
-import { getRegionInfo, PartitionHash, RegionHash } from "@aws-sdk/config-resolver";
-import { RegionInfoProvider, RegionInfoProviderOptions } from "@aws-sdk/types";
-
-const regionHash: RegionHash = {};
-
-const partitionHash: PartitionHash = {
- aws: {
- regions: [
- "af-south-1",
- "ap-east-1",
- "ap-northeast-1",
- "ap-northeast-2",
- "ap-northeast-3",
- "ap-south-1",
- "ap-southeast-1",
- "ap-southeast-2",
- "ap-southeast-3",
- "ca-central-1",
- "eu-central-1",
- "eu-north-1",
- "eu-south-1",
- "eu-west-1",
- "eu-west-2",
- "eu-west-3",
- "me-central-1",
- "me-south-1",
- "sa-east-1",
- "us-east-1",
- "us-east-2",
- "us-west-1",
- "us-west-2",
- ],
- regionRegex: "^(us|eu|ap|sa|ca|me|af)\\-\\w+\\-\\d+$",
- variants: [
- {
- hostname: "globalaccelerator.{region}.amazonaws.com",
- tags: [],
- },
- {
- hostname: "globalaccelerator-fips.{region}.amazonaws.com",
- tags: ["fips"],
- },
- {
- hostname: "globalaccelerator-fips.{region}.api.aws",
- tags: ["dualstack", "fips"],
- },
- {
- hostname: "globalaccelerator.{region}.api.aws",
- tags: ["dualstack"],
- },
- ],
- },
- "aws-cn": {
- regions: ["cn-north-1", "cn-northwest-1"],
- regionRegex: "^cn\\-\\w+\\-\\d+$",
- variants: [
- {
- hostname: "globalaccelerator.{region}.amazonaws.com.cn",
- tags: [],
- },
- {
- hostname: "globalaccelerator-fips.{region}.amazonaws.com.cn",
- tags: ["fips"],
- },
- {
- hostname: "globalaccelerator-fips.{region}.api.amazonwebservices.com.cn",
- tags: ["dualstack", "fips"],
- },
- {
- hostname: "globalaccelerator.{region}.api.amazonwebservices.com.cn",
- tags: ["dualstack"],
- },
- ],
- },
- "aws-iso": {
- regions: ["us-iso-east-1", "us-iso-west-1"],
- regionRegex: "^us\\-iso\\-\\w+\\-\\d+$",
- variants: [
- {
- hostname: "globalaccelerator.{region}.c2s.ic.gov",
- tags: [],
- },
- {
- hostname: "globalaccelerator-fips.{region}.c2s.ic.gov",
- tags: ["fips"],
- },
- ],
- },
- "aws-iso-b": {
- regions: ["us-isob-east-1"],
- regionRegex: "^us\\-isob\\-\\w+\\-\\d+$",
- variants: [
- {
- hostname: "globalaccelerator.{region}.sc2s.sgov.gov",
- tags: [],
- },
- {
- hostname: "globalaccelerator-fips.{region}.sc2s.sgov.gov",
- tags: ["fips"],
- },
- ],
- },
- "aws-us-gov": {
- regions: ["us-gov-east-1", "us-gov-west-1"],
- regionRegex: "^us\\-gov\\-\\w+\\-\\d+$",
- variants: [
- {
- hostname: "globalaccelerator.{region}.amazonaws.com",
- tags: [],
- },
- {
- hostname: "globalaccelerator-fips.{region}.amazonaws.com",
- tags: ["fips"],
- },
- {
- hostname: "globalaccelerator-fips.{region}.api.aws",
- tags: ["dualstack", "fips"],
- },
- {
- hostname: "globalaccelerator.{region}.api.aws",
- tags: ["dualstack"],
- },
- ],
- },
-};
-
-export const defaultRegionInfoProvider: RegionInfoProvider = async (
- region: string,
- options?: RegionInfoProviderOptions
-) =>
- getRegionInfo(region, {
- ...options,
- signingService: "globalaccelerator",
- regionHash,
- partitionHash,
- });
diff --git a/clients/client-global-accelerator/src/models/models_0.ts b/clients/client-global-accelerator/src/models/models_0.ts
index c4226c6b2296..9bd0cbaf6b95 100644
--- a/clients/client-global-accelerator/src/models/models_0.ts
+++ b/clients/client-global-accelerator/src/models/models_0.ts
@@ -54,7 +54,10 @@ export interface IpSet {
IpAddressFamily?: IpAddressFamily | string;
}
-export type AcceleratorStatus = "DEPLOYED" | "IN_PROGRESS";
+export enum AcceleratorStatus {
+ DEPLOYED = "DEPLOYED",
+ IN_PROGRESS = "IN_PROGRESS",
+}
/**
* An accelerator is a complex type that includes one or more listeners that process inbound connections and then direct
@@ -93,10 +96,10 @@ export interface Accelerator {
*
The naming convention for the DNS name for an accelerator is the following: A lowercase letter a,
* followed by a 16-bit random hex string, followed by .awsglobalaccelerator.com. For example:
* a1234567890abcdef.awsglobalaccelerator.com.
- * If you have a dual-stack accelerator, you also have a second DNS name, DualStackDnsName, that points to both the A record and the AAAA record for all four
- * static addresses for the accelerator (two IPv4 addresses and two IPv6 addresses).
+ * If you have a dual-stack accelerator, you also have a second DNS name, DualStackDnsName
, that points to both
+ * the A record and the AAAA record for all four static addresses for the accelerator: two IPv4 addresses and two IPv6 addresses.
* For more information about the default DNS name, see
- * Support for DNS Addressing in Global Accelerator in the Global Accelerator Developer Guide.
+ * Support for DNS addressing in Global Accelerator in the Global Accelerator Developer Guide.
*/
DnsName?: string;
@@ -121,9 +124,9 @@ export interface Accelerator {
* The naming convention for the dual-stack DNS name is the following: A lowercase letter a,
* followed by a 16-bit random hex string, followed by .dualstack.awsglobalaccelerator.com. For example:
* a1234567890abcdef.dualstack.awsglobalaccelerator.com.
- * Note: Global Accelerator also assigns a default DNS name, DnsName, to your accelerator that points just to the static IPv4 addresses.
+ * Note: Global Accelerator also assigns a default DNS name, DnsName
, to your accelerator that points just to the static IPv4 addresses.
* For more information, see
- * Support for DNS Addressing in Global Accelerator in the Global Accelerator Developer Guide.
+ * Support for DNS addressing in Global Accelerator in the Global Accelerator Developer Guide.
*/
DualStackDnsName?: string;
@@ -397,6 +400,142 @@ export class LimitExceededException extends __BaseException {
}
}
+/**
+ * A complex type for endpoints. A resource must be valid and active when you add it as an endpoint.
+ */
+export interface EndpointConfiguration {
+ /**
+ * An ID for the endpoint. If the endpoint is a Network Load Balancer or Application Load Balancer, this is the Amazon
+ * Resource Name (ARN) of the resource. If the endpoint is an Elastic IP address, this is the Elastic IP address
+ * allocation ID. For Amazon EC2 instances, this is the EC2 instance ID. A resource must be valid and active
+ * when you add it as an endpoint.
+ * An Application Load Balancer can be either internal or internet-facing.
+ */
+ EndpointId?: string;
+
+ /**
+ * The weight associated with the endpoint. When you add weights to endpoints, you configure Global Accelerator to route traffic
+ * based on proportions that you specify. For example, you might specify endpoint weights of 4, 5, 5, and 6 (sum=20). The
+ * result is that 4/20 of your traffic, on average, is routed to the first endpoint, 5/20 is routed both to the second
+ * and third endpoints, and 6/20 is routed to the last endpoint. For more information, see Endpoint weights in the
+ * Global Accelerator Developer Guide.
+ */
+ Weight?: number;
+
+ /**
+ * Indicates whether client IP address preservation is enabled for an endpoint.
+ * The value is true or false. The default value is true for new accelerators.
+ * If the value is set to true, the client's IP address is preserved in the X-Forwarded-For
request header as
+ * traffic travels to applications on the endpoint fronted by the accelerator.
+ *
+ *
+ * Client IP address preservation is supported, in specific Amazon Web Services Regions, for endpoints that are Application Load
+ * Balancers and Amazon EC2 instances.
+ *
+ * For more information, see
+ * Preserve client IP addresses in Global Accelerator in the Global Accelerator Developer Guide.
+ */
+ ClientIPPreservationEnabled?: boolean;
+}
+
+export interface AddEndpointsRequest {
+ /**
+ * The list of endpoint objects.
+ */
+ EndpointConfigurations: EndpointConfiguration[] | undefined;
+
+ /**
+ * The Amazon Resource Name (ARN) of the endpoint group.
+ */
+ EndpointGroupArn: string | undefined;
+}
+
+export enum HealthState {
+ HEALTHY = "HEALTHY",
+ INITIAL = "INITIAL",
+ UNHEALTHY = "UNHEALTHY",
+}
+
+/**
+ * A complex type for an endpoint. Each endpoint group can include one or more endpoints, such as load
+ * balancers.
+ */
+export interface EndpointDescription {
+ /**
+ * An ID for the endpoint. If the endpoint is a Network Load Balancer or Application Load Balancer, this is the Amazon
+ * Resource Name (ARN) of the resource. If the endpoint is an Elastic IP address, this is the Elastic IP address
+ * allocation ID. For Amazon EC2 instances, this is the EC2 instance ID.
+ * An Application Load Balancer can be either internal or internet-facing.
+ */
+ EndpointId?: string;
+
+ /**
+ * The weight associated with the endpoint. When you add weights to endpoints, you configure Global Accelerator to route traffic
+ * based on proportions that you specify. For example, you might specify endpoint weights of 4, 5, 5, and 6 (sum=20). The
+ * result is that 4/20 of your traffic, on average, is routed to the first endpoint, 5/20 is routed both to the second
+ * and third endpoints, and 6/20 is routed to the last endpoint. For more information, see Endpoint weights in the
+ * Global Accelerator Developer Guide.
+ */
+ Weight?: number;
+
+ /**
+ * The health status of the endpoint.
+ */
+ HealthState?: HealthState | string;
+
+ /**
+ * Returns a null result.
+ */
+ HealthReason?: string;
+
+ /**
+ * Indicates whether client IP address preservation is enabled for an endpoint.
+ * The value is true or false. The default value is true for new accelerators.
+ * If the value is set to true, the client's IP address is preserved in the X-Forwarded-For
request header as
+ * traffic travels to applications on the endpoint fronted by the accelerator.
+ *
+ * Client IP address preservation is supported, in specific Amazon Web Services Regions, for endpoints that are Application Load
+ * Balancers and Amazon EC2 instances.
+ *
+ * For more information, see
+ * Preserve client IP addresses in Global Accelerator in the Global Accelerator Developer Guide.
+ */
+ ClientIPPreservationEnabled?: boolean;
+}
+
+export interface AddEndpointsResponse {
+ /**
+ * The list of endpoint objects.
+ */
+ EndpointDescriptions?: EndpointDescription[];
+
+ /**
+ * The Amazon Resource Name (ARN) of the endpoint group.
+ */
+ EndpointGroupArn?: string;
+}
+
+/**
+ * There's already a transaction in progress. Another transaction can't be processed.
+ */
+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;
+ }
+}
+
export interface AdvertiseByoipCidrRequest {
/**
* The address range, in CIDR notation. This must be the exact range that you provisioned.
@@ -678,7 +817,10 @@ export interface CidrAuthorizationContext {
Signature: string | undefined;
}
-export type ClientAffinity = "NONE" | "SOURCE_IP";
+export enum ClientAffinity {
+ NONE = "NONE",
+ SOURCE_IP = "SOURCE_IP",
+}
/**
*
A complex type that contains a Tag
key and Tag
value.
@@ -798,7 +940,10 @@ export interface CreateCustomRoutingAcceleratorRequest {
Tags?: Tag[];
}
-export type CustomRoutingAcceleratorStatus = "DEPLOYED" | "IN_PROGRESS";
+export enum CustomRoutingAcceleratorStatus {
+ DEPLOYED = "DEPLOYED",
+ IN_PROGRESS = "IN_PROGRESS",
+}
/**
* Attributes of a custom routing accelerator.
@@ -836,10 +981,11 @@ export interface CustomRoutingAccelerator {
* The naming convention for the DNS name is the following: A lowercase letter a,
* followed by a 16-bit random hex string, followed by .awsglobalaccelerator.com. For example:
* a1234567890abcdef.awsglobalaccelerator.com.
- * If you have a dual-stack accelerator, you also have a second DNS name, DualStackDnsName, that points to both the A record and the AAAA record for all four
- * static addresses for the accelerator (two IPv4 addresses and two IPv6 addresses).
+ *
+ * If you have a dual-stack accelerator, you also have a second DNS name, DualStackDnsName
, that points to both the A record
+ * and the AAAA record for all four static addresses for the accelerator: two IPv4 addresses and two IPv6 addresses.
* For more information about the default DNS name, see
- * Support for DNS Addressing in Global Accelerator in the Global Accelerator Developer Guide.
+ * Support for DNS addressing in Global Accelerator in the Global Accelerator Developer Guide.
*/
DnsName?: string;
@@ -1100,42 +1246,6 @@ export interface CreateCustomRoutingListenerResponse {
Listener?: CustomRoutingListener;
}
-/**
- * A complex type for endpoints. A resource must be valid and active when you add it as an endpoint.
- */
-export interface EndpointConfiguration {
- /**
- * An ID for the endpoint. If the endpoint is a Network Load Balancer or Application Load Balancer, this is the Amazon
- * Resource Name (ARN) of the resource. If the endpoint is an Elastic IP address, this is the Elastic IP address
- * allocation ID. For Amazon EC2 instances, this is the EC2 instance ID. A resource must be valid and active
- * when you add it as an endpoint.
- * An Application Load Balancer can be either internal or internet-facing.
- */
- EndpointId?: string;
-
- /**
- * The weight associated with the endpoint. When you add weights to endpoints, you configure Global Accelerator to route traffic
- * based on proportions that you specify. For example, you might specify endpoint weights of 4, 5, 5, and 6 (sum=20). The
- * result is that 4/20 of your traffic, on average, is routed to the first endpoint, 5/20 is routed both to the second
- * and third endpoints, and 6/20 is routed to the last endpoint. For more information, see Endpoint weights in the
- * Global Accelerator Developer Guide.
- */
- Weight?: number;
-
- /**
- * Indicates whether client IP address preservation is enabled for an endpoint.
- * The value is true or false. The default value is true for new accelerators.
- * If the value is set to true, the client's IP address is preserved in the X-Forwarded-For
request header as
- * traffic travels to applications on the endpoint fronted by the accelerator.
- *
- * Client IP address preservation is supported, in specific Amazon Web Services Regions, for endpoints that are Application Load
- * Balancers and Amazon EC2 instances.
- * For more information, see
- * Preserve client IP addresses in Global Accelerator in the Global Accelerator Developer Guide.
- */
- ClientIPPreservationEnabled?: boolean;
-}
-
export enum HealthCheckProtocol {
HTTP = "HTTP",
HTTPS = "HTTPS",
@@ -1237,54 +1347,6 @@ export interface CreateEndpointGroupRequest {
PortOverrides?: PortOverride[];
}
-export type HealthState = "HEALTHY" | "INITIAL" | "UNHEALTHY";
-
-/**
- * A complex type for an endpoint. Each endpoint group can include one or more endpoints, such as load
- * balancers.
- */
-export interface EndpointDescription {
- /**
- * An ID for the endpoint. If the endpoint is a Network Load Balancer or Application Load Balancer, this is the Amazon
- * Resource Name (ARN) of the resource. If the endpoint is an Elastic IP address, this is the Elastic IP address
- * allocation ID. For Amazon EC2 instances, this is the EC2 instance ID.
- * An Application Load Balancer can be either internal or internet-facing.
- */
- EndpointId?: string;
-
- /**
- * The weight associated with the endpoint. When you add weights to endpoints, you configure Global Accelerator to route traffic
- * based on proportions that you specify. For example, you might specify endpoint weights of 4, 5, 5, and 6 (sum=20). The
- * result is that 4/20 of your traffic, on average, is routed to the first endpoint, 5/20 is routed both to the second
- * and third endpoints, and 6/20 is routed to the last endpoint. For more information, see Endpoint weights in the
- * Global Accelerator Developer Guide.
- */
- Weight?: number;
-
- /**
- * The health status of the endpoint.
- */
- HealthState?: HealthState | string;
-
- /**
- * Returns a null result.
- */
- HealthReason?: string;
-
- /**
- * Indicates whether client IP address preservation is enabled for an endpoint.
- * The value is true or false. The default value is true for new accelerators.
- * If the value is set to true, the client's IP address is preserved in the X-Forwarded-For
request header as
- * traffic travels to applications on the endpoint fronted by the accelerator.
- *
- * Client IP address preservation is supported, in specific Amazon Web Services Regions, for endpoints that are Application Load
- * Balancers and Amazon EC2 instances.
- * For more information, see
- * Preserve client IP addresses in Global Accelerator in the Global Accelerator Developer Guide.
- */
- ClientIPPreservationEnabled?: boolean;
-}
-
/**
* A complex type for the endpoint group. An Amazon Web Services Region can have only one endpoint group for a specific listener.
*
@@ -1746,6 +1808,26 @@ export interface DestinationPortMapping {
DestinationTrafficState?: CustomRoutingDestinationTrafficState | string;
}
+/**
+ * A complex type for an endpoint. Specifies information about the endpoint to remove from the endpoint group.
+ */
+export interface EndpointIdentifier {
+ /**
+ * An ID for the endpoint. If the endpoint is a Network Load Balancer or Application Load Balancer, this is the Amazon
+ * Resource Name (ARN) of the resource. If the endpoint is an Elastic IP address, this is the Elastic IP address
+ * allocation ID. For Amazon EC2 instances, this is the EC2 instance ID.
+ * An Application Load Balancer can be either internal or internet-facing.
+ */
+ EndpointId: string | undefined;
+
+ /**
+ * Indicates whether client IP address preservation is enabled for an endpoint. The value is true or false.
+ * If the value is set to true, the client's IP address is preserved in the X-Forwarded-For
request header as
+ * traffic travels to applications on the endpoint fronted by the accelerator.
+ */
+ ClientIPPreservationEnabled?: boolean;
+}
+
/**
* The endpoint that you specified doesn't exist.
*/
@@ -2135,6 +2217,18 @@ export interface RemoveCustomRoutingEndpointsRequest {
EndpointGroupArn: string | undefined;
}
+export interface RemoveEndpointsRequest {
+ /**
+ * The identifiers of the endpoints that you want to remove.
+ */
+ EndpointIdentifiers: EndpointIdentifier[] | undefined;
+
+ /**
+ * The Amazon Resource Name (ARN) of the endpoint group.
+ */
+ EndpointGroupArn: string | undefined;
+}
+
export interface TagResourceRequest {
/**
* The Amazon Resource Name (ARN) of the Global Accelerator resource to add tags to. An ARN uniquely identifies a resource.
@@ -2501,6 +2595,34 @@ export const AddCustomRoutingEndpointsResponseFilterSensitiveLog = (obj: AddCust
...obj,
});
+/**
+ * @internal
+ */
+export const EndpointConfigurationFilterSensitiveLog = (obj: EndpointConfiguration): any => ({
+ ...obj,
+});
+
+/**
+ * @internal
+ */
+export const AddEndpointsRequestFilterSensitiveLog = (obj: AddEndpointsRequest): any => ({
+ ...obj,
+});
+
+/**
+ * @internal
+ */
+export const EndpointDescriptionFilterSensitiveLog = (obj: EndpointDescription): any => ({
+ ...obj,
+});
+
+/**
+ * @internal
+ */
+export const AddEndpointsResponseFilterSensitiveLog = (obj: AddEndpointsResponse): any => ({
+ ...obj,
+});
+
/**
* @internal
*/
@@ -2662,13 +2784,6 @@ export const CreateCustomRoutingListenerResponseFilterSensitiveLog = (
...obj,
});
-/**
- * @internal
- */
-export const EndpointConfigurationFilterSensitiveLog = (obj: EndpointConfiguration): any => ({
- ...obj,
-});
-
/**
* @internal
*/
@@ -2683,13 +2798,6 @@ export const CreateEndpointGroupRequestFilterSensitiveLog = (obj: CreateEndpoint
...obj,
});
-/**
- * @internal
- */
-export const EndpointDescriptionFilterSensitiveLog = (obj: EndpointDescription): any => ({
- ...obj,
-});
-
/**
* @internal
*/
@@ -2945,6 +3053,13 @@ export const DestinationPortMappingFilterSensitiveLog = (obj: DestinationPortMap
...obj,
});
+/**
+ * @internal
+ */
+export const EndpointIdentifierFilterSensitiveLog = (obj: EndpointIdentifier): any => ({
+ ...obj,
+});
+
/**
* @internal
*/
@@ -3131,6 +3246,13 @@ export const RemoveCustomRoutingEndpointsRequestFilterSensitiveLog = (
...obj,
});
+/**
+ * @internal
+ */
+export const RemoveEndpointsRequestFilterSensitiveLog = (obj: RemoveEndpointsRequest): any => ({
+ ...obj,
+});
+
/**
* @internal
*/
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 ed7b7442530e..82c9dad5118d 100644
--- a/clients/client-global-accelerator/src/protocols/Aws_json1_1.ts
+++ b/clients/client-global-accelerator/src/protocols/Aws_json1_1.ts
@@ -24,6 +24,7 @@ import {
AddCustomRoutingEndpointsCommandInput,
AddCustomRoutingEndpointsCommandOutput,
} from "../commands/AddCustomRoutingEndpointsCommand";
+import { AddEndpointsCommandInput, AddEndpointsCommandOutput } from "../commands/AddEndpointsCommand";
import { AdvertiseByoipCidrCommandInput, AdvertiseByoipCidrCommandOutput } from "../commands/AdvertiseByoipCidrCommand";
import {
AllowCustomRoutingTrafficCommandInput,
@@ -135,6 +136,7 @@ import {
RemoveCustomRoutingEndpointsCommandInput,
RemoveCustomRoutingEndpointsCommandOutput,
} from "../commands/RemoveCustomRoutingEndpointsCommand";
+import { RemoveEndpointsCommandInput, RemoveEndpointsCommandOutput } from "../commands/RemoveEndpointsCommand";
import { TagResourceCommandInput, TagResourceCommandOutput } from "../commands/TagResourceCommand";
import { UntagResourceCommandInput, UntagResourceCommandOutput } from "../commands/UntagResourceCommand";
import {
@@ -170,6 +172,8 @@ import {
AccessDeniedException,
AddCustomRoutingEndpointsRequest,
AddCustomRoutingEndpointsResponse,
+ AddEndpointsRequest,
+ AddEndpointsResponse,
AdvertiseByoipCidrRequest,
AdvertiseByoipCidrResponse,
AllowCustomRoutingTrafficRequest,
@@ -233,6 +237,7 @@ import {
EndpointGroup,
EndpointGroupAlreadyExistsException,
EndpointGroupNotFoundException,
+ EndpointIdentifier,
EndpointNotFoundException,
IncorrectCidrStateException,
InternalServiceErrorException,
@@ -270,10 +275,12 @@ import {
ProvisionByoipCidrRequest,
ProvisionByoipCidrResponse,
RemoveCustomRoutingEndpointsRequest,
+ RemoveEndpointsRequest,
SocketAddress,
Tag,
TagResourceRequest,
TagResourceResponse,
+ TransactionInProgressException,
UntagResourceRequest,
UntagResourceResponse,
UpdateAcceleratorAttributesRequest,
@@ -307,6 +314,19 @@ export const serializeAws_json1_1AddCustomRoutingEndpointsCommand = async (
return buildHttpRpcRequest(context, headers, "/", undefined, body);
};
+export const serializeAws_json1_1AddEndpointsCommand = async (
+ input: AddEndpointsCommandInput,
+ context: __SerdeContext
+): Promise<__HttpRequest> => {
+ const headers: __HeaderBag = {
+ "content-type": "application/x-amz-json-1.1",
+ "x-amz-target": "GlobalAccelerator_V20180706.AddEndpoints",
+ };
+ let body: any;
+ body = JSON.stringify(serializeAws_json1_1AddEndpointsRequest(input, context));
+ return buildHttpRpcRequest(context, headers, "/", undefined, body);
+};
+
export const serializeAws_json1_1AdvertiseByoipCidrCommand = async (
input: AdvertiseByoipCidrCommandInput,
context: __SerdeContext
@@ -775,6 +795,19 @@ export const serializeAws_json1_1RemoveCustomRoutingEndpointsCommand = async (
return buildHttpRpcRequest(context, headers, "/", undefined, body);
};
+export const serializeAws_json1_1RemoveEndpointsCommand = async (
+ input: RemoveEndpointsCommandInput,
+ context: __SerdeContext
+): Promise<__HttpRequest> => {
+ const headers: __HeaderBag = {
+ "content-type": "application/x-amz-json-1.1",
+ "x-amz-target": "GlobalAccelerator_V20180706.RemoveEndpoints",
+ };
+ let body: any;
+ body = JSON.stringify(serializeAws_json1_1RemoveEndpointsRequest(input, context));
+ return buildHttpRpcRequest(context, headers, "/", undefined, body);
+};
+
export const serializeAws_json1_1TagResourceCommand = async (
input: TagResourceCommandInput,
context: __SerdeContext
@@ -964,6 +997,62 @@ const deserializeAws_json1_1AddCustomRoutingEndpointsCommandError = async (
}
};
+export const deserializeAws_json1_1AddEndpointsCommand = async (
+ output: __HttpResponse,
+ context: __SerdeContext
+): Promise => {
+ if (output.statusCode >= 300) {
+ return deserializeAws_json1_1AddEndpointsCommandError(output, context);
+ }
+ const data: any = await parseBody(output.body, context);
+ let contents: any = {};
+ contents = deserializeAws_json1_1AddEndpointsResponse(data, context);
+ const response: AddEndpointsCommandOutput = {
+ $metadata: deserializeMetadata(output),
+ ...contents,
+ };
+ return Promise.resolve(response);
+};
+
+const deserializeAws_json1_1AddEndpointsCommandError = async (
+ output: __HttpResponse,
+ context: __SerdeContext
+): Promise => {
+ const parsedOutput: any = {
+ ...output,
+ body: await parseErrorBody(output.body, context),
+ };
+ const errorCode = loadRestJsonErrorCode(output, parsedOutput.body);
+ switch (errorCode) {
+ case "AccessDeniedException":
+ case "com.amazonaws.globalaccelerator#AccessDeniedException":
+ throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context);
+ case "EndpointGroupNotFoundException":
+ case "com.amazonaws.globalaccelerator#EndpointGroupNotFoundException":
+ throw await deserializeAws_json1_1EndpointGroupNotFoundExceptionResponse(parsedOutput, context);
+ case "InternalServiceErrorException":
+ case "com.amazonaws.globalaccelerator#InternalServiceErrorException":
+ throw await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context);
+ case "InvalidArgumentException":
+ case "com.amazonaws.globalaccelerator#InvalidArgumentException":
+ throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context);
+ case "LimitExceededException":
+ case "com.amazonaws.globalaccelerator#LimitExceededException":
+ throw await deserializeAws_json1_1LimitExceededExceptionResponse(parsedOutput, context);
+ case "TransactionInProgressException":
+ case "com.amazonaws.globalaccelerator#TransactionInProgressException":
+ throw await deserializeAws_json1_1TransactionInProgressExceptionResponse(parsedOutput, context);
+ default:
+ const parsedBody = parsedOutput.body;
+ throwDefaultError({
+ output,
+ parsedBody,
+ exceptionCtor: __BaseException,
+ errorCode,
+ });
+ }
+};
+
export const deserializeAws_json1_1AdvertiseByoipCidrCommand = async (
output: __HttpResponse,
context: __SerdeContext
@@ -2740,6 +2829,56 @@ const deserializeAws_json1_1RemoveCustomRoutingEndpointsCommandError = async (
}
};
+export const deserializeAws_json1_1RemoveEndpointsCommand = async (
+ output: __HttpResponse,
+ context: __SerdeContext
+): Promise => {
+ if (output.statusCode >= 300) {
+ return deserializeAws_json1_1RemoveEndpointsCommandError(output, context);
+ }
+ await collectBody(output.body, context);
+ const response: RemoveEndpointsCommandOutput = {
+ $metadata: deserializeMetadata(output),
+ };
+ return Promise.resolve(response);
+};
+
+const deserializeAws_json1_1RemoveEndpointsCommandError = async (
+ output: __HttpResponse,
+ context: __SerdeContext
+): Promise => {
+ const parsedOutput: any = {
+ ...output,
+ body: await parseErrorBody(output.body, context),
+ };
+ const errorCode = loadRestJsonErrorCode(output, parsedOutput.body);
+ switch (errorCode) {
+ case "AccessDeniedException":
+ case "com.amazonaws.globalaccelerator#AccessDeniedException":
+ throw await deserializeAws_json1_1AccessDeniedExceptionResponse(parsedOutput, context);
+ case "EndpointGroupNotFoundException":
+ case "com.amazonaws.globalaccelerator#EndpointGroupNotFoundException":
+ throw await deserializeAws_json1_1EndpointGroupNotFoundExceptionResponse(parsedOutput, context);
+ case "InternalServiceErrorException":
+ case "com.amazonaws.globalaccelerator#InternalServiceErrorException":
+ throw await deserializeAws_json1_1InternalServiceErrorExceptionResponse(parsedOutput, context);
+ case "InvalidArgumentException":
+ case "com.amazonaws.globalaccelerator#InvalidArgumentException":
+ throw await deserializeAws_json1_1InvalidArgumentExceptionResponse(parsedOutput, context);
+ case "TransactionInProgressException":
+ case "com.amazonaws.globalaccelerator#TransactionInProgressException":
+ throw await deserializeAws_json1_1TransactionInProgressExceptionResponse(parsedOutput, context);
+ default:
+ const parsedBody = parsedOutput.body;
+ throwDefaultError({
+ output,
+ parsedBody,
+ exceptionCtor: __BaseException,
+ errorCode,
+ });
+ }
+};
+
export const deserializeAws_json1_1TagResourceCommand = async (
output: __HttpResponse,
context: __SerdeContext
@@ -3477,6 +3616,19 @@ const deserializeAws_json1_1ListenerNotFoundExceptionResponse = async (
return __decorateServiceException(exception, body);
};
+const deserializeAws_json1_1TransactionInProgressExceptionResponse = async (
+ parsedOutput: any,
+ context: __SerdeContext
+): Promise => {
+ const body = parsedOutput.body;
+ const deserialized: any = deserializeAws_json1_1TransactionInProgressException(body, context);
+ const exception = new TransactionInProgressException({
+ $metadata: deserializeMetadata(parsedOutput),
+ ...deserialized,
+ });
+ return __decorateServiceException(exception, body);
+};
+
const serializeAws_json1_1AddCustomRoutingEndpointsRequest = (
input: AddCustomRoutingEndpointsRequest,
context: __SerdeContext
@@ -3492,6 +3644,15 @@ const serializeAws_json1_1AddCustomRoutingEndpointsRequest = (
};
};
+const serializeAws_json1_1AddEndpointsRequest = (input: AddEndpointsRequest, context: __SerdeContext): any => {
+ return {
+ ...(input.EndpointConfigurations != null && {
+ EndpointConfigurations: serializeAws_json1_1EndpointConfigurations(input.EndpointConfigurations, context),
+ }),
+ ...(input.EndpointGroupArn != null && { EndpointGroupArn: input.EndpointGroupArn }),
+ };
+};
+
const serializeAws_json1_1AdvertiseByoipCidrRequest = (
input: AdvertiseByoipCidrRequest,
context: __SerdeContext
@@ -3852,6 +4013,23 @@ const serializeAws_json1_1EndpointConfigurations = (input: EndpointConfiguration
});
};
+const serializeAws_json1_1EndpointIdentifier = (input: EndpointIdentifier, context: __SerdeContext): any => {
+ return {
+ ...(input.ClientIPPreservationEnabled != null && {
+ ClientIPPreservationEnabled: input.ClientIPPreservationEnabled,
+ }),
+ ...(input.EndpointId != null && { EndpointId: input.EndpointId }),
+ };
+};
+
+const serializeAws_json1_1EndpointIdentifiers = (input: EndpointIdentifier[], context: __SerdeContext): any => {
+ return input
+ .filter((e: any) => e != null)
+ .map((entry) => {
+ return serializeAws_json1_1EndpointIdentifier(entry, context);
+ });
+};
+
const serializeAws_json1_1EndpointIds = (input: string[], context: __SerdeContext): any => {
return input
.filter((e: any) => e != null)
@@ -4018,6 +4196,15 @@ const serializeAws_json1_1RemoveCustomRoutingEndpointsRequest = (
};
};
+const serializeAws_json1_1RemoveEndpointsRequest = (input: RemoveEndpointsRequest, context: __SerdeContext): any => {
+ return {
+ ...(input.EndpointGroupArn != null && { EndpointGroupArn: input.EndpointGroupArn }),
+ ...(input.EndpointIdentifiers != null && {
+ EndpointIdentifiers: serializeAws_json1_1EndpointIdentifiers(input.EndpointIdentifiers, context),
+ }),
+ };
+};
+
const serializeAws_json1_1Tag = (input: Tag, context: __SerdeContext): any => {
return {
...(input.Key != null && { Key: input.Key }),
@@ -4253,6 +4440,16 @@ const deserializeAws_json1_1AddCustomRoutingEndpointsResponse = (
} as any;
};
+const deserializeAws_json1_1AddEndpointsResponse = (output: any, context: __SerdeContext): AddEndpointsResponse => {
+ return {
+ EndpointDescriptions:
+ output.EndpointDescriptions != null
+ ? deserializeAws_json1_1EndpointDescriptions(output.EndpointDescriptions, context)
+ : undefined,
+ EndpointGroupArn: __expectString(output.EndpointGroupArn),
+ } as any;
+};
+
const deserializeAws_json1_1AdvertiseByoipCidrResponse = (
output: any,
context: __SerdeContext
@@ -5131,6 +5328,15 @@ const deserializeAws_json1_1Tags = (output: any, context: __SerdeContext): Tag[]
return retVal;
};
+const deserializeAws_json1_1TransactionInProgressException = (
+ output: any,
+ context: __SerdeContext
+): TransactionInProgressException => {
+ return {
+ Message: __expectString(output.Message),
+ } as any;
+};
+
const deserializeAws_json1_1UntagResourceResponse = (output: any, context: __SerdeContext): UntagResourceResponse => {
return {} as any;
};
diff --git a/clients/client-global-accelerator/src/runtimeConfig.shared.ts b/clients/client-global-accelerator/src/runtimeConfig.shared.ts
index f52584e22a75..46667bdf5d24 100644
--- a/clients/client-global-accelerator/src/runtimeConfig.shared.ts
+++ b/clients/client-global-accelerator/src/runtimeConfig.shared.ts
@@ -2,7 +2,7 @@
import { Logger as __Logger } from "@aws-sdk/types";
import { parseUrl } from "@aws-sdk/url-parser";
-import { defaultRegionInfoProvider } from "./endpoints";
+import { defaultEndpointResolver } from "./endpoint/endpointResolver";
import { GlobalAcceleratorClientConfig } from "./GlobalAcceleratorClient";
/**
@@ -11,8 +11,8 @@ import { GlobalAcceleratorClientConfig } from "./GlobalAcceleratorClient";
export const getRuntimeConfig = (config: GlobalAcceleratorClientConfig) => ({
apiVersion: "2018-08-08",
disableHostPrefix: config?.disableHostPrefix ?? false,
+ endpointProvider: config?.endpointProvider ?? defaultEndpointResolver,
logger: config?.logger ?? ({} as __Logger),
- regionInfoProvider: config?.regionInfoProvider ?? defaultRegionInfoProvider,
serviceId: config?.serviceId ?? "Global Accelerator",
urlParser: config?.urlParser ?? parseUrl,
});
diff --git a/codegen/sdk-codegen/aws-models/global-accelerator.json b/codegen/sdk-codegen/aws-models/global-accelerator.json
index f6d6ab19b03c..4159ec520447 100644
--- a/codegen/sdk-codegen/aws-models/global-accelerator.json
+++ b/codegen/sdk-codegen/aws-models/global-accelerator.json
@@ -1,5 +1,5 @@
{
- "smithy": "1.0",
+ "smithy": "2.0",
"metadata": {
"suppressions": [
{
@@ -65,7 +65,7 @@
"DnsName": {
"target": "com.amazonaws.globalaccelerator#GenericString",
"traits": {
- "smithy.api#documentation": "The Domain Name System (DNS) name that Global Accelerator creates that points to an accelerator's static IPv4 addresses.
\n\t\t The naming convention for the DNS name for an accelerator is the following: A lowercase letter a,\n\t\t\tfollowed by a 16-bit random hex string, followed by .awsglobalaccelerator.com. For example:\n\t\t\ta1234567890abcdef.awsglobalaccelerator.com.
\n If you have a dual-stack accelerator, you also have a second DNS name, DualStackDnsName, that points to both the A record and the AAAA record for all four \n\t\t\tstatic addresses for the accelerator (two IPv4 addresses and two IPv6 addresses).
\n\t\t For more information about the default DNS name, see \n\t\t\tSupport for DNS Addressing in Global Accelerator in the Global Accelerator Developer Guide.
"
+ "smithy.api#documentation": "The Domain Name System (DNS) name that Global Accelerator creates that points to an accelerator's static IPv4 addresses.
\n\t\t The naming convention for the DNS name for an accelerator is the following: A lowercase letter a,\n\t\t\tfollowed by a 16-bit random hex string, followed by .awsglobalaccelerator.com. For example:\n\t\t\ta1234567890abcdef.awsglobalaccelerator.com.
\n If you have a dual-stack accelerator, you also have a second DNS name, DualStackDnsName
, that points to both \n \t\t\tthe A record and the AAAA record for all four static addresses for the accelerator: two IPv4 addresses and two IPv6 addresses.
\n\t\t For more information about the default DNS name, see \n\t\t\tSupport for DNS addressing in Global Accelerator in the Global Accelerator Developer Guide.
"
}
},
"Status": {
@@ -89,7 +89,7 @@
"DualStackDnsName": {
"target": "com.amazonaws.globalaccelerator#GenericString",
"traits": {
- "smithy.api#documentation": "The Domain Name System (DNS) name that Global Accelerator creates that points to a dual-stack accelerator's four static IP addresses:\n\t\t\ttwo IPv4 addresses and two IPv6 addresses.
\n\t\t The naming convention for the dual-stack DNS name is the following: A lowercase letter a,\n\t\t\tfollowed by a 16-bit random hex string, followed by .dualstack.awsglobalaccelerator.com. For example:\n\t\t\ta1234567890abcdef.dualstack.awsglobalaccelerator.com.
\n\t\t Note: Global Accelerator also assigns a default DNS name, DnsName, to your accelerator that points just to the static IPv4 addresses.
\n\t\t For more information, see \n\t\t\tSupport for DNS Addressing in Global Accelerator in the Global Accelerator Developer Guide.
"
+ "smithy.api#documentation": "The Domain Name System (DNS) name that Global Accelerator creates that points to a dual-stack accelerator's four static IP addresses:\n\t\t\ttwo IPv4 addresses and two IPv6 addresses.
\n\t\t The naming convention for the dual-stack DNS name is the following: A lowercase letter a,\n\t\t\tfollowed by a 16-bit random hex string, followed by .dualstack.awsglobalaccelerator.com. For example:\n\t\t\ta1234567890abcdef.dualstack.awsglobalaccelerator.com.
\n\t\t Note: Global Accelerator also assigns a default DNS name, DnsName
, to your accelerator that points just to the static IPv4 addresses.
\n\t\t For more information, see \n\t\t\tSupport for DNS addressing in Global Accelerator in the Global Accelerator Developer Guide.
"
}
},
"Events": {
@@ -182,18 +182,20 @@
}
},
"com.amazonaws.globalaccelerator#AcceleratorStatus": {
- "type": "string",
- "traits": {
- "smithy.api#enum": [
- {
- "value": "DEPLOYED",
- "name": "DEPLOYED"
- },
- {
- "value": "IN_PROGRESS",
- "name": "IN_PROGRESS"
+ "type": "enum",
+ "members": {
+ "DEPLOYED": {
+ "target": "smithy.api#Unit",
+ "traits": {
+ "smithy.api#enumValue": "DEPLOYED"
}
- ]
+ },
+ "IN_PROGRESS": {
+ "target": "smithy.api#Unit",
+ "traits": {
+ "smithy.api#enumValue": "IN_PROGRESS"
+ }
+ }
}
},
"com.amazonaws.globalaccelerator#Accelerators": {
@@ -286,6 +288,74 @@
}
}
},
+ "com.amazonaws.globalaccelerator#AddEndpoints": {
+ "type": "operation",
+ "input": {
+ "target": "com.amazonaws.globalaccelerator#AddEndpointsRequest"
+ },
+ "output": {
+ "target": "com.amazonaws.globalaccelerator#AddEndpointsResponse"
+ },
+ "errors": [
+ {
+ "target": "com.amazonaws.globalaccelerator#AccessDeniedException"
+ },
+ {
+ "target": "com.amazonaws.globalaccelerator#EndpointGroupNotFoundException"
+ },
+ {
+ "target": "com.amazonaws.globalaccelerator#InternalServiceErrorException"
+ },
+ {
+ "target": "com.amazonaws.globalaccelerator#InvalidArgumentException"
+ },
+ {
+ "target": "com.amazonaws.globalaccelerator#LimitExceededException"
+ },
+ {
+ "target": "com.amazonaws.globalaccelerator#TransactionInProgressException"
+ }
+ ],
+ "traits": {
+ "smithy.api#documentation": "Add endpoints to an endpoint group. The AddEndpoints
API operation is the recommended option for adding endpoints. The\n\t\t\talternative options are to add endpoints when you create an endpoint group (with the\n\t\t\tCreateEndpointGroup API) \n\t\t\tor when you update an endpoint group (with the \n\t\t\tUpdateEndpointGroup API).
\n\t\t There are two advantages to using AddEndpoints
to add endpoints:
\n\t\t\t \n - \n
It's faster, because Global Accelerator only has to resolve the new endpoints that\n\t\t\t\t\tyou're adding.
\n \n - \n
It's more convenient, because you don't need to specify all of the current \n\t\t\t\t\tendpoints that are already in the endpoint group in addition to the new endpoints that you want to add.
\n \n
"
+ }
+ },
+ "com.amazonaws.globalaccelerator#AddEndpointsRequest": {
+ "type": "structure",
+ "members": {
+ "EndpointConfigurations": {
+ "target": "com.amazonaws.globalaccelerator#EndpointConfigurations",
+ "traits": {
+ "smithy.api#documentation": "The list of endpoint objects.
",
+ "smithy.api#required": {}
+ }
+ },
+ "EndpointGroupArn": {
+ "target": "com.amazonaws.globalaccelerator#GenericString",
+ "traits": {
+ "smithy.api#documentation": "The Amazon Resource Name (ARN) of the endpoint group.
",
+ "smithy.api#required": {}
+ }
+ }
+ }
+ },
+ "com.amazonaws.globalaccelerator#AddEndpointsResponse": {
+ "type": "structure",
+ "members": {
+ "EndpointDescriptions": {
+ "target": "com.amazonaws.globalaccelerator#EndpointDescriptions",
+ "traits": {
+ "smithy.api#documentation": "The list of endpoint objects.
"
+ }
+ },
+ "EndpointGroupArn": {
+ "target": "com.amazonaws.globalaccelerator#GenericString",
+ "traits": {
+ "smithy.api#documentation": "The Amazon Resource Name (ARN) of the endpoint group.
"
+ }
+ }
+ }
+ },
"com.amazonaws.globalaccelerator#AdvertiseByoipCidr": {
"type": "operation",
"input": {
@@ -490,54 +560,74 @@
}
},
"com.amazonaws.globalaccelerator#ByoipCidrState": {
- "type": "string",
- "traits": {
- "smithy.api#enum": [
- {
- "value": "PENDING_PROVISIONING",
- "name": "PENDING_PROVISIONING"
- },
- {
- "value": "READY",
- "name": "READY"
- },
- {
- "value": "PENDING_ADVERTISING",
- "name": "PENDING_ADVERTISING"
- },
- {
- "value": "ADVERTISING",
- "name": "ADVERTISING"
- },
- {
- "value": "PENDING_WITHDRAWING",
- "name": "PENDING_WITHDRAWING"
- },
- {
- "value": "PENDING_DEPROVISIONING",
- "name": "PENDING_DEPROVISIONING"
- },
- {
- "value": "DEPROVISIONED",
- "name": "DEPROVISIONED"
- },
- {
- "value": "FAILED_PROVISION",
- "name": "FAILED_PROVISION"
- },
- {
- "value": "FAILED_ADVERTISING",
- "name": "FAILED_ADVERTISING"
- },
- {
- "value": "FAILED_WITHDRAW",
- "name": "FAILED_WITHDRAW"
- },
- {
- "value": "FAILED_DEPROVISION",
- "name": "FAILED_DEPROVISION"
+ "type": "enum",
+ "members": {
+ "PENDING_PROVISIONING": {
+ "target": "smithy.api#Unit",
+ "traits": {
+ "smithy.api#enumValue": "PENDING_PROVISIONING"
+ }
+ },
+ "READY": {
+ "target": "smithy.api#Unit",
+ "traits": {
+ "smithy.api#enumValue": "READY"
+ }
+ },
+ "PENDING_ADVERTISING": {
+ "target": "smithy.api#Unit",
+ "traits": {
+ "smithy.api#enumValue": "PENDING_ADVERTISING"
+ }
+ },
+ "ADVERTISING": {
+ "target": "smithy.api#Unit",
+ "traits": {
+ "smithy.api#enumValue": "ADVERTISING"
}
- ]
+ },
+ "PENDING_WITHDRAWING": {
+ "target": "smithy.api#Unit",
+ "traits": {
+ "smithy.api#enumValue": "PENDING_WITHDRAWING"
+ }
+ },
+ "PENDING_DEPROVISIONING": {
+ "target": "smithy.api#Unit",
+ "traits": {
+ "smithy.api#enumValue": "PENDING_DEPROVISIONING"
+ }
+ },
+ "DEPROVISIONED": {
+ "target": "smithy.api#Unit",
+ "traits": {
+ "smithy.api#enumValue": "DEPROVISIONED"
+ }
+ },
+ "FAILED_PROVISION": {
+ "target": "smithy.api#Unit",
+ "traits": {
+ "smithy.api#enumValue": "FAILED_PROVISION"
+ }
+ },
+ "FAILED_ADVERTISING": {
+ "target": "smithy.api#Unit",
+ "traits": {
+ "smithy.api#enumValue": "FAILED_ADVERTISING"
+ }
+ },
+ "FAILED_WITHDRAW": {
+ "target": "smithy.api#Unit",
+ "traits": {
+ "smithy.api#enumValue": "FAILED_WITHDRAW"
+ }
+ },
+ "FAILED_DEPROVISION": {
+ "target": "smithy.api#Unit",
+ "traits": {
+ "smithy.api#enumValue": "FAILED_DEPROVISION"
+ }
+ }
}
},
"com.amazonaws.globalaccelerator#ByoipCidrs": {
@@ -569,18 +659,20 @@
}
},
"com.amazonaws.globalaccelerator#ClientAffinity": {
- "type": "string",
- "traits": {
- "smithy.api#enum": [
- {
- "value": "NONE",
- "name": "NONE"
- },
- {
- "value": "SOURCE_IP",
- "name": "SOURCE_IP"
+ "type": "enum",
+ "members": {
+ "NONE": {
+ "target": "smithy.api#Unit",
+ "traits": {
+ "smithy.api#enumValue": "NONE"
+ }
+ },
+ "SOURCE_IP": {
+ "target": "smithy.api#Unit",
+ "traits": {
+ "smithy.api#enumValue": "SOURCE_IP"
}
- ]
+ }
}
},
"com.amazonaws.globalaccelerator#ConflictException": {
@@ -1142,7 +1234,7 @@
"DnsName": {
"target": "com.amazonaws.globalaccelerator#GenericString",
"traits": {
- "smithy.api#documentation": "The Domain Name System (DNS) name that Global Accelerator creates that points to an accelerator's static IPv4 addresses.
\n\t\t The naming convention for the DNS name is the following: A lowercase letter a,\n\t\t\tfollowed by a 16-bit random hex string, followed by .awsglobalaccelerator.com. For example:\n\t\t\ta1234567890abcdef.awsglobalaccelerator.com.
\n\t\t If you have a dual-stack accelerator, you also have a second DNS name, DualStackDnsName, that points to both the A record and the AAAA record for all four \n\t\t\tstatic addresses for the accelerator (two IPv4 addresses and two IPv6 addresses).
\n\t\t For more information about the default DNS name, see \n\t\t\tSupport for DNS Addressing in Global Accelerator in the Global Accelerator Developer Guide.
"
+ "smithy.api#documentation": "The Domain Name System (DNS) name that Global Accelerator creates that points to an accelerator's static IPv4 addresses.
\n\t\t The naming convention for the DNS name is the following: A lowercase letter a,\n\t\t\tfollowed by a 16-bit random hex string, followed by .awsglobalaccelerator.com. For example:\n\t\t\ta1234567890abcdef.awsglobalaccelerator.com.
\n\n\t\t If you have a dual-stack accelerator, you also have a second DNS name, DualStackDnsName
, that points to both the A record \n\t\t\tand the AAAA record for all four static addresses for the accelerator: two IPv4 addresses and two IPv6 addresses.
\n\t\t For more information about the default DNS name, see \n\t\t\tSupport for DNS addressing in Global Accelerator in the Global Accelerator Developer Guide.
"
}
},
"Status": {
@@ -1195,18 +1287,20 @@
}
},
"com.amazonaws.globalaccelerator#CustomRoutingAcceleratorStatus": {
- "type": "string",
- "traits": {
- "smithy.api#enum": [
- {
- "value": "DEPLOYED",
- "name": "DEPLOYED"
- },
- {
- "value": "IN_PROGRESS",
- "name": "IN_PROGRESS"
+ "type": "enum",
+ "members": {
+ "DEPLOYED": {
+ "target": "smithy.api#Unit",
+ "traits": {
+ "smithy.api#enumValue": "DEPLOYED"
}
- ]
+ },
+ "IN_PROGRESS": {
+ "target": "smithy.api#Unit",
+ "traits": {
+ "smithy.api#enumValue": "IN_PROGRESS"
+ }
+ }
}
},
"com.amazonaws.globalaccelerator#CustomRoutingAccelerators": {
@@ -1289,18 +1383,20 @@
}
},
"com.amazonaws.globalaccelerator#CustomRoutingDestinationTrafficState": {
- "type": "string",
- "traits": {
- "smithy.api#enum": [
- {
- "value": "ALLOW",
- "name": "ALLOW"
- },
- {
- "value": "DENY",
- "name": "DENY"
+ "type": "enum",
+ "members": {
+ "ALLOW": {
+ "target": "smithy.api#Unit",
+ "traits": {
+ "smithy.api#enumValue": "ALLOW"
}
- ]
+ },
+ "DENY": {
+ "target": "smithy.api#Unit",
+ "traits": {
+ "smithy.api#enumValue": "DENY"
+ }
+ }
}
},
"com.amazonaws.globalaccelerator#CustomRoutingEndpointConfiguration": {
@@ -1414,18 +1510,20 @@
}
},
"com.amazonaws.globalaccelerator#CustomRoutingProtocol": {
- "type": "string",
- "traits": {
- "smithy.api#enum": [
- {
- "value": "TCP",
- "name": "TCP"
- },
- {
- "value": "UDP",
- "name": "UDP"
+ "type": "enum",
+ "members": {
+ "TCP": {
+ "target": "smithy.api#Unit",
+ "traits": {
+ "smithy.api#enumValue": "TCP"
+ }
+ },
+ "UDP": {
+ "target": "smithy.api#Unit",
+ "traits": {
+ "smithy.api#enumValue": "UDP"
}
- ]
+ }
}
},
"com.amazonaws.globalaccelerator#CustomRoutingProtocols": {
@@ -2265,7 +2363,7 @@
"ClientIPPreservationEnabled": {
"target": "com.amazonaws.globalaccelerator#GenericBoolean",
"traits": {
- "smithy.api#documentation": "Indicates whether client IP address preservation is enabled for an endpoint. \n\t\t\tThe value is true or false. The default value is true for new accelerators.
\n\t\t If the value is set to true, the client's IP address is preserved in the X-Forwarded-For
request header as \n\t\t\ttraffic travels to applications on the endpoint fronted by the accelerator.
\n\t\t\n\t\t Client IP address preservation is supported, in specific Amazon Web Services Regions, for endpoints that are Application Load \n\t\t\tBalancers and Amazon EC2 instances.
\n\t\t For more information, see \n\t\t\tPreserve client IP addresses in Global Accelerator in the Global Accelerator Developer Guide.
"
+ "smithy.api#documentation": "Indicates whether client IP address preservation is enabled for an endpoint. \n\t\t\tThe value is true or false. The default value is true for new accelerators.
\n\t\t If the value is set to true, the client's IP address is preserved in the X-Forwarded-For
request header as \n\t\t\ttraffic travels to applications on the endpoint fronted by the accelerator.
\n\n\t\t\n\t\t Client IP address preservation is supported, in specific Amazon Web Services Regions, for endpoints that are Application Load \n\t\t\tBalancers and Amazon EC2 instances.
\n\n\t\t For more information, see \n\t\t\tPreserve client IP addresses in Global Accelerator in the Global Accelerator Developer Guide.
"
}
}
},
@@ -2315,7 +2413,7 @@
"ClientIPPreservationEnabled": {
"target": "com.amazonaws.globalaccelerator#GenericBoolean",
"traits": {
- "smithy.api#documentation": "Indicates whether client IP address preservation is enabled for an endpoint. \n\t\t\tThe value is true or false. The default value is true for new accelerators.
\n\t\t If the value is set to true, the client's IP address is preserved in the X-Forwarded-For
request header as \n\t\t\ttraffic travels to applications on the endpoint fronted by the accelerator.
\n\n\t\t Client IP address preservation is supported, in specific Amazon Web Services Regions, for endpoints that are Application Load \n\t\t\tBalancers and Amazon EC2 instances.
\n\t\t For more information, see \n\t\t\tPreserve client IP addresses in Global Accelerator in the Global Accelerator Developer Guide.
"
+ "smithy.api#documentation": "Indicates whether client IP address preservation is enabled for an endpoint. \n\t\t\tThe value is true or false. The default value is true for new accelerators.
\n\t\t If the value is set to true, the client's IP address is preserved in the X-Forwarded-For
request header as \n\t\t\ttraffic travels to applications on the endpoint fronted by the accelerator.
\n\n\t\t Client IP address preservation is supported, in specific Amazon Web Services Regions, for endpoints that are Application Load \n\t\t\tBalancers and Amazon EC2 instances.
\n\n\t\t For more information, see \n\t\t\tPreserve client IP addresses in Global Accelerator in the Global Accelerator Developer Guide.
"
}
}
},
@@ -2429,6 +2527,39 @@
"target": "com.amazonaws.globalaccelerator#EndpointGroup"
}
},
+ "com.amazonaws.globalaccelerator#EndpointIdentifier": {
+ "type": "structure",
+ "members": {
+ "EndpointId": {
+ "target": "com.amazonaws.globalaccelerator#GenericString",
+ "traits": {
+ "smithy.api#documentation": "An ID for the endpoint. If the endpoint is a Network Load Balancer or Application Load Balancer, this is the Amazon\n\t\t\tResource Name (ARN) of the resource. If the endpoint is an Elastic IP address, this is the Elastic IP address\n\t\t\tallocation ID. For Amazon EC2 instances, this is the EC2 instance ID.
\n\t\t An Application Load Balancer can be either internal or internet-facing.
",
+ "smithy.api#required": {}
+ }
+ },
+ "ClientIPPreservationEnabled": {
+ "target": "com.amazonaws.globalaccelerator#GenericBoolean",
+ "traits": {
+ "smithy.api#documentation": "Indicates whether client IP address preservation is enabled for an endpoint. The value is true or false.
\n\t\t If the value is set to true, the client's IP address is preserved in the X-Forwarded-For
request header as \n\t\t\ttraffic travels to applications on the endpoint fronted by the accelerator.
"
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "A complex type for an endpoint. Specifies information about the endpoint to remove from the endpoint group.
"
+ }
+ },
+ "com.amazonaws.globalaccelerator#EndpointIdentifiers": {
+ "type": "list",
+ "member": {
+ "target": "com.amazonaws.globalaccelerator#EndpointIdentifier"
+ },
+ "traits": {
+ "smithy.api#length": {
+ "min": 1,
+ "max": 10
+ }
+ }
+ },
"com.amazonaws.globalaccelerator#EndpointIds": {
"type": "list",
"member": {
@@ -2451,7 +2582,6 @@
"com.amazonaws.globalaccelerator#EndpointWeight": {
"type": "integer",
"traits": {
- "smithy.api#box": {},
"smithy.api#range": {
"min": 0,
"max": 255
@@ -2462,10 +2592,7 @@
"type": "string"
},
"com.amazonaws.globalaccelerator#GenericBoolean": {
- "type": "boolean",
- "traits": {
- "smithy.api#box": {}
- }
+ "type": "boolean"
},
"com.amazonaws.globalaccelerator#GenericString": {
"type": "string",
@@ -2478,26 +2605,14 @@
},
"com.amazonaws.globalaccelerator#GlobalAccelerator_V20180706": {
"type": "service",
- "traits": {
- "aws.api#service": {
- "sdkId": "Global Accelerator",
- "arnNamespace": "globalaccelerator",
- "cloudFormationName": "GlobalAccelerator",
- "cloudTrailEventSource": "globalaccelerator.amazonaws.com",
- "endpointPrefix": "globalaccelerator"
- },
- "aws.auth#sigv4": {
- "name": "globalaccelerator"
- },
- "aws.protocols#awsJson1_1": {},
- "smithy.api#documentation": "Global Accelerator\n\t This is the Global Accelerator API Reference. This guide is for developers who need detailed information about\n\t\t Global Accelerator API actions, data types, and errors. For more information about Global Accelerator features, see the \n\t \tGlobal Accelerator Developer Guide.
\n\t Global Accelerator is a service in which you create accelerators to improve the performance \n\t\t\tof your applications for local and global users. Depending on the type of accelerator you choose, you can\n\t\t\tgain additional benefits.
\n\t\t \n - \n
By using a standard accelerator, you can improve availability of your internet applications \n\t\t\t that are used by a global audience. With a standard accelerator, Global Accelerator directs traffic to optimal endpoints over the Amazon Web Services \n\t\t\t\tglobal network.
\n \n - \n
For other scenarios, you might choose a custom routing accelerator. With a custom routing accelerator, you \n\t\t\t\tcan use application logic to directly map one or more users to a specific endpoint among many endpoints.
\n \n
\n\t\t \n\t\t Global Accelerator is a global service that supports endpoints in multiple Amazon Web Services Regions but you must specify the \n\t\t \tUS West (Oregon) Region to create, update, or otherwise work with accelerators. That is, for example, specify --region us-west-2
\n\t\t \ton AWS CLI commands.
\n\t\t \n\t\t\n\t\t\n\t\t By default, Global Accelerator provides you with static IP addresses that you associate with your accelerator. The static IP addresses \n\t\t\tare anycast from the Amazon Web Services edge network. For IPv4, Global Accelerator provides two static IPv4 addresses. For dual-stack,\n\t\t\tGlobal Accelerator provides a total of four addresses: two static IPv4 addresses and two static IPv6 addresses. \n\t\t\tWith a standard accelerator for IPv4, instead of using the addresses that Global Accelerator provides, you can configure \n\t\t\tthese entry points to be IPv4 addresses from your own IP address ranges that you bring toGlobal Accelerator (BYOIP).
\n\t\t\n\t\t\n\t For a standard accelerator, \n\t they distribute incoming application traffic across multiple endpoint resources in multiple Amazon Web Services Regions , which increases \n\t\t\tthe availability of your applications. Endpoints for standard accelerators can be Network Load Balancers, Application Load Balancers, \n\t \tAmazon EC2 instances, or Elastic IP addresses that are located in one Amazon Web Services Region or multiple Amazon Web Services Regions. For custom routing\n\t accelerators, you map traffic that arrives to the static IP addresses to specific Amazon EC2 servers in endpoints that\n\t\t\tare virtual private cloud (VPC) subnets.
\n\t\t\n\t\t \n The static IP addresses remain assigned to your accelerator for as long as it exists, even if you\n\t\t\t\tdisable the accelerator and it no longer accepts or routes traffic. However, when you\n\t\t\t\t\tdelete an accelerator, you lose the static IP addresses that\n\t\t\t\tare assigned to it, so you can no longer route traffic by using them. You can use\n\t\t\t\tIAM policies like tag-based permissions with Global Accelerator to limit the users who have\n\t\t\t\tpermissions to delete an accelerator. For more information, see Tag-based policies.
\n \n\t For standard accelerators, Global Accelerator uses the Amazon Web Services global network to route traffic to the optimal regional endpoint based\n\t\t\ton health, client location, and policies that you configure. The service reacts instantly to\n\t\t\tchanges in health or configuration to ensure that internet traffic from clients is always\n\t\t\tdirected to healthy endpoints.
\n\t\t For more information about understanding and using Global Accelerator, see the\n\t\t\tGlobal Accelerator Developer Guide.
",
- "smithy.api#title": "AWS Global Accelerator"
- },
"version": "2018-08-08",
"operations": [
{
"target": "com.amazonaws.globalaccelerator#AddCustomRoutingEndpoints"
},
+ {
+ "target": "com.amazonaws.globalaccelerator#AddEndpoints"
+ },
{
"target": "com.amazonaws.globalaccelerator#AdvertiseByoipCidr"
},
@@ -2606,6 +2721,9 @@
{
"target": "com.amazonaws.globalaccelerator#RemoveCustomRoutingEndpoints"
},
+ {
+ "target": "com.amazonaws.globalaccelerator#RemoveEndpoints"
+ },
{
"target": "com.amazonaws.globalaccelerator#TagResource"
},
@@ -2636,12 +2754,378 @@
{
"target": "com.amazonaws.globalaccelerator#WithdrawByoipCidr"
}
- ]
+ ],
+ "traits": {
+ "aws.api#service": {
+ "sdkId": "Global Accelerator",
+ "arnNamespace": "globalaccelerator",
+ "cloudFormationName": "GlobalAccelerator",
+ "cloudTrailEventSource": "globalaccelerator.amazonaws.com",
+ "endpointPrefix": "globalaccelerator"
+ },
+ "aws.auth#sigv4": {
+ "name": "globalaccelerator"
+ },
+ "aws.protocols#awsJson1_1": {},
+ "smithy.api#documentation": "Global Accelerator\n\t This is the Global Accelerator API Reference. This guide is for developers who need detailed information about\n\t\t Global Accelerator API actions, data types, and errors. For more information about Global Accelerator features, see the \n\t \tGlobal Accelerator Developer Guide.
\n\t Global Accelerator is a service in which you create accelerators to improve the performance \n\t\t\tof your applications for local and global users. Depending on the type of accelerator you choose, you can\n\t\t\tgain additional benefits.
\n\t\t \n - \n
By using a standard accelerator, you can improve availability of your internet applications \n\t\t\t that are used by a global audience. With a standard accelerator, Global Accelerator directs traffic to optimal endpoints over the Amazon Web Services \n\t\t\t\tglobal network.
\n \n - \n
For other scenarios, you might choose a custom routing accelerator. With a custom routing accelerator, you \n\t\t\t\tcan use application logic to directly map one or more users to a specific endpoint among many endpoints.
\n \n
\n\t\t \n\t\t Global Accelerator is a global service that supports endpoints in multiple Amazon Web Services Regions but you must specify the \n\t\t \tUS West (Oregon) Region to create, update, or otherwise work with accelerators. That is, for example, specify --region us-west-2
\n\t\t \ton AWS CLI commands.
\n\t\t \n\t\t\n\t\t\n\t\t By default, Global Accelerator provides you with static IP addresses that you associate with your accelerator. The static IP addresses \n\t\t\tare anycast from the Amazon Web Services edge network. For IPv4, Global Accelerator provides two static IPv4 addresses. For dual-stack,\n\t\t\tGlobal Accelerator provides a total of four addresses: two static IPv4 addresses and two static IPv6 addresses. \n\t\t\tWith a standard accelerator for IPv4, instead of using the addresses that Global Accelerator provides, you can configure \n\t\t\tthese entry points to be IPv4 addresses from your own IP address ranges that you bring toGlobal Accelerator (BYOIP).
\n\t\t\n\t\t\n\t For a standard accelerator, \n\t they distribute incoming application traffic across multiple endpoint resources in multiple Amazon Web Services Regions , which increases \n\t\t\tthe availability of your applications. Endpoints for standard accelerators can be Network Load Balancers, Application Load Balancers, \n\t \tAmazon EC2 instances, or Elastic IP addresses that are located in one Amazon Web Services Region or multiple Amazon Web Services Regions. For custom routing\n\t accelerators, you map traffic that arrives to the static IP addresses to specific Amazon EC2 servers in endpoints that\n\t\t\tare virtual private cloud (VPC) subnets.
\n\t\t\n\t\t \n The static IP addresses remain assigned to your accelerator for as long as it exists, even if you\n\t\t\t\tdisable the accelerator and it no longer accepts or routes traffic. However, when you\n\t\t\t\t\tdelete an accelerator, you lose the static IP addresses that\n\t\t\t\tare assigned to it, so you can no longer route traffic by using them. You can use\n\t\t\t\tIAM policies like tag-based permissions with Global Accelerator to limit the users who have\n\t\t\t\tpermissions to delete an accelerator. For more information, see Tag-based policies.
\n \n\t For standard accelerators, Global Accelerator uses the Amazon Web Services global network to route traffic to the optimal regional endpoint based\n\t\t\ton health, client location, and policies that you configure. The service reacts instantly to\n\t\t\tchanges in health or configuration to ensure that internet traffic from clients is always\n\t\t\tdirected to healthy endpoints.
\n\t\t For more information about understanding and using Global Accelerator, see the\n\t\t\tGlobal Accelerator Developer Guide.
",
+ "smithy.api#title": "AWS Global Accelerator",
+ "smithy.rules#endpointRuleSet": {
+ "version": "1.0",
+ "parameters": {
+ "Region": {
+ "builtIn": "AWS::Region",
+ "required": false,
+ "documentation": "The AWS region used to dispatch the request.",
+ "type": "String"
+ },
+ "UseDualStack": {
+ "builtIn": "AWS::UseDualStack",
+ "required": true,
+ "default": false,
+ "documentation": "When true, use the dual-stack endpoint. If the configured endpoint does not support dual-stack, dispatching the request MAY return an error.",
+ "type": "Boolean"
+ },
+ "UseFIPS": {
+ "builtIn": "AWS::UseFIPS",
+ "required": true,
+ "default": false,
+ "documentation": "When true, send this request to the FIPS-compliant regional endpoint. If the configured endpoint does not have a FIPS compliant endpoint, dispatching the request will return an error.",
+ "type": "Boolean"
+ },
+ "Endpoint": {
+ "builtIn": "SDK::Endpoint",
+ "required": false,
+ "documentation": "Override the endpoint used to send this request",
+ "type": "String"
+ }
+ },
+ "rules": [
+ {
+ "conditions": [
+ {
+ "fn": "aws.partition",
+ "argv": [
+ {
+ "ref": "Region"
+ }
+ ],
+ "assign": "PartitionResult"
+ }
+ ],
+ "type": "tree",
+ "rules": [
+ {
+ "conditions": [
+ {
+ "fn": "isSet",
+ "argv": [
+ {
+ "ref": "Endpoint"
+ }
+ ]
+ },
+ {
+ "fn": "parseURL",
+ "argv": [
+ {
+ "ref": "Endpoint"
+ }
+ ],
+ "assign": "url"
+ }
+ ],
+ "type": "tree",
+ "rules": [
+ {
+ "conditions": [
+ {
+ "fn": "booleanEquals",
+ "argv": [
+ {
+ "ref": "UseFIPS"
+ },
+ true
+ ]
+ }
+ ],
+ "error": "Invalid Configuration: FIPS and custom endpoint are not supported",
+ "type": "error"
+ },
+ {
+ "conditions": [],
+ "type": "tree",
+ "rules": [
+ {
+ "conditions": [
+ {
+ "fn": "booleanEquals",
+ "argv": [
+ {
+ "ref": "UseDualStack"
+ },
+ true
+ ]
+ }
+ ],
+ "error": "Invalid Configuration: Dualstack and custom endpoint are not supported",
+ "type": "error"
+ },
+ {
+ "conditions": [],
+ "endpoint": {
+ "url": {
+ "ref": "Endpoint"
+ },
+ "properties": {},
+ "headers": {}
+ },
+ "type": "endpoint"
+ }
+ ]
+ }
+ ]
+ },
+ {
+ "conditions": [
+ {
+ "fn": "booleanEquals",
+ "argv": [
+ {
+ "ref": "UseFIPS"
+ },
+ true
+ ]
+ },
+ {
+ "fn": "booleanEquals",
+ "argv": [
+ {
+ "ref": "UseDualStack"
+ },
+ true
+ ]
+ }
+ ],
+ "type": "tree",
+ "rules": [
+ {
+ "conditions": [
+ {
+ "fn": "booleanEquals",
+ "argv": [
+ true,
+ {
+ "fn": "getAttr",
+ "argv": [
+ {
+ "ref": "PartitionResult"
+ },
+ "supportsFIPS"
+ ]
+ }
+ ]
+ },
+ {
+ "fn": "booleanEquals",
+ "argv": [
+ true,
+ {
+ "fn": "getAttr",
+ "argv": [
+ {
+ "ref": "PartitionResult"
+ },
+ "supportsDualStack"
+ ]
+ }
+ ]
+ }
+ ],
+ "type": "tree",
+ "rules": [
+ {
+ "conditions": [],
+ "endpoint": {
+ "url": "https://globalaccelerator-fips.{Region}.{PartitionResult#dualStackDnsSuffix}",
+ "properties": {},
+ "headers": {}
+ },
+ "type": "endpoint"
+ }
+ ]
+ },
+ {
+ "conditions": [],
+ "error": "FIPS and DualStack are enabled, but this partition does not support one or both",
+ "type": "error"
+ }
+ ]
+ },
+ {
+ "conditions": [
+ {
+ "fn": "booleanEquals",
+ "argv": [
+ {
+ "ref": "UseFIPS"
+ },
+ true
+ ]
+ }
+ ],
+ "type": "tree",
+ "rules": [
+ {
+ "conditions": [
+ {
+ "fn": "booleanEquals",
+ "argv": [
+ true,
+ {
+ "fn": "getAttr",
+ "argv": [
+ {
+ "ref": "PartitionResult"
+ },
+ "supportsFIPS"
+ ]
+ }
+ ]
+ }
+ ],
+ "type": "tree",
+ "rules": [
+ {
+ "conditions": [],
+ "endpoint": {
+ "url": "https://globalaccelerator-fips.{Region}.{PartitionResult#dnsSuffix}",
+ "properties": {},
+ "headers": {}
+ },
+ "type": "endpoint"
+ }
+ ]
+ },
+ {
+ "conditions": [],
+ "error": "FIPS is enabled but this partition does not support FIPS",
+ "type": "error"
+ }
+ ]
+ },
+ {
+ "conditions": [
+ {
+ "fn": "booleanEquals",
+ "argv": [
+ {
+ "ref": "UseDualStack"
+ },
+ true
+ ]
+ }
+ ],
+ "type": "tree",
+ "rules": [
+ {
+ "conditions": [
+ {
+ "fn": "booleanEquals",
+ "argv": [
+ true,
+ {
+ "fn": "getAttr",
+ "argv": [
+ {
+ "ref": "PartitionResult"
+ },
+ "supportsDualStack"
+ ]
+ }
+ ]
+ }
+ ],
+ "type": "tree",
+ "rules": [
+ {
+ "conditions": [],
+ "endpoint": {
+ "url": "https://globalaccelerator.{Region}.{PartitionResult#dualStackDnsSuffix}",
+ "properties": {},
+ "headers": {}
+ },
+ "type": "endpoint"
+ }
+ ]
+ },
+ {
+ "conditions": [],
+ "error": "DualStack is enabled but this partition does not support DualStack",
+ "type": "error"
+ }
+ ]
+ },
+ {
+ "conditions": [],
+ "endpoint": {
+ "url": "https://globalaccelerator.{Region}.{PartitionResult#dnsSuffix}",
+ "properties": {},
+ "headers": {}
+ },
+ "type": "endpoint"
+ }
+ ]
+ }
+ ]
+ },
+ "smithy.rules#endpointTests": {
+ "testCases": [
+ {
+ "documentation": "For custom endpoint with fips disabled and dualstack disabled",
+ "expect": {
+ "endpoint": {
+ "url": "https://example.com"
+ }
+ },
+ "params": {
+ "UseFIPS": false,
+ "Region": "us-east-1",
+ "UseDualStack": false,
+ "Endpoint": "https://example.com"
+ }
+ },
+ {
+ "documentation": "For custom endpoint with fips enabled and dualstack disabled",
+ "expect": {
+ "error": "Invalid Configuration: FIPS and custom endpoint are not supported"
+ },
+ "params": {
+ "UseFIPS": true,
+ "Region": "us-east-1",
+ "UseDualStack": false,
+ "Endpoint": "https://example.com"
+ }
+ },
+ {
+ "documentation": "For custom endpoint with fips disabled and dualstack enabled",
+ "expect": {
+ "error": "Invalid Configuration: Dualstack and custom endpoint are not supported"
+ },
+ "params": {
+ "UseFIPS": false,
+ "Region": "us-east-1",
+ "UseDualStack": true,
+ "Endpoint": "https://example.com"
+ }
+ }
+ ],
+ "version": "1.0"
+ }
+ }
},
"com.amazonaws.globalaccelerator#HealthCheckIntervalSeconds": {
"type": "integer",
"traits": {
- "smithy.api#box": {},
"smithy.api#range": {
"min": 10,
"max": 30
@@ -2661,7 +3145,6 @@
"com.amazonaws.globalaccelerator#HealthCheckPort": {
"type": "integer",
"traits": {
- "smithy.api#box": {},
"smithy.api#range": {
"min": 1,
"max": 65535
@@ -2669,41 +3152,49 @@
}
},
"com.amazonaws.globalaccelerator#HealthCheckProtocol": {
- "type": "string",
- "traits": {
- "smithy.api#enum": [
- {
- "value": "TCP",
- "name": "TCP"
- },
- {
- "value": "HTTP",
- "name": "HTTP"
- },
- {
- "value": "HTTPS",
- "name": "HTTPS"
+ "type": "enum",
+ "members": {
+ "TCP": {
+ "target": "smithy.api#Unit",
+ "traits": {
+ "smithy.api#enumValue": "TCP"
+ }
+ },
+ "HTTP": {
+ "target": "smithy.api#Unit",
+ "traits": {
+ "smithy.api#enumValue": "HTTP"
}
- ]
+ },
+ "HTTPS": {
+ "target": "smithy.api#Unit",
+ "traits": {
+ "smithy.api#enumValue": "HTTPS"
+ }
+ }
}
},
"com.amazonaws.globalaccelerator#HealthState": {
- "type": "string",
- "traits": {
- "smithy.api#enum": [
- {
- "value": "INITIAL",
- "name": "INITIAL"
- },
- {
- "value": "HEALTHY",
- "name": "HEALTHY"
- },
- {
- "value": "UNHEALTHY",
- "name": "UNHEALTHY"
+ "type": "enum",
+ "members": {
+ "INITIAL": {
+ "target": "smithy.api#Unit",
+ "traits": {
+ "smithy.api#enumValue": "INITIAL"
}
- ]
+ },
+ "HEALTHY": {
+ "target": "smithy.api#Unit",
+ "traits": {
+ "smithy.api#enumValue": "HEALTHY"
+ }
+ },
+ "UNHEALTHY": {
+ "target": "smithy.api#Unit",
+ "traits": {
+ "smithy.api#enumValue": "UNHEALTHY"
+ }
+ }
}
},
"com.amazonaws.globalaccelerator#IdempotencyToken": {
@@ -2790,33 +3281,37 @@
}
},
"com.amazonaws.globalaccelerator#IpAddressFamily": {
- "type": "string",
- "traits": {
- "smithy.api#enum": [
- {
- "value": "IPv4",
- "name": "IPv4"
- },
- {
- "value": "IPv6",
- "name": "IPv6"
+ "type": "enum",
+ "members": {
+ "IPv4": {
+ "target": "smithy.api#Unit",
+ "traits": {
+ "smithy.api#enumValue": "IPv4"
+ }
+ },
+ "IPv6": {
+ "target": "smithy.api#Unit",
+ "traits": {
+ "smithy.api#enumValue": "IPv6"
}
- ]
+ }
}
},
"com.amazonaws.globalaccelerator#IpAddressType": {
- "type": "string",
- "traits": {
- "smithy.api#enum": [
- {
- "value": "IPV4",
- "name": "IPV4"
- },
- {
- "value": "DUAL_STACK",
- "name": "DUAL_STACK"
+ "type": "enum",
+ "members": {
+ "IPV4": {
+ "target": "smithy.api#Unit",
+ "traits": {
+ "smithy.api#enumValue": "IPV4"
}
- ]
+ },
+ "DUAL_STACK": {
+ "target": "smithy.api#Unit",
+ "traits": {
+ "smithy.api#enumValue": "DUAL_STACK"
+ }
+ }
}
},
"com.amazonaws.globalaccelerator#IpAddresses": {
@@ -3624,7 +4119,6 @@
"com.amazonaws.globalaccelerator#MaxResults": {
"type": "integer",
"traits": {
- "smithy.api#box": {},
"smithy.api#range": {
"min": 1,
"max": 100
@@ -3684,7 +4178,6 @@
"com.amazonaws.globalaccelerator#PortMappingsMaxResults": {
"type": "integer",
"traits": {
- "smithy.api#box": {},
"smithy.api#range": {
"min": 1,
"max": 20000
@@ -3694,7 +4187,6 @@
"com.amazonaws.globalaccelerator#PortNumber": {
"type": "integer",
"traits": {
- "smithy.api#box": {},
"smithy.api#range": {
"min": 1,
"max": 65535
@@ -3766,18 +4258,20 @@
}
},
"com.amazonaws.globalaccelerator#Protocol": {
- "type": "string",
- "traits": {
- "smithy.api#enum": [
- {
- "value": "TCP",
- "name": "TCP"
- },
- {
- "value": "UDP",
- "name": "UDP"
+ "type": "enum",
+ "members": {
+ "TCP": {
+ "target": "smithy.api#Unit",
+ "traits": {
+ "smithy.api#enumValue": "TCP"
}
- ]
+ },
+ "UDP": {
+ "target": "smithy.api#Unit",
+ "traits": {
+ "smithy.api#enumValue": "UDP"
+ }
+ }
}
},
"com.amazonaws.globalaccelerator#Protocols": {
@@ -3896,6 +4390,54 @@
}
}
},
+ "com.amazonaws.globalaccelerator#RemoveEndpoints": {
+ "type": "operation",
+ "input": {
+ "target": "com.amazonaws.globalaccelerator#RemoveEndpointsRequest"
+ },
+ "output": {
+ "target": "smithy.api#Unit"
+ },
+ "errors": [
+ {
+ "target": "com.amazonaws.globalaccelerator#AccessDeniedException"
+ },
+ {
+ "target": "com.amazonaws.globalaccelerator#EndpointGroupNotFoundException"
+ },
+ {
+ "target": "com.amazonaws.globalaccelerator#InternalServiceErrorException"
+ },
+ {
+ "target": "com.amazonaws.globalaccelerator#InvalidArgumentException"
+ },
+ {
+ "target": "com.amazonaws.globalaccelerator#TransactionInProgressException"
+ }
+ ],
+ "traits": {
+ "smithy.api#documentation": "Remove endpoints from an endpoint group.
\n\t\t The RemoveEndpoints
API operation is the recommended option for removing endpoints. The alternative is to remove\n\t\t\tendpoints by updating an endpoint group by using the \n\t\t\tUpdateEndpointGroup\n\t\t\tAPI operation. There are two advantages to using AddEndpoints
to remove endpoints instead:
\n\t\t \n - \n
It's more convenient, because you only need to specify the endpoints that you want to remove. With the \n\t\t\t\tUpdateEndpointGroup
API operation, you must specify all of the endpoints in the \n\t\t\t\tendpoint group except the ones that you want to remove from the group.
\n \n - \n
It's faster, because Global Accelerator doesn't need to resolve any endpoints. With the \n\t\t\t\tUpdateEndpointGroup
API operation, Global Accelerator must resolve all of the endpoints that\n\t\t\t\tremain in the group.
\n \n
"
+ }
+ },
+ "com.amazonaws.globalaccelerator#RemoveEndpointsRequest": {
+ "type": "structure",
+ "members": {
+ "EndpointIdentifiers": {
+ "target": "com.amazonaws.globalaccelerator#EndpointIdentifiers",
+ "traits": {
+ "smithy.api#documentation": "The identifiers of the endpoints that you want to remove.
",
+ "smithy.api#required": {}
+ }
+ },
+ "EndpointGroupArn": {
+ "target": "com.amazonaws.globalaccelerator#GenericString",
+ "traits": {
+ "smithy.api#documentation": "The Amazon Resource Name (ARN) of the endpoint group.
",
+ "smithy.api#required": {}
+ }
+ }
+ }
+ },
"com.amazonaws.globalaccelerator#ResourceArn": {
"type": "string",
"traits": {
@@ -4038,7 +4580,6 @@
"com.amazonaws.globalaccelerator#ThresholdCount": {
"type": "integer",
"traits": {
- "smithy.api#box": {},
"smithy.api#range": {
"min": 1,
"max": 10
@@ -4051,13 +4592,25 @@
"com.amazonaws.globalaccelerator#TrafficDialPercentage": {
"type": "float",
"traits": {
- "smithy.api#box": {},
"smithy.api#range": {
"min": 0,
"max": 100
}
}
},
+ "com.amazonaws.globalaccelerator#TransactionInProgressException": {
+ "type": "structure",
+ "members": {
+ "Message": {
+ "target": "com.amazonaws.globalaccelerator#ErrorMessage"
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "There's already a transaction in progress. Another transaction can't be processed.
",
+ "smithy.api#error": "client",
+ "smithy.api#httpError": 409
+ }
+ },
"com.amazonaws.globalaccelerator#UntagResource": {
"type": "operation",
"input": {