class CfnConnectionTypePropsMixin (mixin)
| Language | Type name |
|---|---|
.NET | Amazon.CDK.CfnPropertyMixins.AWS.Glue.CfnConnectionTypePropsMixin |
Go | github.com/aws/aws-cdk-go/awscdkcfnpropertymixins/v2/awsglue#CfnConnectionTypePropsMixin |
Java | software.amazon.awscdk.cfnpropertymixins.services.glue.CfnConnectionTypePropsMixin |
Python | aws_cdk.cfn_property_mixins.aws_glue.CfnConnectionTypePropsMixin |
TypeScript | @aws-cdk/cfn-property-mixins » aws_glue » CfnConnectionTypePropsMixin |
Implements
IMixin
Extends
Mixin
Registers a custom connection type in Glue based on the configuration provided.
This enables customers to configure custom connectors for any data source with REST-based APIs.
See also: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-connectiontype.html
Example
// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import { aws_glue as glue } from '@aws-cdk/cfn-property-mixins';
import * as cdk from 'aws-cdk-lib';
declare const mergeStrategy: cdk.IMergeStrategy;
const cfnConnectionTypePropsMixin = new glue.CfnConnectionTypePropsMixin({
connectionProperties: {
additionalRequestParameters: [{
allowedValues: ['allowedValues'],
defaultValue: 'defaultValue',
keyOverride: 'keyOverride',
name: 'name',
propertyLocation: 'propertyLocation',
propertyType: 'propertyType',
required: false,
}],
url: {
allowedValues: ['allowedValues'],
defaultValue: 'defaultValue',
keyOverride: 'keyOverride',
name: 'name',
propertyLocation: 'propertyLocation',
propertyType: 'propertyType',
required: false,
},
},
connectionType: 'connectionType',
connectorAuthenticationConfiguration: {
authenticationTypes: ['authenticationTypes'],
basicAuthenticationProperties: {
password: {
keyOverride: 'keyOverride',
name: 'name',
propertyLocation: 'propertyLocation',
propertyType: 'propertyType',
required: false,
},
username: {
keyOverride: 'keyOverride',
name: 'name',
propertyLocation: 'propertyLocation',
propertyType: 'propertyType',
required: false,
},
},
customAuthenticationProperties: {
authenticationParameters: [{
keyOverride: 'keyOverride',
name: 'name',
propertyLocation: 'propertyLocation',
propertyType: 'propertyType',
required: false,
}],
},
oAuth2Properties: {
authorizationCodeProperties: {
authorizationCode: {
allowedValues: ['allowedValues'],
defaultValue: 'defaultValue',
keyOverride: 'keyOverride',
name: 'name',
propertyLocation: 'propertyLocation',
propertyType: 'propertyType',
required: false,
},
authorizationCodeUrl: {
allowedValues: ['allowedValues'],
defaultValue: 'defaultValue',
keyOverride: 'keyOverride',
name: 'name',
propertyLocation: 'propertyLocation',
propertyType: 'propertyType',
required: false,
},
clientId: {
keyOverride: 'keyOverride',
name: 'name',
propertyLocation: 'propertyLocation',
propertyType: 'propertyType',
required: false,
},
clientSecret: {
keyOverride: 'keyOverride',
name: 'name',
propertyLocation: 'propertyLocation',
propertyType: 'propertyType',
required: false,
},
contentType: 'contentType',
prompt: {
allowedValues: ['allowedValues'],
defaultValue: 'defaultValue',
keyOverride: 'keyOverride',
name: 'name',
propertyLocation: 'propertyLocation',
propertyType: 'propertyType',
required: false,
},
redirectUri: {
allowedValues: ['allowedValues'],
defaultValue: 'defaultValue',
keyOverride: 'keyOverride',
name: 'name',
propertyLocation: 'propertyLocation',
propertyType: 'propertyType',
required: false,
},
requestMethod: 'requestMethod',
scope: {
allowedValues: ['allowedValues'],
defaultValue: 'defaultValue',
keyOverride: 'keyOverride',
name: 'name',
propertyLocation: 'propertyLocation',
propertyType: 'propertyType',
required: false,
},
tokenUrl: {
allowedValues: ['allowedValues'],
defaultValue: 'defaultValue',
keyOverride: 'keyOverride',
name: 'name',
propertyLocation: 'propertyLocation',
propertyType: 'propertyType',
required: false,
},
tokenUrlParameters: [{
allowedValues: ['allowedValues'],
defaultValue: 'defaultValue',
keyOverride: 'keyOverride',
name: 'name',
propertyLocation: 'propertyLocation',
propertyType: 'propertyType',
required: false,
}],
},
clientCredentialsProperties: {
clientId: {
keyOverride: 'keyOverride',
name: 'name',
propertyLocation: 'propertyLocation',
propertyType: 'propertyType',
required: false,
},
clientSecret: {
keyOverride: 'keyOverride',
name: 'name',
propertyLocation: 'propertyLocation',
propertyType: 'propertyType',
required: false,
},
contentType: 'contentType',
requestMethod: 'requestMethod',
scope: {
allowedValues: ['allowedValues'],
defaultValue: 'defaultValue',
keyOverride: 'keyOverride',
name: 'name',
propertyLocation: 'propertyLocation',
propertyType: 'propertyType',
required: false,
},
tokenUrl: {
allowedValues: ['allowedValues'],
defaultValue: 'defaultValue',
keyOverride: 'keyOverride',
name: 'name',
propertyLocation: 'propertyLocation',
propertyType: 'propertyType',
required: false,
},
tokenUrlParameters: [{
allowedValues: ['allowedValues'],
defaultValue: 'defaultValue',
keyOverride: 'keyOverride',
name: 'name',
propertyLocation: 'propertyLocation',
propertyType: 'propertyType',
required: false,
}],
},
jwtBearerProperties: {
contentType: 'contentType',
jwtToken: {
keyOverride: 'keyOverride',
name: 'name',
propertyLocation: 'propertyLocation',
propertyType: 'propertyType',
required: false,
},
requestMethod: 'requestMethod',
tokenUrl: {
allowedValues: ['allowedValues'],
defaultValue: 'defaultValue',
keyOverride: 'keyOverride',
name: 'name',
propertyLocation: 'propertyLocation',
propertyType: 'propertyType',
required: false,
},
tokenUrlParameters: [{
allowedValues: ['allowedValues'],
defaultValue: 'defaultValue',
keyOverride: 'keyOverride',
name: 'name',
propertyLocation: 'propertyLocation',
propertyType: 'propertyType',
required: false,
}],
},
oAuth2GrantType: 'oAuth2GrantType',
},
},
description: 'description',
integrationType: 'integrationType',
restConfiguration: {
entityConfigurations: {
entityConfigurationsKey: {
schema: {
schemaKey: {
fieldDataType: 'fieldDataType',
filterOverrides: {
betweenConfiguration: {
highBoundKey: 'highBoundKey',
lowBoundKey: 'lowBoundKey',
template: 'template',
},
dateTimeFormat: 'dateTimeFormat',
fieldName: 'fieldName',
operatorMappings: {
operatorMappingsKey: 'operatorMappings',
},
},
isNullable: false,
isOrderable: false,
isPartitionable: false,
isQueryable: false,
name: 'name',
responseDateFormat: 'responseDateFormat',
},
},
sourceConfiguration: {
filterConfiguration: {
betweenConfiguration: {
highBoundKey: 'highBoundKey',
lowBoundKey: 'lowBoundKey',
template: 'template',
},
dateTimeFormat: 'dateTimeFormat',
filterMode: 'filterMode',
filterStringConfiguration: {
queryParameterName: 'queryParameterName',
quoteCharacter: 'quoteCharacter',
quoteStringValues: false,
},
operatorMappings: {
operatorMappingsKey: 'operatorMappings',
},
stripQuotes: false,
},
paginationConfiguration: {
cursorConfiguration: {
limitParameter: {
defaultValue: 'defaultValue',
key: 'key',
propertyLocation: 'propertyLocation',
value: {
contentPath: 'contentPath',
headerKey: 'headerKey',
},
},
nextPage: {
defaultValue: 'defaultValue',
key: 'key',
propertyLocation: 'propertyLocation',
value: {
contentPath: 'contentPath',
headerKey: 'headerKey',
},
},
},
offsetConfiguration: {
limitParameter: {
defaultValue: 'defaultValue',
key: 'key',
propertyLocation: 'propertyLocation',
value: {
contentPath: 'contentPath',
headerKey: 'headerKey',
},
},
offsetParameter: {
defaultValue: 'defaultValue',
key: 'key',
propertyLocation: 'propertyLocation',
value: {
contentPath: 'contentPath',
headerKey: 'headerKey',
},
},
},
},
requestMethod: 'requestMethod',
requestParameters: [{
allowedValues: ['allowedValues'],
defaultValue: 'defaultValue',
keyOverride: 'keyOverride',
name: 'name',
propertyLocation: 'propertyLocation',
propertyType: 'propertyType',
required: false,
}],
requestPath: 'requestPath',
responseConfiguration: {
errorPath: 'errorPath',
resultPath: 'resultPath',
},
},
},
},
globalSourceConfiguration: {
filterConfiguration: {
betweenConfiguration: {
highBoundKey: 'highBoundKey',
lowBoundKey: 'lowBoundKey',
template: 'template',
},
dateTimeFormat: 'dateTimeFormat',
filterMode: 'filterMode',
filterStringConfiguration: {
queryParameterName: 'queryParameterName',
quoteCharacter: 'quoteCharacter',
quoteStringValues: false,
},
operatorMappings: {
operatorMappingsKey: 'operatorMappings',
},
stripQuotes: false,
},
paginationConfiguration: {
cursorConfiguration: {
limitParameter: {
defaultValue: 'defaultValue',
key: 'key',
propertyLocation: 'propertyLocation',
value: {
contentPath: 'contentPath',
headerKey: 'headerKey',
},
},
nextPage: {
defaultValue: 'defaultValue',
key: 'key',
propertyLocation: 'propertyLocation',
value: {
contentPath: 'contentPath',
headerKey: 'headerKey',
},
},
},
offsetConfiguration: {
limitParameter: {
defaultValue: 'defaultValue',
key: 'key',
propertyLocation: 'propertyLocation',
value: {
contentPath: 'contentPath',
headerKey: 'headerKey',
},
},
offsetParameter: {
defaultValue: 'defaultValue',
key: 'key',
propertyLocation: 'propertyLocation',
value: {
contentPath: 'contentPath',
headerKey: 'headerKey',
},
},
},
},
requestMethod: 'requestMethod',
requestParameters: [{
allowedValues: ['allowedValues'],
defaultValue: 'defaultValue',
keyOverride: 'keyOverride',
name: 'name',
propertyLocation: 'propertyLocation',
propertyType: 'propertyType',
required: false,
}],
requestPath: 'requestPath',
responseConfiguration: {
errorPath: 'errorPath',
resultPath: 'resultPath',
},
},
validationEndpointConfiguration: {
requestMethod: 'requestMethod',
requestPath: 'requestPath',
},
},
tags: [{
key: 'key',
value: 'value',
}],
}, /* all optional props */ {
strategy: mergeStrategy,
});
Initializer
new CfnConnectionTypePropsMixin(props: CfnConnectionTypeMixinProps, options?: CfnPropertyMixinOptions)
Parameters
- props
Cfn— L1 properties to apply.Connection Type Mixin Props - options
Cfn— Mixin options.Property Mixin Options
Create a mixin to apply properties to AWS::Glue::ConnectionType.
Properties
| Name | Type | Description |
|---|---|---|
| props | Cfn | |
| strategy | IMerge | |
| static CFN_PROPERTY_KEYS | string[] |
props
Type:
Cfn
strategy
Type:
IMerge
static CFN_PROPERTY_KEYS
Type:
string[]
Methods
| Name | Description |
|---|---|
| apply | Apply the mixin properties to the construct. |
| supports(construct) | Check if this mixin supports the given construct. |
applyTo(construct)
public applyTo(construct: IConstruct): void
Parameters
- construct
IConstruct
Apply the mixin properties to the construct.
supports(construct)
public supports(construct: IConstruct): boolean
Parameters
- construct
IConstruct
Returns
boolean
Check if this mixin supports the given construct.

.NET
Go
Java
Python
TypeScript