@cdktf/provider-aws
Version:
Prebuilt aws Provider for Terraform CDK (cdktf)
1,024 lines • 148 kB
JavaScript
"use strict";
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m;
Object.defineProperty(exports, "__esModule", { value: true });
exports.OsisPipeline = exports.OsisPipelineVpcOptionsList = exports.OsisPipelineVpcOptionsOutputReference = exports.osisPipelineVpcOptionsToHclTerraform = exports.osisPipelineVpcOptionsToTerraform = exports.OsisPipelineTimeoutsOutputReference = exports.osisPipelineTimeoutsToHclTerraform = exports.osisPipelineTimeoutsToTerraform = exports.OsisPipelineLogPublishingOptionsList = exports.OsisPipelineLogPublishingOptionsOutputReference = exports.osisPipelineLogPublishingOptionsToHclTerraform = exports.osisPipelineLogPublishingOptionsToTerraform = exports.OsisPipelineLogPublishingOptionsCloudwatchLogDestinationList = exports.OsisPipelineLogPublishingOptionsCloudwatchLogDestinationOutputReference = exports.osisPipelineLogPublishingOptionsCloudwatchLogDestinationToHclTerraform = exports.osisPipelineLogPublishingOptionsCloudwatchLogDestinationToTerraform = exports.OsisPipelineEncryptionAtRestOptionsList = exports.OsisPipelineEncryptionAtRestOptionsOutputReference = exports.osisPipelineEncryptionAtRestOptionsToHclTerraform = exports.osisPipelineEncryptionAtRestOptionsToTerraform = exports.OsisPipelineBufferOptionsList = exports.OsisPipelineBufferOptionsOutputReference = exports.osisPipelineBufferOptionsToHclTerraform = exports.osisPipelineBufferOptionsToTerraform = void 0;
const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
const cdktf = require("cdktf");
function osisPipelineBufferOptionsToTerraform(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 {
persistent_buffer_enabled: cdktf.booleanToTerraform(struct.persistentBufferEnabled),
};
}
exports.osisPipelineBufferOptionsToTerraform = osisPipelineBufferOptionsToTerraform;
function osisPipelineBufferOptionsToHclTerraform(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 = {
persistent_buffer_enabled: {
value: cdktf.booleanToHclTerraform(struct.persistentBufferEnabled),
isBlock: false,
type: "simple",
storageClassType: "boolean",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
exports.osisPipelineBufferOptionsToHclTerraform = osisPipelineBufferOptionsToHclTerraform;
class OsisPipelineBufferOptionsOutputReference 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._persistentBufferEnabled !== undefined) {
hasAnyValues = true;
internalValueResult.persistentBufferEnabled = this._persistentBufferEnabled;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this.resolvableValue = undefined;
this._persistentBufferEnabled = 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._persistentBufferEnabled = value.persistentBufferEnabled;
}
}
get persistentBufferEnabled() {
return this.getBooleanAttribute('persistent_buffer_enabled');
}
set persistentBufferEnabled(value) {
this._persistentBufferEnabled = value;
}
// Temporarily expose input value. Use with caution.
get persistentBufferEnabledInput() {
return this._persistentBufferEnabled;
}
}
exports.OsisPipelineBufferOptionsOutputReference = OsisPipelineBufferOptionsOutputReference;
_a = JSII_RTTI_SYMBOL_1;
OsisPipelineBufferOptionsOutputReference[_a] = { fqn: "@cdktf/provider-aws.osisPipeline.OsisPipelineBufferOptionsOutputReference", version: "19.50.0" };
class OsisPipelineBufferOptionsList 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 OsisPipelineBufferOptionsOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet);
}
}
exports.OsisPipelineBufferOptionsList = OsisPipelineBufferOptionsList;
_b = JSII_RTTI_SYMBOL_1;
OsisPipelineBufferOptionsList[_b] = { fqn: "@cdktf/provider-aws.osisPipeline.OsisPipelineBufferOptionsList", version: "19.50.0" };
function osisPipelineEncryptionAtRestOptionsToTerraform(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 {
kms_key_arn: cdktf.stringToTerraform(struct.kmsKeyArn),
};
}
exports.osisPipelineEncryptionAtRestOptionsToTerraform = osisPipelineEncryptionAtRestOptionsToTerraform;
function osisPipelineEncryptionAtRestOptionsToHclTerraform(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 = {
kms_key_arn: {
value: cdktf.stringToHclTerraform(struct.kmsKeyArn),
isBlock: false,
type: "simple",
storageClassType: "string",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
exports.osisPipelineEncryptionAtRestOptionsToHclTerraform = osisPipelineEncryptionAtRestOptionsToHclTerraform;
class OsisPipelineEncryptionAtRestOptionsOutputReference 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._kmsKeyArn !== undefined) {
hasAnyValues = true;
internalValueResult.kmsKeyArn = this._kmsKeyArn;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this.resolvableValue = undefined;
this._kmsKeyArn = 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._kmsKeyArn = value.kmsKeyArn;
}
}
get kmsKeyArn() {
return this.getStringAttribute('kms_key_arn');
}
set kmsKeyArn(value) {
this._kmsKeyArn = value;
}
// Temporarily expose input value. Use with caution.
get kmsKeyArnInput() {
return this._kmsKeyArn;
}
}
exports.OsisPipelineEncryptionAtRestOptionsOutputReference = OsisPipelineEncryptionAtRestOptionsOutputReference;
_c = JSII_RTTI_SYMBOL_1;
OsisPipelineEncryptionAtRestOptionsOutputReference[_c] = { fqn: "@cdktf/provider-aws.osisPipeline.OsisPipelineEncryptionAtRestOptionsOutputReference", version: "19.50.0" };
class OsisPipelineEncryptionAtRestOptionsList 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 OsisPipelineEncryptionAtRestOptionsOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet);
}
}
exports.OsisPipelineEncryptionAtRestOptionsList = OsisPipelineEncryptionAtRestOptionsList;
_d = JSII_RTTI_SYMBOL_1;
OsisPipelineEncryptionAtRestOptionsList[_d] = { fqn: "@cdktf/provider-aws.osisPipeline.OsisPipelineEncryptionAtRestOptionsList", version: "19.50.0" };
function osisPipelineLogPublishingOptionsCloudwatchLogDestinationToTerraform(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 {
log_group: cdktf.stringToTerraform(struct.logGroup),
};
}
exports.osisPipelineLogPublishingOptionsCloudwatchLogDestinationToTerraform = osisPipelineLogPublishingOptionsCloudwatchLogDestinationToTerraform;
function osisPipelineLogPublishingOptionsCloudwatchLogDestinationToHclTerraform(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 = {
log_group: {
value: cdktf.stringToHclTerraform(struct.logGroup),
isBlock: false,
type: "simple",
storageClassType: "string",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
exports.osisPipelineLogPublishingOptionsCloudwatchLogDestinationToHclTerraform = osisPipelineLogPublishingOptionsCloudwatchLogDestinationToHclTerraform;
class OsisPipelineLogPublishingOptionsCloudwatchLogDestinationOutputReference 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._logGroup !== undefined) {
hasAnyValues = true;
internalValueResult.logGroup = this._logGroup;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this.resolvableValue = undefined;
this._logGroup = 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._logGroup = value.logGroup;
}
}
get logGroup() {
return this.getStringAttribute('log_group');
}
set logGroup(value) {
this._logGroup = value;
}
// Temporarily expose input value. Use with caution.
get logGroupInput() {
return this._logGroup;
}
}
exports.OsisPipelineLogPublishingOptionsCloudwatchLogDestinationOutputReference = OsisPipelineLogPublishingOptionsCloudwatchLogDestinationOutputReference;
_e = JSII_RTTI_SYMBOL_1;
OsisPipelineLogPublishingOptionsCloudwatchLogDestinationOutputReference[_e] = { fqn: "@cdktf/provider-aws.osisPipeline.OsisPipelineLogPublishingOptionsCloudwatchLogDestinationOutputReference", version: "19.50.0" };
class OsisPipelineLogPublishingOptionsCloudwatchLogDestinationList 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 OsisPipelineLogPublishingOptionsCloudwatchLogDestinationOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet);
}
}
exports.OsisPipelineLogPublishingOptionsCloudwatchLogDestinationList = OsisPipelineLogPublishingOptionsCloudwatchLogDestinationList;
_f = JSII_RTTI_SYMBOL_1;
OsisPipelineLogPublishingOptionsCloudwatchLogDestinationList[_f] = { fqn: "@cdktf/provider-aws.osisPipeline.OsisPipelineLogPublishingOptionsCloudwatchLogDestinationList", version: "19.50.0" };
function osisPipelineLogPublishingOptionsToTerraform(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 {
is_logging_enabled: cdktf.booleanToTerraform(struct.isLoggingEnabled),
cloudwatch_log_destination: cdktf.listMapper(osisPipelineLogPublishingOptionsCloudwatchLogDestinationToTerraform, true)(struct.cloudwatchLogDestination),
};
}
exports.osisPipelineLogPublishingOptionsToTerraform = osisPipelineLogPublishingOptionsToTerraform;
function osisPipelineLogPublishingOptionsToHclTerraform(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 = {
is_logging_enabled: {
value: cdktf.booleanToHclTerraform(struct.isLoggingEnabled),
isBlock: false,
type: "simple",
storageClassType: "boolean",
},
cloudwatch_log_destination: {
value: cdktf.listMapperHcl(osisPipelineLogPublishingOptionsCloudwatchLogDestinationToHclTerraform, true)(struct.cloudwatchLogDestination),
isBlock: true,
type: "list",
storageClassType: "OsisPipelineLogPublishingOptionsCloudwatchLogDestinationList",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
exports.osisPipelineLogPublishingOptionsToHclTerraform = osisPipelineLogPublishingOptionsToHclTerraform;
class OsisPipelineLogPublishingOptionsOutputReference 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;
// cloudwatch_log_destination - computed: false, optional: true, required: false
this._cloudwatchLogDestination = new OsisPipelineLogPublishingOptionsCloudwatchLogDestinationList(this, "cloudwatch_log_destination", false);
}
get internalValue() {
if (this.resolvableValue) {
return this.resolvableValue;
}
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
if (this._isLoggingEnabled !== undefined) {
hasAnyValues = true;
internalValueResult.isLoggingEnabled = this._isLoggingEnabled;
}
if (this._cloudwatchLogDestination?.internalValue !== undefined) {
hasAnyValues = true;
internalValueResult.cloudwatchLogDestination = this._cloudwatchLogDestination?.internalValue;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this.resolvableValue = undefined;
this._isLoggingEnabled = undefined;
this._cloudwatchLogDestination.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._isLoggingEnabled = value.isLoggingEnabled;
this._cloudwatchLogDestination.internalValue = value.cloudwatchLogDestination;
}
}
get isLoggingEnabled() {
return this.getBooleanAttribute('is_logging_enabled');
}
set isLoggingEnabled(value) {
this._isLoggingEnabled = value;
}
resetIsLoggingEnabled() {
this._isLoggingEnabled = undefined;
}
// Temporarily expose input value. Use with caution.
get isLoggingEnabledInput() {
return this._isLoggingEnabled;
}
get cloudwatchLogDestination() {
return this._cloudwatchLogDestination;
}
putCloudwatchLogDestination(value) {
this._cloudwatchLogDestination.internalValue = value;
}
resetCloudwatchLogDestination() {
this._cloudwatchLogDestination.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get cloudwatchLogDestinationInput() {
return this._cloudwatchLogDestination.internalValue;
}
}
exports.OsisPipelineLogPublishingOptionsOutputReference = OsisPipelineLogPublishingOptionsOutputReference;
_g = JSII_RTTI_SYMBOL_1;
OsisPipelineLogPublishingOptionsOutputReference[_g] = { fqn: "@cdktf/provider-aws.osisPipeline.OsisPipelineLogPublishingOptionsOutputReference", version: "19.50.0" };
class OsisPipelineLogPublishingOptionsList 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 OsisPipelineLogPublishingOptionsOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet);
}
}
exports.OsisPipelineLogPublishingOptionsList = OsisPipelineLogPublishingOptionsList;
_h = JSII_RTTI_SYMBOL_1;
OsisPipelineLogPublishingOptionsList[_h] = { fqn: "@cdktf/provider-aws.osisPipeline.OsisPipelineLogPublishingOptionsList", version: "19.50.0" };
function osisPipelineTimeoutsToTerraform(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),
};
}
exports.osisPipelineTimeoutsToTerraform = osisPipelineTimeoutsToTerraform;
function osisPipelineTimeoutsToHclTerraform(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));
}
exports.osisPipelineTimeoutsToHclTerraform = osisPipelineTimeoutsToHclTerraform;
class OsisPipelineTimeoutsOutputReference 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.OsisPipelineTimeoutsOutputReference = OsisPipelineTimeoutsOutputReference;
_j = JSII_RTTI_SYMBOL_1;
OsisPipelineTimeoutsOutputReference[_j] = { fqn: "@cdktf/provider-aws.osisPipeline.OsisPipelineTimeoutsOutputReference", version: "19.50.0" };
function osisPipelineVpcOptionsToTerraform(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 {
security_group_ids: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.securityGroupIds),
subnet_ids: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.subnetIds),
};
}
exports.osisPipelineVpcOptionsToTerraform = osisPipelineVpcOptionsToTerraform;
function osisPipelineVpcOptionsToHclTerraform(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 = {
security_group_ids: {
value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.securityGroupIds),
isBlock: false,
type: "set",
storageClassType: "stringList",
},
subnet_ids: {
value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.subnetIds),
isBlock: false,
type: "set",
storageClassType: "stringList",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
exports.osisPipelineVpcOptionsToHclTerraform = osisPipelineVpcOptionsToHclTerraform;
class OsisPipelineVpcOptionsOutputReference 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._securityGroupIds !== undefined) {
hasAnyValues = true;
internalValueResult.securityGroupIds = this._securityGroupIds;
}
if (this._subnetIds !== undefined) {
hasAnyValues = true;
internalValueResult.subnetIds = this._subnetIds;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this.resolvableValue = undefined;
this._securityGroupIds = undefined;
this._subnetIds = 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._securityGroupIds = value.securityGroupIds;
this._subnetIds = value.subnetIds;
}
}
get securityGroupIds() {
return cdktf.Fn.tolist(this.getListAttribute('security_group_ids'));
}
set securityGroupIds(value) {
this._securityGroupIds = value;
}
resetSecurityGroupIds() {
this._securityGroupIds = undefined;
}
// Temporarily expose input value. Use with caution.
get securityGroupIdsInput() {
return this._securityGroupIds;
}
get subnetIds() {
return cdktf.Fn.tolist(this.getListAttribute('subnet_ids'));
}
set subnetIds(value) {
this._subnetIds = value;
}
// Temporarily expose input value. Use with caution.
get subnetIdsInput() {
return this._subnetIds;
}
}
exports.OsisPipelineVpcOptionsOutputReference = OsisPipelineVpcOptionsOutputReference;
_k = JSII_RTTI_SYMBOL_1;
OsisPipelineVpcOptionsOutputReference[_k] = { fqn: "@cdktf/provider-aws.osisPipeline.OsisPipelineVpcOptionsOutputReference", version: "19.50.0" };
class OsisPipelineVpcOptionsList 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 OsisPipelineVpcOptionsOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet);
}
}
exports.OsisPipelineVpcOptionsList = OsisPipelineVpcOptionsList;
_l = JSII_RTTI_SYMBOL_1;
OsisPipelineVpcOptionsList[_l] = { fqn: "@cdktf/provider-aws.osisPipeline.OsisPipelineVpcOptionsList", version: "19.50.0" };
/**
* Represents a {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/osis_pipeline aws_osis_pipeline}
*/
class OsisPipeline extends cdktf.TerraformResource {
// ==============
// STATIC Methods
// ==============
/**
* Generates CDKTF code for importing a OsisPipeline 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 OsisPipeline to import
* @param importFromId The id of the existing OsisPipeline that should be imported. Refer to the {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/osis_pipeline#import import section} in the documentation of this resource for the id to use
* @param provider? Optional instance of the provider where the OsisPipeline to import is found
*/
static generateConfigForImport(scope, importToId, importFromId, provider) {
return new cdktf.ImportableResource(scope, importToId, { terraformResourceType: "aws_osis_pipeline", importId: importFromId, provider });
}
// ===========
// INITIALIZER
// ===========
/**
* Create a new {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/osis_pipeline aws_osis_pipeline} 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 OsisPipelineConfig
*/
constructor(scope, id, config) {
super(scope, id, {
terraformResourceType: 'aws_osis_pipeline',
terraformGeneratorMetadata: {
providerName: 'aws',
providerVersion: '5.84.0',
providerVersionConstraint: '~> 5.0'
},
provider: config.provider,
dependsOn: config.dependsOn,
count: config.count,
lifecycle: config.lifecycle,
provisioners: config.provisioners,
connection: config.connection,
forEach: config.forEach
});
// tags_all - computed: true, optional: false, required: false
this._tagsAll = new cdktf.StringMap(this, "tags_all");
// buffer_options - computed: false, optional: true, required: false
this._bufferOptions = new OsisPipelineBufferOptionsList(this, "buffer_options", false);
// encryption_at_rest_options - computed: false, optional: true, required: false
this._encryptionAtRestOptions = new OsisPipelineEncryptionAtRestOptionsList(this, "encryption_at_rest_options", false);
// log_publishing_options - computed: false, optional: true, required: false
this._logPublishingOptions = new OsisPipelineLogPublishingOptionsList(this, "log_publishing_options", false);
// timeouts - computed: false, optional: true, required: false
this._timeouts = new OsisPipelineTimeoutsOutputReference(this, "timeouts");
// vpc_options - computed: false, optional: true, required: false
this._vpcOptions = new OsisPipelineVpcOptionsList(this, "vpc_options", false);
this._maxUnits = config.maxUnits;
this._minUnits = config.minUnits;
this._pipelineConfigurationBody = config.pipelineConfigurationBody;
this._pipelineName = config.pipelineName;
this._tags = config.tags;
this._bufferOptions.internalValue = config.bufferOptions;
this._encryptionAtRestOptions.internalValue = config.encryptionAtRestOptions;
this._logPublishingOptions.internalValue = config.logPublishingOptions;
this._timeouts.internalValue = config.timeouts;
this._vpcOptions.internalValue = config.vpcOptions;
}
// ==========
// ATTRIBUTES
// ==========
// id - computed: true, optional: false, required: false
get id() {
return this.getStringAttribute('id');
}
// ingest_endpoint_urls - computed: true, optional: false, required: false
get ingestEndpointUrls() {
return cdktf.Fn.tolist(this.getListAttribute('ingest_endpoint_urls'));
}
get maxUnits() {
return this.getNumberAttribute('max_units');
}
set maxUnits(value) {
this._maxUnits = value;
}
// Temporarily expose input value. Use with caution.
get maxUnitsInput() {
return this._maxUnits;
}
get minUnits() {
return this.getNumberAttribute('min_units');
}
set minUnits(value) {
this._minUnits = value;
}
// Temporarily expose input value. Use with caution.
get minUnitsInput() {
return this._minUnits;
}
// pipeline_arn - computed: true, optional: false, required: false
get pipelineArn() {
return this.getStringAttribute('pipeline_arn');
}
get pipelineConfigurationBody() {
return this.getStringAttribute('pipeline_configuration_body');
}
set pipelineConfigurationBody(value) {
this._pipelineConfigurationBody = value;
}
// Temporarily expose input value. Use with caution.
get pipelineConfigurationBodyInput() {
return this._pipelineConfigurationBody;
}
get pipelineName() {
return this.getStringAttribute('pipeline_name');
}
set pipelineName(value) {
this._pipelineName = value;
}
// Temporarily expose input value. Use with caution.
get pipelineNameInput() {
return this._pipelineName;
}
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._tagsAll;
}
get bufferOptions() {
return this._bufferOptions;
}
putBufferOptions(value) {
this._bufferOptions.internalValue = value;
}
resetBufferOptions() {
this._bufferOptions.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get bufferOptionsInput() {
return this._bufferOptions.internalValue;
}
get encryptionAtRestOptions() {
return this._encryptionAtRestOptions;
}
putEncryptionAtRestOptions(value) {
this._encryptionAtRestOptions.internalValue = value;
}
resetEncryptionAtRestOptions() {
this._encryptionAtRestOptions.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get encryptionAtRestOptionsInput() {
return this._encryptionAtRestOptions.internalValue;
}
get logPublishingOptions() {
return this._logPublishingOptions;
}
putLogPublishingOptions(value) {
this._logPublishingOptions.internalValue = value;
}
resetLogPublishingOptions() {
this._logPublishingOptions.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get logPublishingOptionsInput() {
return this._logPublishingOptions.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;
}
get vpcOptions() {
return this._vpcOptions;
}
putVpcOptions(value) {
this._vpcOptions.internalValue = value;
}
resetVpcOptions() {
this._vpcOptions.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get vpcOptionsInput() {
return this._vpcOptions.internalValue;
}
// =========
// SYNTHESIS
// =========
synthesizeAttributes() {
return {
max_units: cdktf.numberToTerraform(this._maxUnits),
min_units: cdktf.numberToTerraform(this._minUnits),
pipeline_configuration_body: cdktf.stringToTerraform(this._pipelineConfigurationBody),
pipeline_name: cdktf.stringToTerraform(this._pipelineName),
tags: cdktf.hashMapper(cdktf.stringToTerraform)(this._tags),
buffer_options: cdktf.listMapper(osisPipelineBufferOptionsToTerraform, true)(this._bufferOptions.internalValue),
encryption_at_rest_options: cdktf.listMapper(osisPipelineEncryptionAtRestOptionsToTerraform, true)(this._encryptionAtRestOptions.internalValue),
log_publishing_options: cdktf.listMapper(osisPipelineLogPublishingOptionsToTerraform, true)(this._logPublishingOptions.internalValue),
timeouts: osisPipelineTimeoutsToTerraform(this._timeouts.internalValue),
vpc_options: cdktf.listMapper(osisPipelineVpcOptionsToTerraform, true)(this._vpcOptions.internalValue),
};
}
synthesizeHclAttributes() {
const attrs = {
max_units: {
value: cdktf.numberToHclTerraform(this._maxUnits),
isBlock: false,
type: "simple",
storageClassType: "number",
},
min_units: {
value: cdktf.numberToHclTerraform(this._minUnits),
isBlock: false,
type: "simple",
storageClassType: "number",
},
pipeline_configuration_body: {
value: cdktf.stringToHclTerraform(this._pipelineConfigurationBody),
isBlock: false,
type: "simple",
storageClassType: "string",
},
pipeline_name: {
value: cdktf.stringToHclTerraform(this._pipelineName),
isBlock: false,
type: "simple",
storageClassType: "string",
},
tags: {
value: cdktf.hashMapperHcl(cdktf.stringToHclTerraform)(this._tags),
isBlock: false,
type: "map",
storageClassType: "stringMap",
},
buffer_options: {
value: cdktf.listMapperHcl(osisPipelineBufferOptionsToHclTerraform, true)(this._bufferOptions.internalValue),
isBlock: true,
type: "list",
storageClassType: "OsisPipelineBufferOptionsList",
},
encryption_at_rest_options: {
value: cdktf.listMapperHcl(osisPipelineEncryptionAtRestOptionsToHclTerraform, true)(this._encryptionAtRestOptions.internalValue),
isBlock: true,
type: "list",
storageClassType: "OsisPipelineEncryptionAtRestOptionsList",
},
log_publishing_options: {
value: cdktf.listMapperHcl(osisPipelineLogPublishingOptionsToHclTerraform, true)(this._logPublishingOptions.internalValue),
isBlock: true,
type: "list",
storageClassType: "OsisPipelineLogPublishingOptionsList",
},
timeouts: {
value: osisPipelineTimeoutsToHclTerraform(this._timeouts.internalValue),
isBlock: true,
type: "struct",
storageClassType: "OsisPipelineTimeouts",
},
vpc_options: {
value: cdktf.listMapperHcl(osisPipelineVpcOptionsToHclTerraform, true)(this._vpcOptions.internalValue),
isBlock: true,
type: "list",
storageClassType: "OsisPipelineVpcOptionsList",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
}
exports.OsisPipeline = OsisPipeline;
_m = JSII_RTTI_SYMBOL_1;
OsisPipeline[_m] = { fqn: "@cdktf/provider-aws.osisPipeline.OsisPipeline", version: "19.50.0" };
// =================
// STATIC PROPERTIES
// =================
OsisPipeline.tfResourceType = "aws_osis_pipeline";
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvb3Npcy1waXBlbGluZS9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQVNBLCtCQUErQjtBQStEL0IsU0FBZ0Isb0NBQW9DLENBQUMsTUFBc0Q7SUFDekcsSUFBSSxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLElBQUksS0FBSyxDQUFDLFlBQVksQ0FBQyxZQUFZLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQztRQUFDLE9BQU8sTUFBTSxDQUFDO0lBQUMsQ0FBQztJQUM1RixJQUFJLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDO1FBQ25DLE1BQU0sSUFBSSxLQUFLLENBQUMsb0hBQW9ILENBQUMsQ0FBQztJQUN4SSxDQUFDO0lBQ0QsT0FBTztRQUNMLHlCQUF5QixFQUFFLEtBQUssQ0FBQyxrQkFBa0IsQ0FBQyxNQUFPLENBQUMsdUJBQXVCLENBQUM7S0FDckYsQ0FBQTtBQUNILENBQUM7QUFSRCxvRkFRQztBQUdELFNBQWdCLHVDQUF1QyxDQUFDLE1BQXNEO0lBQzVHLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEtBQUssQ0FBQyxZQUFZLENBQUMsWUFBWSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7UUFBQyxPQUFPLE1BQU0sQ0FBQztJQUFDLENBQUM7SUFDNUYsSUFBSSxLQUFLLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQztRQUNuQyxNQUFNLElBQUksS0FBSyxDQUFDLG9IQUFvSCxDQUFDLENBQUM7SUFDeEksQ0FBQztJQUNELE1BQU0sS0FBSyxHQUFHO1FBQ1oseUJBQXlCLEVBQUU7WUFDekIsS0FBSyxFQUFFLEtBQUssQ0FBQyxxQkFBcUIsQ0FBQyxNQUFPLENBQUMsdUJBQXVCLENBQUM7WUFDbkUsT0FBTyxFQUFFLEtBQUs7WUFDZCxJQUFJ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