From ddea9dd52a97a12ad2cd977d5b08d2c9e814b324 Mon Sep 17 00:00:00 2001 From: awstools Date: Thu, 19 Sep 2024 18:18:29 +0000 Subject: [PATCH] feat(client-glue): This change is for releasing TestConnection api SDK model --- clients/client-glue/README.md | 8 + clients/client-glue/src/Glue.ts | 21 +++ clients/client-glue/src/GlueClient.ts | 3 + .../src/commands/TestConnectionCommand.ts | 144 +++++++++++++++++ .../UpdateSourceControlFromJobCommand.ts | 3 +- .../src/commands/UpdateTableCommand.ts | 3 +- clients/client-glue/src/commands/index.ts | 1 + clients/client-glue/src/models/models_2.ts | 148 ++++++++---------- clients/client-glue/src/models/models_3.ts | 87 +++++++++- .../client-glue/src/protocols/Aws_json1_1.ts | 44 +++++- codegen/sdk-codegen/aws-models/glue.json | 99 ++++++++++++ 11 files changed, 470 insertions(+), 91 deletions(-) create mode 100644 clients/client-glue/src/commands/TestConnectionCommand.ts diff --git a/clients/client-glue/README.md b/clients/client-glue/README.md index 92974bb731a14..1295b5edf26d7 100644 --- a/clients/client-glue/README.md +++ b/clients/client-glue/README.md @@ -1804,6 +1804,14 @@ TagResource [Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/glue/command/TagResourceCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-glue/Interface/TagResourceCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-glue/Interface/TagResourceCommandOutput/) + +
+ +TestConnection + + +[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/glue/command/TestConnectionCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-glue/Interface/TestConnectionCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-glue/Interface/TestConnectionCommandOutput/) +
diff --git a/clients/client-glue/src/Glue.ts b/clients/client-glue/src/Glue.ts index 350857eb8bbfd..e647992a2d8a7 100644 --- a/clients/client-glue/src/Glue.ts +++ b/clients/client-glue/src/Glue.ts @@ -882,6 +882,11 @@ import { StopWorkflowRunCommandOutput, } from "./commands/StopWorkflowRunCommand"; import { TagResourceCommand, TagResourceCommandInput, TagResourceCommandOutput } from "./commands/TagResourceCommand"; +import { + TestConnectionCommand, + TestConnectionCommandInput, + TestConnectionCommandOutput, +} from "./commands/TestConnectionCommand"; import { UntagResourceCommand, UntagResourceCommandInput, @@ -1197,6 +1202,7 @@ const commands = { StopTriggerCommand, StopWorkflowRunCommand, TagResourceCommand, + TestConnectionCommand, UntagResourceCommand, UpdateBlueprintCommand, UpdateClassifierCommand, @@ -4236,6 +4242,21 @@ export interface Glue { cb: (err: any, data?: TagResourceCommandOutput) => void ): void; + /** + * @see {@link TestConnectionCommand} + */ + testConnection(): Promise; + testConnection( + args: TestConnectionCommandInput, + options?: __HttpHandlerOptions + ): Promise; + testConnection(args: TestConnectionCommandInput, cb: (err: any, data?: TestConnectionCommandOutput) => void): void; + testConnection( + args: TestConnectionCommandInput, + options: __HttpHandlerOptions, + cb: (err: any, data?: TestConnectionCommandOutput) => void + ): void; + /** * @see {@link UntagResourceCommand} */ diff --git a/clients/client-glue/src/GlueClient.ts b/clients/client-glue/src/GlueClient.ts index afb51245d6129..4f2e6d485acbe 100644 --- a/clients/client-glue/src/GlueClient.ts +++ b/clients/client-glue/src/GlueClient.ts @@ -496,6 +496,7 @@ import { StopSessionCommandInput, StopSessionCommandOutput } from "./commands/St import { StopTriggerCommandInput, StopTriggerCommandOutput } from "./commands/StopTriggerCommand"; import { StopWorkflowRunCommandInput, StopWorkflowRunCommandOutput } from "./commands/StopWorkflowRunCommand"; import { TagResourceCommandInput, TagResourceCommandOutput } from "./commands/TagResourceCommand"; +import { TestConnectionCommandInput, TestConnectionCommandOutput } from "./commands/TestConnectionCommand"; import { UntagResourceCommandInput, UntagResourceCommandOutput } from "./commands/UntagResourceCommand"; import { UpdateBlueprintCommandInput, UpdateBlueprintCommandOutput } from "./commands/UpdateBlueprintCommand"; import { UpdateClassifierCommandInput, UpdateClassifierCommandOutput } from "./commands/UpdateClassifierCommand"; @@ -759,6 +760,7 @@ export type ServiceInputTypes = | StopTriggerCommandInput | StopWorkflowRunCommandInput | TagResourceCommandInput + | TestConnectionCommandInput | UntagResourceCommandInput | UpdateBlueprintCommandInput | UpdateClassifierCommandInput @@ -988,6 +990,7 @@ export type ServiceOutputTypes = | StopTriggerCommandOutput | StopWorkflowRunCommandOutput | TagResourceCommandOutput + | TestConnectionCommandOutput | UntagResourceCommandOutput | UpdateBlueprintCommandOutput | UpdateClassifierCommandOutput diff --git a/clients/client-glue/src/commands/TestConnectionCommand.ts b/clients/client-glue/src/commands/TestConnectionCommand.ts new file mode 100644 index 0000000000000..14cc24461f99f --- /dev/null +++ b/clients/client-glue/src/commands/TestConnectionCommand.ts @@ -0,0 +1,144 @@ +// smithy-typescript generated code +import { getEndpointPlugin } from "@smithy/middleware-endpoint"; +import { getSerdePlugin } from "@smithy/middleware-serde"; +import { Command as $Command } from "@smithy/smithy-client"; +import { MetadataBearer as __MetadataBearer } from "@smithy/types"; + +import { commonParams } from "../endpoint/EndpointParameters"; +import { GlueClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../GlueClient"; +import { TestConnectionRequest, TestConnectionResponse } from "../models/models_2"; +import { de_TestConnectionCommand, se_TestConnectionCommand } from "../protocols/Aws_json1_1"; + +/** + * @public + */ +export type { __MetadataBearer }; +export { $Command }; +/** + * @public + * + * The input for {@link TestConnectionCommand}. + */ +export interface TestConnectionCommandInput extends TestConnectionRequest {} +/** + * @public + * + * The output of {@link TestConnectionCommand}. + */ +export interface TestConnectionCommandOutput extends TestConnectionResponse, __MetadataBearer {} + +/** + *

Tests a connection to a service to validate the service credentials that you provide.

+ *

You can either provide an existing connection name or a TestConnectionInput for testing a non-existing connection input. Providing both at the same time will cause an error.

+ *

If the action is successful, the service sends back an HTTP 200 response.

+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { GlueClient, TestConnectionCommand } from "@aws-sdk/client-glue"; // ES Modules import + * // const { GlueClient, TestConnectionCommand } = require("@aws-sdk/client-glue"); // CommonJS import + * const client = new GlueClient(config); + * const input = { // TestConnectionRequest + * ConnectionName: "STRING_VALUE", + * TestConnectionInput: { // TestConnectionInput + * ConnectionType: "JDBC" || "SFTP" || "MONGODB" || "KAFKA" || "NETWORK" || "MARKETPLACE" || "CUSTOM" || "SALESFORCE" || "VIEW_VALIDATION_REDSHIFT" || "VIEW_VALIDATION_ATHENA", // required + * ConnectionProperties: { // ConnectionProperties // required + * "": "STRING_VALUE", + * }, + * AuthenticationConfiguration: { // AuthenticationConfigurationInput + * AuthenticationType: "BASIC" || "OAUTH2" || "CUSTOM", + * SecretArn: "STRING_VALUE", + * OAuth2Properties: { // OAuth2PropertiesInput + * OAuth2GrantType: "AUTHORIZATION_CODE" || "CLIENT_CREDENTIALS" || "JWT_BEARER", + * OAuth2ClientApplication: { // OAuth2ClientApplication + * UserManagedClientApplicationClientId: "STRING_VALUE", + * AWSManagedClientApplicationReference: "STRING_VALUE", + * }, + * TokenUrl: "STRING_VALUE", + * TokenUrlParametersMap: { // TokenUrlParametersMap + * "": "STRING_VALUE", + * }, + * AuthorizationCodeProperties: { // AuthorizationCodeProperties + * AuthorizationCode: "STRING_VALUE", + * RedirectUri: "STRING_VALUE", + * }, + * }, + * }, + * }, + * }; + * const command = new TestConnectionCommand(input); + * const response = await client.send(command); + * // {}; + * + * ``` + * + * @param TestConnectionCommandInput - {@link TestConnectionCommandInput} + * @returns {@link TestConnectionCommandOutput} + * @see {@link TestConnectionCommandInput} for command's `input` shape. + * @see {@link TestConnectionCommandOutput} for command's `response` shape. + * @see {@link GlueClientResolvedConfig | config} for GlueClient's `config` shape. + * + * @throws {@link AccessDeniedException} (client fault) + *

Access to a resource was denied.

+ * + * @throws {@link ConflictException} (client fault) + *

The CreatePartitions API was called on a table that has indexes enabled.

+ * + * @throws {@link EntityNotFoundException} (client fault) + *

A specified entity does not exist

+ * + * @throws {@link FederationSourceException} (client fault) + *

A federation source failed.

+ * + * @throws {@link GlueEncryptionException} (client fault) + *

An encryption operation failed.

+ * + * @throws {@link InternalServiceException} (server fault) + *

An internal service error occurred.

+ * + * @throws {@link InvalidInputException} (client fault) + *

The input provided was not valid.

+ * + * @throws {@link OperationTimeoutException} (client fault) + *

The operation timed out.

+ * + * @throws {@link ResourceNumberLimitExceededException} (client fault) + *

A resource numerical limit was exceeded.

+ * + * @throws {@link GlueServiceException} + *

Base exception class for all service exceptions from Glue service.

+ * + * @public + */ +export class TestConnectionCommand extends $Command + .classBuilder< + TestConnectionCommandInput, + TestConnectionCommandOutput, + GlueClientResolvedConfig, + ServiceInputTypes, + ServiceOutputTypes + >() + .ep(commonParams) + .m(function (this: any, Command: any, cs: any, config: GlueClientResolvedConfig, o: any) { + return [ + getSerdePlugin(config, this.serialize, this.deserialize), + getEndpointPlugin(config, Command.getEndpointParameterInstructions()), + ]; + }) + .s("AWSGlue", "TestConnection", {}) + .n("GlueClient", "TestConnectionCommand") + .f(void 0, void 0) + .ser(se_TestConnectionCommand) + .de(de_TestConnectionCommand) + .build() { + /** @internal type navigation helper, not in runtime. */ + protected declare static __types: { + api: { + input: TestConnectionRequest; + output: {}; + }; + sdk: { + input: TestConnectionCommandInput; + output: TestConnectionCommandOutput; + }; + }; +} diff --git a/clients/client-glue/src/commands/UpdateSourceControlFromJobCommand.ts b/clients/client-glue/src/commands/UpdateSourceControlFromJobCommand.ts index 724fa064a4303..150c1dbd8532d 100644 --- a/clients/client-glue/src/commands/UpdateSourceControlFromJobCommand.ts +++ b/clients/client-glue/src/commands/UpdateSourceControlFromJobCommand.ts @@ -6,7 +6,8 @@ import { MetadataBearer as __MetadataBearer } from "@smithy/types"; import { commonParams } from "../endpoint/EndpointParameters"; import { GlueClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../GlueClient"; -import { UpdateSourceControlFromJobRequest, UpdateSourceControlFromJobResponse } from "../models/models_2"; +import { UpdateSourceControlFromJobRequest } from "../models/models_2"; +import { UpdateSourceControlFromJobResponse } from "../models/models_3"; import { de_UpdateSourceControlFromJobCommand, se_UpdateSourceControlFromJobCommand } from "../protocols/Aws_json1_1"; /** diff --git a/clients/client-glue/src/commands/UpdateTableCommand.ts b/clients/client-glue/src/commands/UpdateTableCommand.ts index 312776606b10d..c4fa6194b09fa 100644 --- a/clients/client-glue/src/commands/UpdateTableCommand.ts +++ b/clients/client-glue/src/commands/UpdateTableCommand.ts @@ -6,8 +6,7 @@ import { MetadataBearer as __MetadataBearer } from "@smithy/types"; import { commonParams } from "../endpoint/EndpointParameters"; import { GlueClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../GlueClient"; -import { UpdateTableRequest } from "../models/models_2"; -import { UpdateTableResponse } from "../models/models_3"; +import { UpdateTableRequest, UpdateTableResponse } from "../models/models_3"; import { de_UpdateTableCommand, se_UpdateTableCommand } from "../protocols/Aws_json1_1"; /** diff --git a/clients/client-glue/src/commands/index.ts b/clients/client-glue/src/commands/index.ts index 73ea79fc8ec29..2b406d225aa58 100644 --- a/clients/client-glue/src/commands/index.ts +++ b/clients/client-glue/src/commands/index.ts @@ -199,6 +199,7 @@ export * from "./StopSessionCommand"; export * from "./StopTriggerCommand"; export * from "./StopWorkflowRunCommand"; export * from "./TagResourceCommand"; +export * from "./TestConnectionCommand"; export * from "./UntagResourceCommand"; export * from "./UpdateBlueprintCommand"; export * from "./UpdateClassifierCommand"; diff --git a/clients/client-glue/src/models/models_2.ts b/clients/client-glue/src/models/models_2.ts index 60417d6b57607..c3b1f64baa835 100644 --- a/clients/client-glue/src/models/models_2.ts +++ b/clients/client-glue/src/models/models_2.ts @@ -5,6 +5,7 @@ import { GlueServiceException as __BaseException } from "./GlueServiceException" import { AuditContext, + AuthenticationConfigurationInput, CrawlerTargets, CustomEntityType, DataSource, @@ -39,6 +40,8 @@ import { ColumnStatistics, Compatibility, ConnectionInput, + ConnectionPropertyKey, + ConnectionType, CsvHeaderOption, CsvSerdeOption, DatabaseInput, @@ -62,7 +65,6 @@ import { SchemaVersionStatus, Session, SortDirectionType, - TableInput, TaskStatusType, TransformEncryption, TransformParameters, @@ -6832,6 +6834,65 @@ export interface TagResourceRequest { */ export interface TagResourceResponse {} +/** + *

A structure that is used to specify testing a connection to a service.

+ * @public + */ +export interface TestConnectionInput { + /** + *

The type of connection to test. This operation is only available for the JDBC or SALESFORCE connection types.

+ * @public + */ + ConnectionType: ConnectionType | undefined; + + /** + *

The key-value pairs that define parameters for the connection.

+ *

JDBC connections use the following connection properties:

+ *
    + *
  • + *

    Required: All of (HOST, PORT, JDBC_ENGINE) or JDBC_CONNECTION_URL.

    + *
  • + *
  • + *

    Required: All of (USERNAME, PASSWORD) or SECRET_ID.

    + *
  • + *
  • + *

    Optional: JDBC_ENFORCE_SSL, CUSTOM_JDBC_CERT, CUSTOM_JDBC_CERT_STRING, SKIP_CUSTOM_JDBC_CERT_VALIDATION. These parameters are used to configure SSL with JDBC.

    + *
  • + *
+ *

SALESFORCE connections require the AuthenticationConfiguration member to be configured.

+ * @public + */ + ConnectionProperties: Partial> | undefined; + + /** + *

A structure containing the authentication configuration in the TestConnection request. Required for a connection to Salesforce using OAuth authentication.

+ * @public + */ + AuthenticationConfiguration?: AuthenticationConfigurationInput; +} + +/** + * @public + */ +export interface TestConnectionRequest { + /** + *

Optional. The name of the connection to test. If only name is provided, the operation will get the connection and use that for testing.

+ * @public + */ + ConnectionName?: string; + + /** + *

A structure that is used to specify testing a connection to a service.

+ * @public + */ + TestConnectionInput?: TestConnectionInput; +} + +/** + * @public + */ +export interface TestConnectionResponse {} + /** * @public */ @@ -7921,91 +7982,6 @@ export interface UpdateSourceControlFromJobRequest { AuthToken?: string; } -/** - * @public - */ -export interface UpdateSourceControlFromJobResponse { - /** - *

The name of the Glue job.

- * @public - */ - JobName?: string; -} - -/** - * @public - * @enum - */ -export const ViewUpdateAction = { - ADD: "ADD", - ADD_OR_REPLACE: "ADD_OR_REPLACE", - DROP: "DROP", - REPLACE: "REPLACE", -} as const; - -/** - * @public - */ -export type ViewUpdateAction = (typeof ViewUpdateAction)[keyof typeof ViewUpdateAction]; - -/** - * @public - */ -export interface UpdateTableRequest { - /** - *

The ID of the Data Catalog where the table resides. If none is provided, the Amazon Web Services account - * ID is used by default.

- * @public - */ - CatalogId?: string; - - /** - *

The name of the catalog database in which the table resides. For Hive - * compatibility, this name is entirely lowercase.

- * @public - */ - DatabaseName: string | undefined; - - /** - *

An updated TableInput object to define the metadata table - * in the catalog.

- * @public - */ - TableInput: TableInput | undefined; - - /** - *

By default, UpdateTable always creates an archived version of the table - * before updating it. However, if skipArchive is set to true, - * UpdateTable does not create the archived version.

- * @public - */ - SkipArchive?: boolean; - - /** - *

The transaction ID at which to update the table contents.

- * @public - */ - TransactionId?: string; - - /** - *

The version ID at which to update the table contents.

- * @public - */ - VersionId?: string; - - /** - *

The operation to be performed when updating the view.

- * @public - */ - ViewUpdateAction?: ViewUpdateAction; - - /** - *

A flag that can be set to true to ignore matching storage descriptor and subobject matching requirements.

- * @public - */ - Force?: boolean; -} - /** * @internal */ diff --git a/clients/client-glue/src/models/models_3.ts b/clients/client-glue/src/models/models_3.ts index db9a1644402c9..ce844a69ef3a3 100644 --- a/clients/client-glue/src/models/models_3.ts +++ b/clients/client-glue/src/models/models_3.ts @@ -91,7 +91,7 @@ import { WorkerType, } from "./models_0"; -import { Permission, ProfileConfiguration, TableIdentifier, UserDefinedFunctionInput } from "./models_1"; +import { Permission, ProfileConfiguration, TableIdentifier, TableInput, UserDefinedFunctionInput } from "./models_1"; import { ColumnRowFilter, @@ -102,6 +102,91 @@ import { ViewValidation, } from "./models_2"; +/** + * @public + */ +export interface UpdateSourceControlFromJobResponse { + /** + *

The name of the Glue job.

+ * @public + */ + JobName?: string; +} + +/** + * @public + * @enum + */ +export const ViewUpdateAction = { + ADD: "ADD", + ADD_OR_REPLACE: "ADD_OR_REPLACE", + DROP: "DROP", + REPLACE: "REPLACE", +} as const; + +/** + * @public + */ +export type ViewUpdateAction = (typeof ViewUpdateAction)[keyof typeof ViewUpdateAction]; + +/** + * @public + */ +export interface UpdateTableRequest { + /** + *

The ID of the Data Catalog where the table resides. If none is provided, the Amazon Web Services account + * ID is used by default.

+ * @public + */ + CatalogId?: string; + + /** + *

The name of the catalog database in which the table resides. For Hive + * compatibility, this name is entirely lowercase.

+ * @public + */ + DatabaseName: string | undefined; + + /** + *

An updated TableInput object to define the metadata table + * in the catalog.

+ * @public + */ + TableInput: TableInput | undefined; + + /** + *

By default, UpdateTable always creates an archived version of the table + * before updating it. However, if skipArchive is set to true, + * UpdateTable does not create the archived version.

+ * @public + */ + SkipArchive?: boolean; + + /** + *

The transaction ID at which to update the table contents.

+ * @public + */ + TransactionId?: string; + + /** + *

The version ID at which to update the table contents.

+ * @public + */ + VersionId?: string; + + /** + *

The operation to be performed when updating the view.

+ * @public + */ + ViewUpdateAction?: ViewUpdateAction; + + /** + *

A flag that can be set to true to ignore matching storage descriptor and subobject matching requirements.

+ * @public + */ + Force?: boolean; +} + /** * @public */ diff --git a/clients/client-glue/src/protocols/Aws_json1_1.ts b/clients/client-glue/src/protocols/Aws_json1_1.ts index 8124b288ab551..0780b0e1ffe62 100644 --- a/clients/client-glue/src/protocols/Aws_json1_1.ts +++ b/clients/client-glue/src/protocols/Aws_json1_1.ts @@ -469,6 +469,7 @@ import { StopSessionCommandInput, StopSessionCommandOutput } from "../commands/S import { StopTriggerCommandInput, StopTriggerCommandOutput } from "../commands/StopTriggerCommand"; import { StopWorkflowRunCommandInput, StopWorkflowRunCommandOutput } from "../commands/StopWorkflowRunCommand"; import { TagResourceCommandInput, TagResourceCommandOutput } from "../commands/TagResourceCommand"; +import { TestConnectionCommandInput, TestConnectionCommandOutput } from "../commands/TestConnectionCommand"; import { UntagResourceCommandInput, UntagResourceCommandOutput } from "../commands/UntagResourceCommand"; import { UpdateBlueprintCommandInput, UpdateBlueprintCommandOutput } from "../commands/UpdateBlueprintCommand"; import { UpdateClassifierCommandInput, UpdateClassifierCommandOutput } from "../commands/UpdateClassifierCommand"; @@ -1111,6 +1112,8 @@ import { SupportedDialect, TableAttributes, TagResourceRequest, + TestConnectionInput, + TestConnectionRequest, TimestampFilter, TransformFilterCriteria, TransformSortCriteria, @@ -1137,7 +1140,6 @@ import { UpdateRegistryInput, UpdateSchemaInput, UpdateSourceControlFromJobRequest, - UpdateTableRequest, UpdateXMLClassifierRequest, UsageProfileDefinition, UserDefinedFunction, @@ -1167,6 +1169,7 @@ import { TriggerUpdate, UpdateJobRequest, UpdateTableOptimizerRequest, + UpdateTableRequest, UpdateTriggerRequest, UpdateUsageProfileRequest, UpdateUserDefinedFunctionRequest, @@ -3770,6 +3773,19 @@ export const se_TagResourceCommand = async ( return buildHttpRpcRequest(context, headers, "/", undefined, body); }; +/** + * serializeAws_json1_1TestConnectionCommand + */ +export const se_TestConnectionCommand = async ( + input: TestConnectionCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const headers: __HeaderBag = sharedHeaders("TestConnection"); + let body: any; + body = JSON.stringify(_json(input)); + return buildHttpRpcRequest(context, headers, "/", undefined, body); +}; + /** * serializeAws_json1_1UntagResourceCommand */ @@ -8082,6 +8098,26 @@ export const de_TagResourceCommand = async ( return response; }; +/** + * deserializeAws_json1_1TestConnectionCommand + */ +export const de_TestConnectionCommand = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + if (output.statusCode >= 300) { + return de_CommandError(output, context); + } + const data: any = await parseBody(output.body, context); + let contents: any = {}; + contents = _json(data); + const response: TestConnectionCommandOutput = { + $metadata: deserializeMetadata(output), + ...contents, + }; + return response; +}; + /** * deserializeAws_json1_1UntagResourceCommand */ @@ -11210,6 +11246,10 @@ const se_TaskRunFilterCriteria = (input: TaskRunFilterCriteria, context: __Serde // se_TaskRunSortCriteria omitted. +// se_TestConnectionInput omitted. + +// se_TestConnectionRequest omitted. + /** * serializeAws_json1_1TimestampFilter */ @@ -15131,6 +15171,8 @@ const de_TaskRunList = (output: any, context: __SerdeContext): TaskRun[] => { // de_TaskRunProperties omitted. +// de_TestConnectionResponse omitted. + // de_ThrottlingException omitted. /** diff --git a/codegen/sdk-codegen/aws-models/glue.json b/codegen/sdk-codegen/aws-models/glue.json index c95fc7b651b5a..a2e31dd62d562 100644 --- a/codegen/sdk-codegen/aws-models/glue.json +++ b/codegen/sdk-codegen/aws-models/glue.json @@ -633,6 +633,9 @@ { "target": "com.amazonaws.glue#TagResource" }, + { + "target": "com.amazonaws.glue#TestConnection" + }, { "target": "com.amazonaws.glue#UntagResource" }, @@ -36229,6 +36232,102 @@ } } }, + "com.amazonaws.glue#TestConnection": { + "type": "operation", + "input": { + "target": "com.amazonaws.glue#TestConnectionRequest" + }, + "output": { + "target": "com.amazonaws.glue#TestConnectionResponse" + }, + "errors": [ + { + "target": "com.amazonaws.glue#AccessDeniedException" + }, + { + "target": "com.amazonaws.glue#ConflictException" + }, + { + "target": "com.amazonaws.glue#EntityNotFoundException" + }, + { + "target": "com.amazonaws.glue#FederationSourceException" + }, + { + "target": "com.amazonaws.glue#GlueEncryptionException" + }, + { + "target": "com.amazonaws.glue#InternalServiceException" + }, + { + "target": "com.amazonaws.glue#InvalidInputException" + }, + { + "target": "com.amazonaws.glue#OperationTimeoutException" + }, + { + "target": "com.amazonaws.glue#ResourceNumberLimitExceededException" + } + ], + "traits": { + "smithy.api#documentation": "

Tests a connection to a service to validate the service credentials that you provide.

\n

You can either provide an existing connection name or a TestConnectionInput for testing a non-existing connection input. Providing both at the same time will cause an error.

\n

If the action is successful, the service sends back an HTTP 200 response.

" + } + }, + "com.amazonaws.glue#TestConnectionInput": { + "type": "structure", + "members": { + "ConnectionType": { + "target": "com.amazonaws.glue#ConnectionType", + "traits": { + "smithy.api#documentation": "

The type of connection to test. This operation is only available for the JDBC or SALESFORCE connection types.

", + "smithy.api#required": {} + } + }, + "ConnectionProperties": { + "target": "com.amazonaws.glue#ConnectionProperties", + "traits": { + "smithy.api#documentation": "

The key-value pairs that define parameters for the connection.

\n

JDBC connections use the following connection properties:

\n
    \n
  • \n

    Required: All of (HOST, PORT, JDBC_ENGINE) or JDBC_CONNECTION_URL.

    \n
  • \n
  • \n

    Required: All of (USERNAME, PASSWORD) or SECRET_ID.

    \n
  • \n
  • \n

    Optional: JDBC_ENFORCE_SSL, CUSTOM_JDBC_CERT, CUSTOM_JDBC_CERT_STRING, SKIP_CUSTOM_JDBC_CERT_VALIDATION. These parameters are used to configure SSL with JDBC.

    \n
  • \n
\n

SALESFORCE connections require the AuthenticationConfiguration member to be configured.

", + "smithy.api#required": {} + } + }, + "AuthenticationConfiguration": { + "target": "com.amazonaws.glue#AuthenticationConfigurationInput", + "traits": { + "smithy.api#documentation": "

A structure containing the authentication configuration in the TestConnection request. Required for a connection to Salesforce using OAuth authentication.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

A structure that is used to specify testing a connection to a service.

" + } + }, + "com.amazonaws.glue#TestConnectionRequest": { + "type": "structure", + "members": { + "ConnectionName": { + "target": "com.amazonaws.glue#NameString", + "traits": { + "smithy.api#documentation": "

Optional. The name of the connection to test. If only name is provided, the operation will get the connection and use that for testing.

" + } + }, + "TestConnectionInput": { + "target": "com.amazonaws.glue#TestConnectionInput", + "traits": { + "smithy.api#documentation": "

A structure that is used to specify testing a connection to a service.

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.glue#TestConnectionResponse": { + "type": "structure", + "members": {}, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.glue#ThrottlingException": { "type": "structure", "members": {