@cdktf/provider-aws
Version:
Prebuilt aws Provider for Terraform CDK (cdktf)
1,297 lines • 174 kB
JavaScript
"use strict";
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;
Object.defineProperty(exports, "__esModule", { value: true });
exports.GlueTrigger = exports.GlueTriggerTimeoutsOutputReference = exports.GlueTriggerPredicateOutputReference = exports.GlueTriggerPredicateConditionsList = exports.GlueTriggerPredicateConditionsOutputReference = exports.GlueTriggerEventBatchingConditionList = exports.GlueTriggerEventBatchingConditionOutputReference = exports.GlueTriggerActionsList = exports.GlueTriggerActionsOutputReference = exports.GlueTriggerActionsNotificationPropertyOutputReference = void 0;
exports.glueTriggerActionsNotificationPropertyToTerraform = glueTriggerActionsNotificationPropertyToTerraform;
exports.glueTriggerActionsNotificationPropertyToHclTerraform = glueTriggerActionsNotificationPropertyToHclTerraform;
exports.glueTriggerActionsToTerraform = glueTriggerActionsToTerraform;
exports.glueTriggerActionsToHclTerraform = glueTriggerActionsToHclTerraform;
exports.glueTriggerEventBatchingConditionToTerraform = glueTriggerEventBatchingConditionToTerraform;
exports.glueTriggerEventBatchingConditionToHclTerraform = glueTriggerEventBatchingConditionToHclTerraform;
exports.glueTriggerPredicateConditionsToTerraform = glueTriggerPredicateConditionsToTerraform;
exports.glueTriggerPredicateConditionsToHclTerraform = glueTriggerPredicateConditionsToHclTerraform;
exports.glueTriggerPredicateToTerraform = glueTriggerPredicateToTerraform;
exports.glueTriggerPredicateToHclTerraform = glueTriggerPredicateToHclTerraform;
exports.glueTriggerTimeoutsToTerraform = glueTriggerTimeoutsToTerraform;
exports.glueTriggerTimeoutsToHclTerraform = glueTriggerTimeoutsToHclTerraform;
const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
const cdktf = require("cdktf");
function glueTriggerActionsNotificationPropertyToTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
return {
notify_delay_after: cdktf.numberToTerraform(struct.notifyDelayAfter),
};
}
function glueTriggerActionsNotificationPropertyToHclTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
const attrs = {
notify_delay_after: {
value: cdktf.numberToHclTerraform(struct.notifyDelayAfter),
isBlock: false,
type: "simple",
storageClassType: "number",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
class GlueTriggerActionsNotificationPropertyOutputReference extends cdktf.ComplexObject {
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
*/
constructor(terraformResource, terraformAttribute) {
super(terraformResource, terraformAttribute, false, 0);
this.isEmptyObject = false;
}
get internalValue() {
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
if (this._notifyDelayAfter !== undefined) {
hasAnyValues = true;
internalValueResult.notifyDelayAfter = this._notifyDelayAfter;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._notifyDelayAfter = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._notifyDelayAfter = value.notifyDelayAfter;
}
}
get notifyDelayAfter() {
return this.getNumberAttribute('notify_delay_after');
}
set notifyDelayAfter(value) {
this._notifyDelayAfter = value;
}
resetNotifyDelayAfter() {
this._notifyDelayAfter = undefined;
}
// Temporarily expose input value. Use with caution.
get notifyDelayAfterInput() {
return this._notifyDelayAfter;
}
}
exports.GlueTriggerActionsNotificationPropertyOutputReference = GlueTriggerActionsNotificationPropertyOutputReference;
_a = JSII_RTTI_SYMBOL_1;
GlueTriggerActionsNotificationPropertyOutputReference[_a] = { fqn: "@cdktf/provider-aws.glueTrigger.GlueTriggerActionsNotificationPropertyOutputReference", version: "21.22.1" };
function glueTriggerActionsToTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
return {
arguments: cdktf.hashMapper(cdktf.stringToTerraform)(struct.arguments),
crawler_name: cdktf.stringToTerraform(struct.crawlerName),
job_name: cdktf.stringToTerraform(struct.jobName),
security_configuration: cdktf.stringToTerraform(struct.securityConfiguration),
timeout: cdktf.numberToTerraform(struct.timeout),
notification_property: glueTriggerActionsNotificationPropertyToTerraform(struct.notificationProperty),
};
}
function glueTriggerActionsToHclTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
const attrs = {
arguments: {
value: cdktf.hashMapperHcl(cdktf.stringToHclTerraform)(struct.arguments),
isBlock: false,
type: "map",
storageClassType: "stringMap",
},
crawler_name: {
value: cdktf.stringToHclTerraform(struct.crawlerName),
isBlock: false,
type: "simple",
storageClassType: "string",
},
job_name: {
value: cdktf.stringToHclTerraform(struct.jobName),
isBlock: false,
type: "simple",
storageClassType: "string",
},
security_configuration: {
value: cdktf.stringToHclTerraform(struct.securityConfiguration),
isBlock: false,
type: "simple",
storageClassType: "string",
},
timeout: {
value: cdktf.numberToHclTerraform(struct.timeout),
isBlock: false,
type: "simple",
storageClassType: "number",
},
notification_property: {
value: glueTriggerActionsNotificationPropertyToHclTerraform(struct.notificationProperty),
isBlock: true,
type: "list",
storageClassType: "GlueTriggerActionsNotificationPropertyList",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
class GlueTriggerActionsOutputReference extends cdktf.ComplexObject {
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
* @param complexObjectIndex the index of this item in the list
* @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
*/
constructor(terraformResource, terraformAttribute, complexObjectIndex, complexObjectIsFromSet) {
super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex);
this.isEmptyObject = false;
// notification_property - computed: false, optional: true, required: false
this._notificationProperty = new GlueTriggerActionsNotificationPropertyOutputReference(this, "notification_property");
}
get internalValue() {
if (this.resolvableValue) {
return this.resolvableValue;
}
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
if (this._arguments !== undefined) {
hasAnyValues = true;
internalValueResult.arguments = this._arguments;
}
if (this._crawlerName !== undefined) {
hasAnyValues = true;
internalValueResult.crawlerName = this._crawlerName;
}
if (this._jobName !== undefined) {
hasAnyValues = true;
internalValueResult.jobName = this._jobName;
}
if (this._securityConfiguration !== undefined) {
hasAnyValues = true;
internalValueResult.securityConfiguration = this._securityConfiguration;
}
if (this._timeout !== undefined) {
hasAnyValues = true;
internalValueResult.timeout = this._timeout;
}
if (this._notificationProperty?.internalValue !== undefined) {
hasAnyValues = true;
internalValueResult.notificationProperty = this._notificationProperty?.internalValue;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this.resolvableValue = undefined;
this._arguments = undefined;
this._crawlerName = undefined;
this._jobName = undefined;
this._securityConfiguration = undefined;
this._timeout = undefined;
this._notificationProperty.internalValue = undefined;
}
else if (cdktf.Tokenization.isResolvable(value)) {
this.isEmptyObject = false;
this.resolvableValue = value;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this.resolvableValue = undefined;
this._arguments = value.arguments;
this._crawlerName = value.crawlerName;
this._jobName = value.jobName;
this._securityConfiguration = value.securityConfiguration;
this._timeout = value.timeout;
this._notificationProperty.internalValue = value.notificationProperty;
}
}
get arguments() {
return this.getStringMapAttribute('arguments');
}
set arguments(value) {
this._arguments = value;
}
resetArguments() {
this._arguments = undefined;
}
// Temporarily expose input value. Use with caution.
get argumentsInput() {
return this._arguments;
}
get crawlerName() {
return this.getStringAttribute('crawler_name');
}
set crawlerName(value) {
this._crawlerName = value;
}
resetCrawlerName() {
this._crawlerName = undefined;
}
// Temporarily expose input value. Use with caution.
get crawlerNameInput() {
return this._crawlerName;
}
get jobName() {
return this.getStringAttribute('job_name');
}
set jobName(value) {
this._jobName = value;
}
resetJobName() {
this._jobName = undefined;
}
// Temporarily expose input value. Use with caution.
get jobNameInput() {
return this._jobName;
}
get securityConfiguration() {
return this.getStringAttribute('security_configuration');
}
set securityConfiguration(value) {
this._securityConfiguration = value;
}
resetSecurityConfiguration() {
this._securityConfiguration = undefined;
}
// Temporarily expose input value. Use with caution.
get securityConfigurationInput() {
return this._securityConfiguration;
}
get timeout() {
return this.getNumberAttribute('timeout');
}
set timeout(value) {
this._timeout = value;
}
resetTimeout() {
this._timeout = undefined;
}
// Temporarily expose input value. Use with caution.
get timeoutInput() {
return this._timeout;
}
get notificationProperty() {
return this._notificationProperty;
}
putNotificationProperty(value) {
this._notificationProperty.internalValue = value;
}
resetNotificationProperty() {
this._notificationProperty.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get notificationPropertyInput() {
return this._notificationProperty.internalValue;
}
}
exports.GlueTriggerActionsOutputReference = GlueTriggerActionsOutputReference;
_b = JSII_RTTI_SYMBOL_1;
GlueTriggerActionsOutputReference[_b] = { fqn: "@cdktf/provider-aws.glueTrigger.GlueTriggerActionsOutputReference", version: "21.22.1" };
class GlueTriggerActionsList extends cdktf.ComplexList {
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
* @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
*/
constructor(terraformResource, terraformAttribute, wrapsSet) {
super(terraformResource, terraformAttribute, wrapsSet);
this.terraformResource = terraformResource;
this.terraformAttribute = terraformAttribute;
this.wrapsSet = wrapsSet;
}
/**
* @param index the index of the item to return
*/
get(index) {
return new GlueTriggerActionsOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet);
}
}
exports.GlueTriggerActionsList = GlueTriggerActionsList;
_c = JSII_RTTI_SYMBOL_1;
GlueTriggerActionsList[_c] = { fqn: "@cdktf/provider-aws.glueTrigger.GlueTriggerActionsList", version: "21.22.1" };
function glueTriggerEventBatchingConditionToTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
return {
batch_size: cdktf.numberToTerraform(struct.batchSize),
batch_window: cdktf.numberToTerraform(struct.batchWindow),
};
}
function glueTriggerEventBatchingConditionToHclTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
const attrs = {
batch_size: {
value: cdktf.numberToHclTerraform(struct.batchSize),
isBlock: false,
type: "simple",
storageClassType: "number",
},
batch_window: {
value: cdktf.numberToHclTerraform(struct.batchWindow),
isBlock: false,
type: "simple",
storageClassType: "number",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
class GlueTriggerEventBatchingConditionOutputReference extends cdktf.ComplexObject {
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
* @param complexObjectIndex the index of this item in the list
* @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
*/
constructor(terraformResource, terraformAttribute, complexObjectIndex, complexObjectIsFromSet) {
super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex);
this.isEmptyObject = false;
}
get internalValue() {
if (this.resolvableValue) {
return this.resolvableValue;
}
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
if (this._batchSize !== undefined) {
hasAnyValues = true;
internalValueResult.batchSize = this._batchSize;
}
if (this._batchWindow !== undefined) {
hasAnyValues = true;
internalValueResult.batchWindow = this._batchWindow;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this.resolvableValue = undefined;
this._batchSize = undefined;
this._batchWindow = undefined;
}
else if (cdktf.Tokenization.isResolvable(value)) {
this.isEmptyObject = false;
this.resolvableValue = value;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this.resolvableValue = undefined;
this._batchSize = value.batchSize;
this._batchWindow = value.batchWindow;
}
}
get batchSize() {
return this.getNumberAttribute('batch_size');
}
set batchSize(value) {
this._batchSize = value;
}
// Temporarily expose input value. Use with caution.
get batchSizeInput() {
return this._batchSize;
}
get batchWindow() {
return this.getNumberAttribute('batch_window');
}
set batchWindow(value) {
this._batchWindow = value;
}
resetBatchWindow() {
this._batchWindow = undefined;
}
// Temporarily expose input value. Use with caution.
get batchWindowInput() {
return this._batchWindow;
}
}
exports.GlueTriggerEventBatchingConditionOutputReference = GlueTriggerEventBatchingConditionOutputReference;
_d = JSII_RTTI_SYMBOL_1;
GlueTriggerEventBatchingConditionOutputReference[_d] = { fqn: "@cdktf/provider-aws.glueTrigger.GlueTriggerEventBatchingConditionOutputReference", version: "21.22.1" };
class GlueTriggerEventBatchingConditionList extends cdktf.ComplexList {
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
* @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
*/
constructor(terraformResource, terraformAttribute, wrapsSet) {
super(terraformResource, terraformAttribute, wrapsSet);
this.terraformResource = terraformResource;
this.terraformAttribute = terraformAttribute;
this.wrapsSet = wrapsSet;
}
/**
* @param index the index of the item to return
*/
get(index) {
return new GlueTriggerEventBatchingConditionOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet);
}
}
exports.GlueTriggerEventBatchingConditionList = GlueTriggerEventBatchingConditionList;
_e = JSII_RTTI_SYMBOL_1;
GlueTriggerEventBatchingConditionList[_e] = { fqn: "@cdktf/provider-aws.glueTrigger.GlueTriggerEventBatchingConditionList", version: "21.22.1" };
function glueTriggerPredicateConditionsToTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
return {
crawl_state: cdktf.stringToTerraform(struct.crawlState),
crawler_name: cdktf.stringToTerraform(struct.crawlerName),
job_name: cdktf.stringToTerraform(struct.jobName),
logical_operator: cdktf.stringToTerraform(struct.logicalOperator),
state: cdktf.stringToTerraform(struct.state),
};
}
function glueTriggerPredicateConditionsToHclTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
const attrs = {
crawl_state: {
value: cdktf.stringToHclTerraform(struct.crawlState),
isBlock: false,
type: "simple",
storageClassType: "string",
},
crawler_name: {
value: cdktf.stringToHclTerraform(struct.crawlerName),
isBlock: false,
type: "simple",
storageClassType: "string",
},
job_name: {
value: cdktf.stringToHclTerraform(struct.jobName),
isBlock: false,
type: "simple",
storageClassType: "string",
},
logical_operator: {
value: cdktf.stringToHclTerraform(struct.logicalOperator),
isBlock: false,
type: "simple",
storageClassType: "string",
},
state: {
value: cdktf.stringToHclTerraform(struct.state),
isBlock: false,
type: "simple",
storageClassType: "string",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
class GlueTriggerPredicateConditionsOutputReference extends cdktf.ComplexObject {
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
* @param complexObjectIndex the index of this item in the list
* @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
*/
constructor(terraformResource, terraformAttribute, complexObjectIndex, complexObjectIsFromSet) {
super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex);
this.isEmptyObject = false;
}
get internalValue() {
if (this.resolvableValue) {
return this.resolvableValue;
}
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
if (this._crawlState !== undefined) {
hasAnyValues = true;
internalValueResult.crawlState = this._crawlState;
}
if (this._crawlerName !== undefined) {
hasAnyValues = true;
internalValueResult.crawlerName = this._crawlerName;
}
if (this._jobName !== undefined) {
hasAnyValues = true;
internalValueResult.jobName = this._jobName;
}
if (this._logicalOperator !== undefined) {
hasAnyValues = true;
internalValueResult.logicalOperator = this._logicalOperator;
}
if (this._state !== undefined) {
hasAnyValues = true;
internalValueResult.state = this._state;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this.resolvableValue = undefined;
this._crawlState = undefined;
this._crawlerName = undefined;
this._jobName = undefined;
this._logicalOperator = undefined;
this._state = undefined;
}
else if (cdktf.Tokenization.isResolvable(value)) {
this.isEmptyObject = false;
this.resolvableValue = value;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this.resolvableValue = undefined;
this._crawlState = value.crawlState;
this._crawlerName = value.crawlerName;
this._jobName = value.jobName;
this._logicalOperator = value.logicalOperator;
this._state = value.state;
}
}
get crawlState() {
return this.getStringAttribute('crawl_state');
}
set crawlState(value) {
this._crawlState = value;
}
resetCrawlState() {
this._crawlState = undefined;
}
// Temporarily expose input value. Use with caution.
get crawlStateInput() {
return this._crawlState;
}
get crawlerName() {
return this.getStringAttribute('crawler_name');
}
set crawlerName(value) {
this._crawlerName = value;
}
resetCrawlerName() {
this._crawlerName = undefined;
}
// Temporarily expose input value. Use with caution.
get crawlerNameInput() {
return this._crawlerName;
}
get jobName() {
return this.getStringAttribute('job_name');
}
set jobName(value) {
this._jobName = value;
}
resetJobName() {
this._jobName = undefined;
}
// Temporarily expose input value. Use with caution.
get jobNameInput() {
return this._jobName;
}
get logicalOperator() {
return this.getStringAttribute('logical_operator');
}
set logicalOperator(value) {
this._logicalOperator = value;
}
resetLogicalOperator() {
this._logicalOperator = undefined;
}
// Temporarily expose input value. Use with caution.
get logicalOperatorInput() {
return this._logicalOperator;
}
get state() {
return this.getStringAttribute('state');
}
set state(value) {
this._state = value;
}
resetState() {
this._state = undefined;
}
// Temporarily expose input value. Use with caution.
get stateInput() {
return this._state;
}
}
exports.GlueTriggerPredicateConditionsOutputReference = GlueTriggerPredicateConditionsOutputReference;
_f = JSII_RTTI_SYMBOL_1;
GlueTriggerPredicateConditionsOutputReference[_f] = { fqn: "@cdktf/provider-aws.glueTrigger.GlueTriggerPredicateConditionsOutputReference", version: "21.22.1" };
class GlueTriggerPredicateConditionsList extends cdktf.ComplexList {
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
* @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
*/
constructor(terraformResource, terraformAttribute, wrapsSet) {
super(terraformResource, terraformAttribute, wrapsSet);
this.terraformResource = terraformResource;
this.terraformAttribute = terraformAttribute;
this.wrapsSet = wrapsSet;
}
/**
* @param index the index of the item to return
*/
get(index) {
return new GlueTriggerPredicateConditionsOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet);
}
}
exports.GlueTriggerPredicateConditionsList = GlueTriggerPredicateConditionsList;
_g = JSII_RTTI_SYMBOL_1;
GlueTriggerPredicateConditionsList[_g] = { fqn: "@cdktf/provider-aws.glueTrigger.GlueTriggerPredicateConditionsList", version: "21.22.1" };
function glueTriggerPredicateToTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
return {
logical: cdktf.stringToTerraform(struct.logical),
conditions: cdktf.listMapper(glueTriggerPredicateConditionsToTerraform, true)(struct.conditions),
};
}
function glueTriggerPredicateToHclTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
const attrs = {
logical: {
value: cdktf.stringToHclTerraform(struct.logical),
isBlock: false,
type: "simple",
storageClassType: "string",
},
conditions: {
value: cdktf.listMapperHcl(glueTriggerPredicateConditionsToHclTerraform, true)(struct.conditions),
isBlock: true,
type: "list",
storageClassType: "GlueTriggerPredicateConditionsList",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
class GlueTriggerPredicateOutputReference extends cdktf.ComplexObject {
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
*/
constructor(terraformResource, terraformAttribute) {
super(terraformResource, terraformAttribute, false, 0);
this.isEmptyObject = false;
// conditions - computed: false, optional: false, required: true
this._conditions = new GlueTriggerPredicateConditionsList(this, "conditions", false);
}
get internalValue() {
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
if (this._logical !== undefined) {
hasAnyValues = true;
internalValueResult.logical = this._logical;
}
if (this._conditions?.internalValue !== undefined) {
hasAnyValues = true;
internalValueResult.conditions = this._conditions?.internalValue;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._logical = undefined;
this._conditions.internalValue = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._logical = value.logical;
this._conditions.internalValue = value.conditions;
}
}
get logical() {
return this.getStringAttribute('logical');
}
set logical(value) {
this._logical = value;
}
resetLogical() {
this._logical = undefined;
}
// Temporarily expose input value. Use with caution.
get logicalInput() {
return this._logical;
}
get conditions() {
return this._conditions;
}
putConditions(value) {
this._conditions.internalValue = value;
}
// Temporarily expose input value. Use with caution.
get conditionsInput() {
return this._conditions.internalValue;
}
}
exports.GlueTriggerPredicateOutputReference = GlueTriggerPredicateOutputReference;
_h = JSII_RTTI_SYMBOL_1;
GlueTriggerPredicateOutputReference[_h] = { fqn: "@cdktf/provider-aws.glueTrigger.GlueTriggerPredicateOutputReference", version: "21.22.1" };
function glueTriggerTimeoutsToTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
return {
create: cdktf.stringToTerraform(struct.create),
delete: cdktf.stringToTerraform(struct.delete),
update: cdktf.stringToTerraform(struct.update),
};
}
function glueTriggerTimeoutsToHclTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
const attrs = {
create: {
value: cdktf.stringToHclTerraform(struct.create),
isBlock: false,
type: "simple",
storageClassType: "string",
},
delete: {
value: cdktf.stringToHclTerraform(struct.delete),
isBlock: false,
type: "simple",
storageClassType: "string",
},
update: {
value: cdktf.stringToHclTerraform(struct.update),
isBlock: false,
type: "simple",
storageClassType: "string",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
class GlueTriggerTimeoutsOutputReference extends cdktf.ComplexObject {
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
*/
constructor(terraformResource, terraformAttribute) {
super(terraformResource, terraformAttribute, false);
this.isEmptyObject = false;
}
get internalValue() {
if (this.resolvableValue) {
return this.resolvableValue;
}
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
if (this._create !== undefined) {
hasAnyValues = true;
internalValueResult.create = this._create;
}
if (this._delete !== undefined) {
hasAnyValues = true;
internalValueResult.delete = this._delete;
}
if (this._update !== undefined) {
hasAnyValues = true;
internalValueResult.update = this._update;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this.resolvableValue = undefined;
this._create = undefined;
this._delete = undefined;
this._update = undefined;
}
else if (cdktf.Tokenization.isResolvable(value)) {
this.isEmptyObject = false;
this.resolvableValue = value;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this.resolvableValue = undefined;
this._create = value.create;
this._delete = value.delete;
this._update = value.update;
}
}
get create() {
return this.getStringAttribute('create');
}
set create(value) {
this._create = value;
}
resetCreate() {
this._create = undefined;
}
// Temporarily expose input value. Use with caution.
get createInput() {
return this._create;
}
get delete() {
return this.getStringAttribute('delete');
}
set delete(value) {
this._delete = value;
}
resetDelete() {
this._delete = undefined;
}
// Temporarily expose input value. Use with caution.
get deleteInput() {
return this._delete;
}
get update() {
return this.getStringAttribute('update');
}
set update(value) {
this._update = value;
}
resetUpdate() {
this._update = undefined;
}
// Temporarily expose input value. Use with caution.
get updateInput() {
return this._update;
}
}
exports.GlueTriggerTimeoutsOutputReference = GlueTriggerTimeoutsOutputReference;
_j = JSII_RTTI_SYMBOL_1;
GlueTriggerTimeoutsOutputReference[_j] = { fqn: "@cdktf/provider-aws.glueTrigger.GlueTriggerTimeoutsOutputReference", version: "21.22.1" };
/**
* Represents a {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/glue_trigger aws_glue_trigger}
*/
class GlueTrigger extends cdktf.TerraformResource {
// ==============
// STATIC Methods
// ==============
/**
* Generates CDKTF code for importing a GlueTrigger resource upon running "cdktf plan <stack-name>"
* @param scope The scope in which to define this construct
* @param importToId The construct id used in the generated config for the GlueTrigger to import
* @param importFromId The id of the existing GlueTrigger that should be imported. Refer to the {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/glue_trigger#import import section} in the documentation of this resource for the id to use
* @param provider? Optional instance of the provider where the GlueTrigger to import is found
*/
static generateConfigForImport(scope, importToId, importFromId, provider) {
return new cdktf.ImportableResource(scope, importToId, { terraformResourceType: "aws_glue_trigger", importId: importFromId, provider });
}
// ===========
// INITIALIZER
// ===========
/**
* Create a new {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/glue_trigger aws_glue_trigger} Resource
*
* @param scope The scope in which to define this construct
* @param id The scoped construct ID. Must be unique amongst siblings in the same scope
* @param options GlueTriggerConfig
*/
constructor(scope, id, config) {
super(scope, id, {
terraformResourceType: 'aws_glue_trigger',
terraformGeneratorMetadata: {
providerName: 'aws',
providerVersion: '6.25.0',
providerVersionConstraint: '~> 6.0'
},
provider: config.provider,
dependsOn: config.dependsOn,
count: config.count,
lifecycle: config.lifecycle,
provisioners: config.provisioners,
connection: config.connection,
forEach: config.forEach
});
// actions - computed: false, optional: false, required: true
this._actions = new GlueTriggerActionsList(this, "actions", false);
// event_batching_condition - computed: false, optional: true, required: false
this._eventBatchingCondition = new GlueTriggerEventBatchingConditionList(this, "event_batching_condition", false);
// predicate - computed: false, optional: true, required: false
this._predicate = new GlueTriggerPredicateOutputReference(this, "predicate");
// timeouts - computed: false, optional: true, required: false
this._timeouts = new GlueTriggerTimeoutsOutputReference(this, "timeouts");
this._description = config.description;
this._enabled = config.enabled;
this._id = config.id;
this._name = config.name;
this._region = config.region;
this._schedule = config.schedule;
this._startOnCreation = config.startOnCreation;
this._tags = config.tags;
this._tagsAll = config.tagsAll;
this._type = config.type;
this._workflowName = config.workflowName;
this._actions.internalValue = config.actions;
this._eventBatchingCondition.internalValue = config.eventBatchingCondition;
this._predicate.internalValue = config.predicate;
this._timeouts.internalValue = config.timeouts;
}
// ==========
// ATTRIBUTES
// ==========
// arn - computed: true, optional: false, required: false
get arn() {
return this.getStringAttribute('arn');
}
get description() {
return this.getStringAttribute('description');
}
set description(value) {
this._description = value;
}
resetDescription() {
this._description = undefined;
}
// Temporarily expose input value. Use with caution.
get descriptionInput() {
return this._description;
}
get enabled() {
return this.getBooleanAttribute('enabled');
}
set enabled(value) {
this._enabled = value;
}
resetEnabled() {
this._enabled = undefined;
}
// Temporarily expose input value. Use with caution.
get enabledInput() {
return this._enabled;
}
get id() {
return this.getStringAttribute('id');
}
set id(value) {
this._id = value;
}
resetId() {
this._id = undefined;
}
// Temporarily expose input value. Use with caution.
get idInput() {
return this._id;
}
get name() {
return this.getStringAttribute('name');
}
set name(value) {
this._name = value;
}
// Temporarily expose input value. Use with caution.
get nameInput() {
return this._name;
}
get region() {
return this.getStringAttribute('region');
}
set region(value) {
this._region = value;
}
resetRegion() {
this._region = undefined;
}
// Temporarily expose input value. Use with caution.
get regionInput() {
return this._region;
}
get schedule() {
return this.getStringAttribute('schedule');
}
set schedule(value) {
this._schedule = value;
}
resetSchedule() {
this._schedule = undefined;
}
// Temporarily expose input value. Use with caution.
get scheduleInput() {
return this._schedule;
}
get startOnCreation() {
return this.getBooleanAttribute('start_on_creation');
}
set startOnCreation(value) {
this._startOnCreation = value;
}
resetStartOnCreation() {
this._startOnCreation = undefined;
}
// Temporarily expose input value. Use with caution.
get startOnCreationInput() {
return this._startOnCreation;
}
// state - computed: true, optional: false, required: false
get state() {
return this.getStringAttribute('state');
}
get tags() {
return this.getStringMapAttribute('tags');
}
set tags(value) {
this._tags = value;
}
resetTags() {
this._tags = undefined;
}
// Temporarily expose input value. Use with caution.
get tagsInput() {
return this._tags;
}
get tagsAll() {
return this.getStringMapAttribute('tags_all');
}
set tagsAll(value) {
this._tagsAll = value;
}
resetTagsAll() {
this._tagsAll = undefined;
}
// Temporarily expose input value. Use with caution.
get tagsAllInput() {
return this._tagsAll;
}
get type() {
return this.getStringAttribute('type');
}
set type(value) {
this._type = value;
}
// Temporarily expose input value. Use with caution.
get typeInput() {
return this._type;
}
get workflowName() {
return this.getStringAttribute('workflow_name');
}
set workflowName(value) {
this._workflowName = value;
}
resetWorkflowName() {
this._workflowName = undefined;
}
// Temporarily expose input value. Use with caution.
get workflowNameInput() {
return this._workflowName;
}
get actions() {
return this._actions;
}
putActions(value) {
this._actions.internalValue = value;
}
// Temporarily expose input value. Use with caution.
get actionsInput() {
return this._actions.internalValue;
}
get eventBatchingCondition() {
return this._eventBatchingCondition;
}
putEventBatchingCondition(value) {
this._eventBatchingCondition.internalValue = value;
}
resetEventBatchingCondition() {
this._eventBatchingCondition.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get eventBatchingConditionInput() {
return this._eventBatchingCondition.internalValue;
}
get predicate() {
return this._predicate;
}
putPredicate(value) {
this._predicate.internalValue = value;
}
resetPredicate() {
this._predicate.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get predicateInput() {
return this._predicate.internalValue;
}
get timeouts() {
return this._timeouts;
}
putTimeouts(value) {
this._timeouts.internalValue = value;
}
resetTimeouts() {
this._timeouts.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get timeoutsInput() {
return this._timeouts.internalValue;
}
// =========
// SYNTHESIS
// =========
synthesizeAttributes() {
return {
description: cdktf.stringToTerraform(this._description),
enabled: cdktf.booleanToTerraform(this._enabled),
id: cdktf.stringToTerraform(this._id),
name: cdktf.stringToTerraform(this._name),
region: cdktf.stringToTerraform(this._region),
schedule: cdktf.stringToTerraform(this._schedule),
start_on_creation: cdktf.booleanToTerraform(this._startOnCreation),
tags: cdktf.hashMapper(cdktf.stringToTerraform)(this._tags),
tags_all: cdktf.hashMapper(cdktf.stringToTerraform)(this._tagsAll),
type: cdktf.stringToTerraform(this._type),
workflow_name: cdktf.stringToTerraform(this._workflowName),
actions: cdktf.listMapper(glueTriggerActionsToTerraform, true)(this._actions.internalValue),
event_batching_condition: cdktf.listMapper(glueTriggerEventBatchingConditionToTerraform, true)(this._eventBatchingCondition.internalValue),
predicate: glueTriggerPredicateToTerraform(this._predicate.internalValue),
timeouts: glueTriggerTimeoutsToTerraform(this._timeouts.internalValue),
};
}
synthesizeHclAttributes() {
const attrs = {
description: {
value: cdktf.stringToHclTerraform(this._description),
isBlock: false,
type: "simple",
storageClassType: "string",
},
enabled: {
value: cdktf.booleanToHclTerraform(this._enabled),
isBlock: false,
type: "simple",
storageClassType: "boolean",
},
id: {
value: cdktf.stringToHclTerraform(this._id),
isBlock: false,
type: "simple",
storageClassType: "string",
},
name: {
value: cdktf.stringToHclTerraform(this._name),
isBlock: false,
type: "simple",
storageClassType: "string",
},
region: {
value: cdktf.stringToHclTerraform(this._region),
isBlock: false,
type: "simple",
storageClassType: "string",
},
schedule: {
value: cdktf.stringToHclTerraform(this._schedule),
isBlock: false,
type: "simple",
storageClassType: "string",
},
start_on_creation: {
value: cdktf.booleanToHclTerraform(this._startOnCreation),
isBlock: false,
type: "simple",
storageClassType: "boolean",
},
tags: {
value: cdktf.hashMapperHcl(cdktf.stringToHclTerraform)(this._tags),
isBlock: false,
type: "map",
storageClassType: "stringMap",
},
tags_all: {
value: cdktf.hashMapperHcl(cdktf.stringToHclTerraform)(this._tagsAll),
isBlock: false,
type: "map",
storageClassType: "stringMap",
},
type: {
value: cdktf.stringToHclTerraform(this._type),
isBlock: false,
type: "simple",
storageClassType: "string",
},
workflow_name: {
value: cdktf.stringToHclTerraform(this._workflowName),
isBlock: false,
type: "simple",
storageClassType: "string",
},
actions: {
value: cdktf.listMapperHcl(glueTriggerActionsToHclTerraform, true)(this._actions.internalValue),
isBlock: true,
type: "list",
storageClassType: "GlueTriggerActionsList",
},
event_batching_condition: {
value: cdktf.listMapperHcl(glueTriggerEventBatchingConditionToHclTerraform, true)(this._eventBatchingCondition.internalValue),
isBlock: true,
type: "list",
storageClassType: "GlueTriggerEventBatchingConditionList",
},
predicate: {
value: glueTriggerPredicateToHclTerraform(this._predicate.internalValue),
isBlock: true,
type: "list",
storageClassType: "GlueTriggerPredicateList",
},
timeouts: {
value: glueTriggerTimeoutsToHclTerraform(this._timeouts.internalValue),
isBlock: true,
type: "struct",
storageClassType: "GlueTriggerTimeouts",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
}
exports.GlueTrigger = GlueTrigger;
_k = JSII_RTTI_SYMBOL_1;
GlueTrigger[_k] = { fqn: "@cdktf/provider-aws.glueTrigger.GlueTrigger", version: "21.22.1" };
// =================
// STATIC PROPERTIES
// =================
GlueTrigger.tfResourceType = "aws_glue_trigger";
//# sourceMappingURL=data:application/json;base64,eyJ