UNPKG

@cdktf/provider-aws

Version:

Prebuilt aws Provider for Terraform CDK (cdktf)

1,184 lines 165 kB
"use strict"; var _a, _b, _c, _d, _e, _f, _g, _h; Object.defineProperty(exports, "__esModule", { value: true }); exports.GluePartition = exports.GluePartitionStorageDescriptorOutputReference = exports.GluePartitionStorageDescriptorSortColumnsList = exports.GluePartitionStorageDescriptorSortColumnsOutputReference = exports.GluePartitionStorageDescriptorSkewedInfoOutputReference = exports.GluePartitionStorageDescriptorSerDeInfoOutputReference = exports.GluePartitionStorageDescriptorColumnsList = exports.GluePartitionStorageDescriptorColumnsOutputReference = void 0; exports.gluePartitionStorageDescriptorColumnsToTerraform = gluePartitionStorageDescriptorColumnsToTerraform; exports.gluePartitionStorageDescriptorColumnsToHclTerraform = gluePartitionStorageDescriptorColumnsToHclTerraform; exports.gluePartitionStorageDescriptorSerDeInfoToTerraform = gluePartitionStorageDescriptorSerDeInfoToTerraform; exports.gluePartitionStorageDescriptorSerDeInfoToHclTerraform = gluePartitionStorageDescriptorSerDeInfoToHclTerraform; exports.gluePartitionStorageDescriptorSkewedInfoToTerraform = gluePartitionStorageDescriptorSkewedInfoToTerraform; exports.gluePartitionStorageDescriptorSkewedInfoToHclTerraform = gluePartitionStorageDescriptorSkewedInfoToHclTerraform; exports.gluePartitionStorageDescriptorSortColumnsToTerraform = gluePartitionStorageDescriptorSortColumnsToTerraform; exports.gluePartitionStorageDescriptorSortColumnsToHclTerraform = gluePartitionStorageDescriptorSortColumnsToHclTerraform; exports.gluePartitionStorageDescriptorToTerraform = gluePartitionStorageDescriptorToTerraform; exports.gluePartitionStorageDescriptorToHclTerraform = gluePartitionStorageDescriptorToHclTerraform; const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti"); const cdktf = require("cdktf"); function gluePartitionStorageDescriptorColumnsToTerraform(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 { comment: cdktf.stringToTerraform(struct.comment), name: cdktf.stringToTerraform(struct.name), type: cdktf.stringToTerraform(struct.type), }; } function gluePartitionStorageDescriptorColumnsToHclTerraform(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 = { comment: { value: cdktf.stringToHclTerraform(struct.comment), isBlock: false, type: "simple", storageClassType: "string", }, name: { value: cdktf.stringToHclTerraform(struct.name), isBlock: false, type: "simple", storageClassType: "string", }, type: { value: cdktf.stringToHclTerraform(struct.type), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class GluePartitionStorageDescriptorColumnsOutputReference 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._comment !== undefined) { hasAnyValues = true; internalValueResult.comment = this._comment; } if (this._name !== undefined) { hasAnyValues = true; internalValueResult.name = this._name; } if (this._type !== undefined) { hasAnyValues = true; internalValueResult.type = this._type; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; this._comment = undefined; this._name = undefined; this._type = 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._comment = value.comment; this._name = value.name; this._type = value.type; } } get comment() { return this.getStringAttribute('comment'); } set comment(value) { this._comment = value; } resetComment() { this._comment = undefined; } // Temporarily expose input value. Use with caution. get commentInput() { return this._comment; } 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 type() { return this.getStringAttribute('type'); } set type(value) { this._type = value; } resetType() { this._type = undefined; } // Temporarily expose input value. Use with caution. get typeInput() { return this._type; } } exports.GluePartitionStorageDescriptorColumnsOutputReference = GluePartitionStorageDescriptorColumnsOutputReference; _a = JSII_RTTI_SYMBOL_1; GluePartitionStorageDescriptorColumnsOutputReference[_a] = { fqn: "@cdktf/provider-aws.gluePartition.GluePartitionStorageDescriptorColumnsOutputReference", version: "21.22.1" }; class GluePartitionStorageDescriptorColumnsList 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 GluePartitionStorageDescriptorColumnsOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } exports.GluePartitionStorageDescriptorColumnsList = GluePartitionStorageDescriptorColumnsList; _b = JSII_RTTI_SYMBOL_1; GluePartitionStorageDescriptorColumnsList[_b] = { fqn: "@cdktf/provider-aws.gluePartition.GluePartitionStorageDescriptorColumnsList", version: "21.22.1" }; function gluePartitionStorageDescriptorSerDeInfoToTerraform(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 { name: cdktf.stringToTerraform(struct.name), parameters: cdktf.hashMapper(cdktf.stringToTerraform)(struct.parameters), serialization_library: cdktf.stringToTerraform(struct.serializationLibrary), }; } function gluePartitionStorageDescriptorSerDeInfoToHclTerraform(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 = { name: { value: cdktf.stringToHclTerraform(struct.name), isBlock: false, type: "simple", storageClassType: "string", }, parameters: { value: cdktf.hashMapperHcl(cdktf.stringToHclTerraform)(struct.parameters), isBlock: false, type: "map", storageClassType: "stringMap", }, serialization_library: { value: cdktf.stringToHclTerraform(struct.serializationLibrary), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class GluePartitionStorageDescriptorSerDeInfoOutputReference 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._name !== undefined) { hasAnyValues = true; internalValueResult.name = this._name; } if (this._parameters !== undefined) { hasAnyValues = true; internalValueResult.parameters = this._parameters; } if (this._serializationLibrary !== undefined) { hasAnyValues = true; internalValueResult.serializationLibrary = this._serializationLibrary; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._name = undefined; this._parameters = undefined; this._serializationLibrary = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._name = value.name; this._parameters = value.parameters; this._serializationLibrary = value.serializationLibrary; } } get name() { return this.getStringAttribute('name'); } set name(value) { this._name = value; } resetName() { this._name = undefined; } // Temporarily expose input value. Use with caution. get nameInput() { return this._name; } get parameters() { return this.getStringMapAttribute('parameters'); } set parameters(value) { this._parameters = value; } resetParameters() { this._parameters = undefined; } // Temporarily expose input value. Use with caution. get parametersInput() { return this._parameters; } get serializationLibrary() { return this.getStringAttribute('serialization_library'); } set serializationLibrary(value) { this._serializationLibrary = value; } resetSerializationLibrary() { this._serializationLibrary = undefined; } // Temporarily expose input value. Use with caution. get serializationLibraryInput() { return this._serializationLibrary; } } exports.GluePartitionStorageDescriptorSerDeInfoOutputReference = GluePartitionStorageDescriptorSerDeInfoOutputReference; _c = JSII_RTTI_SYMBOL_1; GluePartitionStorageDescriptorSerDeInfoOutputReference[_c] = { fqn: "@cdktf/provider-aws.gluePartition.GluePartitionStorageDescriptorSerDeInfoOutputReference", version: "21.22.1" }; function gluePartitionStorageDescriptorSkewedInfoToTerraform(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 { skewed_column_names: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.skewedColumnNames), skewed_column_value_location_maps: cdktf.hashMapper(cdktf.stringToTerraform)(struct.skewedColumnValueLocationMaps), skewed_column_values: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.skewedColumnValues), }; } function gluePartitionStorageDescriptorSkewedInfoToHclTerraform(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 = { skewed_column_names: { value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.skewedColumnNames), isBlock: false, type: "list", storageClassType: "stringList", }, skewed_column_value_location_maps: { value: cdktf.hashMapperHcl(cdktf.stringToHclTerraform)(struct.skewedColumnValueLocationMaps), isBlock: false, type: "map", storageClassType: "stringMap", }, skewed_column_values: { value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.skewedColumnValues), isBlock: false, type: "list", storageClassType: "stringList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class GluePartitionStorageDescriptorSkewedInfoOutputReference 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._skewedColumnNames !== undefined) { hasAnyValues = true; internalValueResult.skewedColumnNames = this._skewedColumnNames; } if (this._skewedColumnValueLocationMaps !== undefined) { hasAnyValues = true; internalValueResult.skewedColumnValueLocationMaps = this._skewedColumnValueLocationMaps; } if (this._skewedColumnValues !== undefined) { hasAnyValues = true; internalValueResult.skewedColumnValues = this._skewedColumnValues; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._skewedColumnNames = undefined; this._skewedColumnValueLocationMaps = undefined; this._skewedColumnValues = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._skewedColumnNames = value.skewedColumnNames; this._skewedColumnValueLocationMaps = value.skewedColumnValueLocationMaps; this._skewedColumnValues = value.skewedColumnValues; } } get skewedColumnNames() { return this.getListAttribute('skewed_column_names'); } set skewedColumnNames(value) { this._skewedColumnNames = value; } resetSkewedColumnNames() { this._skewedColumnNames = undefined; } // Temporarily expose input value. Use with caution. get skewedColumnNamesInput() { return this._skewedColumnNames; } get skewedColumnValueLocationMaps() { return this.getStringMapAttribute('skewed_column_value_location_maps'); } set skewedColumnValueLocationMaps(value) { this._skewedColumnValueLocationMaps = value; } resetSkewedColumnValueLocationMaps() { this._skewedColumnValueLocationMaps = undefined; } // Temporarily expose input value. Use with caution. get skewedColumnValueLocationMapsInput() { return this._skewedColumnValueLocationMaps; } get skewedColumnValues() { return this.getListAttribute('skewed_column_values'); } set skewedColumnValues(value) { this._skewedColumnValues = value; } resetSkewedColumnValues() { this._skewedColumnValues = undefined; } // Temporarily expose input value. Use with caution. get skewedColumnValuesInput() { return this._skewedColumnValues; } } exports.GluePartitionStorageDescriptorSkewedInfoOutputReference = GluePartitionStorageDescriptorSkewedInfoOutputReference; _d = JSII_RTTI_SYMBOL_1; GluePartitionStorageDescriptorSkewedInfoOutputReference[_d] = { fqn: "@cdktf/provider-aws.gluePartition.GluePartitionStorageDescriptorSkewedInfoOutputReference", version: "21.22.1" }; function gluePartitionStorageDescriptorSortColumnsToTerraform(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 { column: cdktf.stringToTerraform(struct.column), sort_order: cdktf.numberToTerraform(struct.sortOrder), }; } function gluePartitionStorageDescriptorSortColumnsToHclTerraform(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 = { column: { value: cdktf.stringToHclTerraform(struct.column), isBlock: false, type: "simple", storageClassType: "string", }, sort_order: { value: cdktf.numberToHclTerraform(struct.sortOrder), isBlock: false, type: "simple", storageClassType: "number", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class GluePartitionStorageDescriptorSortColumnsOutputReference 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._column !== undefined) { hasAnyValues = true; internalValueResult.column = this._column; } if (this._sortOrder !== undefined) { hasAnyValues = true; internalValueResult.sortOrder = this._sortOrder; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; this._column = undefined; this._sortOrder = 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._column = value.column; this._sortOrder = value.sortOrder; } } get column() { return this.getStringAttribute('column'); } set column(value) { this._column = value; } // Temporarily expose input value. Use with caution. get columnInput() { return this._column; } get sortOrder() { return this.getNumberAttribute('sort_order'); } set sortOrder(value) { this._sortOrder = value; } // Temporarily expose input value. Use with caution. get sortOrderInput() { return this._sortOrder; } } exports.GluePartitionStorageDescriptorSortColumnsOutputReference = GluePartitionStorageDescriptorSortColumnsOutputReference; _e = JSII_RTTI_SYMBOL_1; GluePartitionStorageDescriptorSortColumnsOutputReference[_e] = { fqn: "@cdktf/provider-aws.gluePartition.GluePartitionStorageDescriptorSortColumnsOutputReference", version: "21.22.1" }; class GluePartitionStorageDescriptorSortColumnsList 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 GluePartitionStorageDescriptorSortColumnsOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } exports.GluePartitionStorageDescriptorSortColumnsList = GluePartitionStorageDescriptorSortColumnsList; _f = JSII_RTTI_SYMBOL_1; GluePartitionStorageDescriptorSortColumnsList[_f] = { fqn: "@cdktf/provider-aws.gluePartition.GluePartitionStorageDescriptorSortColumnsList", version: "21.22.1" }; function gluePartitionStorageDescriptorToTerraform(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 { additional_locations: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.additionalLocations), bucket_columns: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.bucketColumns), compressed: cdktf.booleanToTerraform(struct.compressed), input_format: cdktf.stringToTerraform(struct.inputFormat), location: cdktf.stringToTerraform(struct.location), number_of_buckets: cdktf.numberToTerraform(struct.numberOfBuckets), output_format: cdktf.stringToTerraform(struct.outputFormat), parameters: cdktf.hashMapper(cdktf.stringToTerraform)(struct.parameters), stored_as_sub_directories: cdktf.booleanToTerraform(struct.storedAsSubDirectories), columns: cdktf.listMapper(gluePartitionStorageDescriptorColumnsToTerraform, true)(struct.columns), ser_de_info: gluePartitionStorageDescriptorSerDeInfoToTerraform(struct.serDeInfo), skewed_info: gluePartitionStorageDescriptorSkewedInfoToTerraform(struct.skewedInfo), sort_columns: cdktf.listMapper(gluePartitionStorageDescriptorSortColumnsToTerraform, true)(struct.sortColumns), }; } function gluePartitionStorageDescriptorToHclTerraform(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 = { additional_locations: { value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.additionalLocations), isBlock: false, type: "list", storageClassType: "stringList", }, bucket_columns: { value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.bucketColumns), isBlock: false, type: "list", storageClassType: "stringList", }, compressed: { value: cdktf.booleanToHclTerraform(struct.compressed), isBlock: false, type: "simple", storageClassType: "boolean", }, input_format: { value: cdktf.stringToHclTerraform(struct.inputFormat), isBlock: false, type: "simple", storageClassType: "string", }, location: { value: cdktf.stringToHclTerraform(struct.location), isBlock: false, type: "simple", storageClassType: "string", }, number_of_buckets: { value: cdktf.numberToHclTerraform(struct.numberOfBuckets), isBlock: false, type: "simple", storageClassType: "number", }, output_format: { value: cdktf.stringToHclTerraform(struct.outputFormat), isBlock: false, type: "simple", storageClassType: "string", }, parameters: { value: cdktf.hashMapperHcl(cdktf.stringToHclTerraform)(struct.parameters), isBlock: false, type: "map", storageClassType: "stringMap", }, stored_as_sub_directories: { value: cdktf.booleanToHclTerraform(struct.storedAsSubDirectories), isBlock: false, type: "simple", storageClassType: "boolean", }, columns: { value: cdktf.listMapperHcl(gluePartitionStorageDescriptorColumnsToHclTerraform, true)(struct.columns), isBlock: true, type: "list", storageClassType: "GluePartitionStorageDescriptorColumnsList", }, ser_de_info: { value: gluePartitionStorageDescriptorSerDeInfoToHclTerraform(struct.serDeInfo), isBlock: true, type: "list", storageClassType: "GluePartitionStorageDescriptorSerDeInfoList", }, skewed_info: { value: gluePartitionStorageDescriptorSkewedInfoToHclTerraform(struct.skewedInfo), isBlock: true, type: "list", storageClassType: "GluePartitionStorageDescriptorSkewedInfoList", }, sort_columns: { value: cdktf.listMapperHcl(gluePartitionStorageDescriptorSortColumnsToHclTerraform, true)(struct.sortColumns), isBlock: true, type: "list", storageClassType: "GluePartitionStorageDescriptorSortColumnsList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class GluePartitionStorageDescriptorOutputReference 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; // columns - computed: false, optional: true, required: false this._columns = new GluePartitionStorageDescriptorColumnsList(this, "columns", false); // ser_de_info - computed: false, optional: true, required: false this._serDeInfo = new GluePartitionStorageDescriptorSerDeInfoOutputReference(this, "ser_de_info"); // skewed_info - computed: false, optional: true, required: false this._skewedInfo = new GluePartitionStorageDescriptorSkewedInfoOutputReference(this, "skewed_info"); // sort_columns - computed: false, optional: true, required: false this._sortColumns = new GluePartitionStorageDescriptorSortColumnsList(this, "sort_columns", false); } get internalValue() { let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._additionalLocations !== undefined) { hasAnyValues = true; internalValueResult.additionalLocations = this._additionalLocations; } if (this._bucketColumns !== undefined) { hasAnyValues = true; internalValueResult.bucketColumns = this._bucketColumns; } if (this._compressed !== undefined) { hasAnyValues = true; internalValueResult.compressed = this._compressed; } if (this._inputFormat !== undefined) { hasAnyValues = true; internalValueResult.inputFormat = this._inputFormat; } if (this._location !== undefined) { hasAnyValues = true; internalValueResult.location = this._location; } if (this._numberOfBuckets !== undefined) { hasAnyValues = true; internalValueResult.numberOfBuckets = this._numberOfBuckets; } if (this._outputFormat !== undefined) { hasAnyValues = true; internalValueResult.outputFormat = this._outputFormat; } if (this._parameters !== undefined) { hasAnyValues = true; internalValueResult.parameters = this._parameters; } if (this._storedAsSubDirectories !== undefined) { hasAnyValues = true; internalValueResult.storedAsSubDirectories = this._storedAsSubDirectories; } if (this._columns?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.columns = this._columns?.internalValue; } if (this._serDeInfo?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.serDeInfo = this._serDeInfo?.internalValue; } if (this._skewedInfo?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.skewedInfo = this._skewedInfo?.internalValue; } if (this._sortColumns?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.sortColumns = this._sortColumns?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._additionalLocations = undefined; this._bucketColumns = undefined; this._compressed = undefined; this._inputFormat = undefined; this._location = undefined; this._numberOfBuckets = undefined; this._outputFormat = undefined; this._parameters = undefined; this._storedAsSubDirectories = undefined; this._columns.internalValue = undefined; this._serDeInfo.internalValue = undefined; this._skewedInfo.internalValue = undefined; this._sortColumns.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._additionalLocations = value.additionalLocations; this._bucketColumns = value.bucketColumns; this._compressed = value.compressed; this._inputFormat = value.inputFormat; this._location = value.location; this._numberOfBuckets = value.numberOfBuckets; this._outputFormat = value.outputFormat; this._parameters = value.parameters; this._storedAsSubDirectories = value.storedAsSubDirectories; this._columns.internalValue = value.columns; this._serDeInfo.internalValue = value.serDeInfo; this._skewedInfo.internalValue = value.skewedInfo; this._sortColumns.internalValue = value.sortColumns; } } get additionalLocations() { return this.getListAttribute('additional_locations'); } set additionalLocations(value) { this._additionalLocations = value; } resetAdditionalLocations() { this._additionalLocations = undefined; } // Temporarily expose input value. Use with caution. get additionalLocationsInput() { return this._additionalLocations; } get bucketColumns() { return this.getListAttribute('bucket_columns'); } set bucketColumns(value) { this._bucketColumns = value; } resetBucketColumns() { this._bucketColumns = undefined; } // Temporarily expose input value. Use with caution. get bucketColumnsInput() { return this._bucketColumns; } get compressed() { return this.getBooleanAttribute('compressed'); } set compressed(value) { this._compressed = value; } resetCompressed() { this._compressed = undefined; } // Temporarily expose input value. Use with caution. get compressedInput() { return this._compressed; } get inputFormat() { return this.getStringAttribute('input_format'); } set inputFormat(value) { this._inputFormat = value; } resetInputFormat() { this._inputFormat = undefined; } // Temporarily expose input value. Use with caution. get inputFormatInput() { return this._inputFormat; } get location() { return this.getStringAttribute('location'); } set location(value) { this._location = value; } resetLocation() { this._location = undefined; } // Temporarily expose input value. Use with caution. get locationInput() { return this._location; } get numberOfBuckets() { return this.getNumberAttribute('number_of_buckets'); } set numberOfBuckets(value) { this._numberOfBuckets = value; } resetNumberOfBuckets() { this._numberOfBuckets = undefined; } // Temporarily expose input value. Use with caution. get numberOfBucketsInput() { return this._numberOfBuckets; } get outputFormat() { return this.getStringAttribute('output_format'); } set outputFormat(value) { this._outputFormat = value; } resetOutputFormat() { this._outputFormat = undefined; } // Temporarily expose input value. Use with caution. get outputFormatInput() { return this._outputFormat; } get parameters() { return this.getStringMapAttribute('parameters'); } set parameters(value) { this._parameters = value; } resetParameters() { this._parameters = undefined; } // Temporarily expose input value. Use with caution. get parametersInput() { return this._parameters; } get storedAsSubDirectories() { return this.getBooleanAttribute('stored_as_sub_directories'); } set storedAsSubDirectories(value) { this._storedAsSubDirectories = value; } resetStoredAsSubDirectories() { this._storedAsSubDirectories = undefined; } // Temporarily expose input value. Use with caution. get storedAsSubDirectoriesInput() { return this._storedAsSubDirectories; } get columns() { return this._columns; } putColumns(value) { this._columns.internalValue = value; } resetColumns() { this._columns.internalValue = undefined; } // Temporarily expose input value. Use with caution. get columnsInput() { return this._columns.internalValue; } get serDeInfo() { return this._serDeInfo; } putSerDeInfo(value) { this._serDeInfo.internalValue = value; } resetSerDeInfo() { this._serDeInfo.internalValue = undefined; } // Temporarily expose input value. Use with caution. get serDeInfoInput() { return this._serDeInfo.internalValue; } get skewedInfo() { return this._skewedInfo; } putSkewedInfo(value) { this._skewedInfo.internalValue = value; } resetSkewedInfo() { this._skewedInfo.internalValue = undefined; } // Temporarily expose input value. Use with caution. get skewedInfoInput() { return this._skewedInfo.internalValue; } get sortColumns() { return this._sortColumns; } putSortColumns(value) { this._sortColumns.internalValue = value; } resetSortColumns() { this._sortColumns.internalValue = undefined; } // Temporarily expose input value. Use with caution. get sortColumnsInput() { return this._sortColumns.internalValue; } } exports.GluePartitionStorageDescriptorOutputReference = GluePartitionStorageDescriptorOutputReference; _g = JSII_RTTI_SYMBOL_1; GluePartitionStorageDescriptorOutputReference[_g] = { fqn: "@cdktf/provider-aws.gluePartition.GluePartitionStorageDescriptorOutputReference", version: "21.22.1" }; /** * Represents a {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/glue_partition aws_glue_partition} */ class GluePartition extends cdktf.TerraformResource { // ============== // STATIC Methods // ============== /** * Generates CDKTF code for importing a GluePartition 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 GluePartition to import * @param importFromId The id of the existing GluePartition that should be imported. Refer to the {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/glue_partition#import import section} in the documentation of this resource for the id to use * @param provider? Optional instance of the provider where the GluePartition to import is found */ static generateConfigForImport(scope, importToId, importFromId, provider) { return new cdktf.ImportableResource(scope, importToId, { terraformResourceType: "aws_glue_partition", importId: importFromId, provider }); } // =========== // INITIALIZER // =========== /** * Create a new {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/glue_partition aws_glue_partition} 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 GluePartitionConfig */ constructor(scope, id, config) { super(scope, id, { terraformResourceType: 'aws_glue_partition', 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 }); // storage_descriptor - computed: false, optional: true, required: false this._storageDescriptor = new GluePartitionStorageDescriptorOutputReference(this, "storage_descriptor"); this._catalogId = config.catalogId; this._databaseName = config.databaseName; this._id = config.id; this._parameters = config.parameters; this._partitionValues = config.partitionValues; this._region = config.region; this._tableName = config.tableName; this._storageDescriptor.internalValue = config.storageDescriptor; } get catalogId() { return this.getStringAttribute('catalog_id'); } set catalogId(value) { this._catalogId = value; } resetCatalogId() { this._catalogId = undefined; } // Temporarily expose input value. Use with caution. get catalogIdInput() { return this._catalogId; } // creation_time - computed: true, optional: false, required: false get creationTime() { return this.getStringAttribute('creation_time'); } get databaseName() { return this.getStringAttribute('database_name'); } set databaseName(value) { this._databaseName = value; } // Temporarily expose input value. Use with caution. get databaseNameInput() { return this._databaseName; } 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; } // last_accessed_time - computed: true, optional: false, required: false get lastAccessedTime() { return this.getStringAttribute('last_accessed_time'); } // last_analyzed_time - computed: true, optional: false, required: false get lastAnalyzedTime() { return this.getStringAttribute('last_analyzed_time'); } get parameters() { return this.getStringMapAttribute('parameters'); } set parameters(value) { this._parameters = value; } resetParameters() { this._parameters = undefined; } // Temporarily expose input value. Use with caution. get parametersInput() { return this._parameters; } get partitionValues() { return this.getListAttribute('partition_values'); } set partitionValues(value) { this._partitionValues = value; } // Temporarily expose input value. Use with caution. get partitionValuesInput() { return this._partitionValues; } 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 tableName() { return this.getStringAttribute('table_name'); } set tableName(value) { this._tableName = value; } // Temporarily expose input value. Use with caution. get tableNameInput() { return this._tableName; } get storageDescriptor() { return this._storageDescriptor; } putStorageDescriptor(value) { this._storageDescriptor.internalValue = value; } resetStorageDescriptor() { this._storageDescriptor.internalValue = undefined; } // Temporarily expose input value. Use with caution. get storageDescriptorInput() { return this._storageDescriptor.internalValue; } // ========= // SYNTHESIS // ========= synthesizeAttributes() { return { catalog_id: cdktf.stringToTerraform(this._catalogId), database_name: cdktf.stringToTerraform(this._databaseName), id: cdktf.stringToTerraform(this._id), parameters: cdktf.hashMapper(cdktf.stringToTerraform)(this._parameters), partition_values: cdktf.listMapper(cdktf.stringToTerraform, false)(this._partitionValues), region: cdktf.stringToTerraform(this._region), table_name: cdktf.stringToTerraform(this._tableName), storage_descriptor: gluePartitionStorageDescriptorToTerraform(this._storageDescriptor.internalValue), }; } synthesizeHclAttributes() { const attrs = { catalog_id: { value: cdktf.stringToHclTerraform(this._catalogId), isBlock: false, type: "simple", storageClassType: "string", }, database_name: { value: cdktf.stringToHclTerraform(this._databaseName), isBlock: false, type: "simple", storageClassType: "string", }, id: { value: cdktf.stringToHclTerraform(this._id), isBlock: false, type: "simple", storageClassType: "string", }, parameters: { value: cdktf.hashMapperHcl(cdktf.stringToHclTerraform)(this._parameters), isBlock: false, type: "map", storageClassType: "stringMap", }, partition_values: { value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(this._partitionValues), isBlock: false, type: "list", storageClassType: "stringList", }, region: { value: cdktf.stringToHclTerraform(this._region), isBlock: false, type: "simple", storageClassType: "string", }, table_name: { value: cdktf.stringToHclTerraform(this._tableName), isBlock: false, type: "simple", storageClassType: "string", }, storage_descriptor: { value: gluePartitionStorageDescriptorToHclTerraform(this._storageDescriptor.internalValue), isBlock: true, type: "list", storageClassType: "GluePartitionStorageDescriptorList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } } exports.GluePartition = GluePartition; _h = JSII_RTTI_SYMBOL_1; GluePartition[_h] = { fqn: "@cdktf/provider-aws.gluePartition.GluePartition", version: "21.22.1" }; // ================= // STATIC PROPERTIES // ================= GluePartition.tfResourceType = "aws_glue_partition"; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvZ2x1ZS1wYXJ0aXRpb24vaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQXFFQSw0R0FVQztBQUdELGtIQTRCQztBQTBJRCxnSEFVQztBQUdELHNIQTRCQztBQTZHRCxrSEFVQztBQUdELHdIQTRCQztBQXlHRCxvSEFTQztBQUdELDBIQXNCQztBQWlLRCw4RkFvQkM7QUFHRCxvR0F3RkM7O0FBejBCRCwrQkFBK0I7QUE0RC9CLFNBQWdCLGdEQUFnRCxDQUFDLE1BQWtFO0lBQ2pJLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEtBQUssQ0FBQyxZQUFZLENBQUMsWUFBWSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7UUFBQyxPQUFPLE1BQU0sQ0FBQztJQUFDLENBQUM7SUFDNUYsSUFBSSxLQUFLLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQztRQUNuQyxNQUFNLElBQUksS0FBSyxDQUFDLG9IQUFvSCxDQUFDLENBQUM7SUFDeEksQ0FBQztJQUNELE9BQU87UUFDTCxPQUFPLEVBQUUsS0FBSyxDQUFDLGlCQUFpQixDQUFDLE1BQU8sQ0FBQyxPQUFPLENBQUM7UUFDakQsSUFBSSxFQUFFLEtBQUssQ0FBQyxpQkFBaUIsQ0FBQyxNQUFPLENBQUMsSUFBSSxDQUFDO1FBQzNDLElBQUksRUFBRSxLQUFLLENBQUMsaUJBQWlCLENBQUMsTUFBTyxDQUFDLElBQUksQ0FBQztLQUM1QyxDQUFBO0FBQ0gsQ0FBQztBQUdELFNBQWdCLG1EQUFtRCxDQUFDLE1BQWtFO0lBQ3BJLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEtBQUssQ0FBQyxZQUFZLENBQUMsWUFBWSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7UUFBQyxPQUFPLE1BQU0sQ0FBQztJQUFDLENBQUM7SUFDNUYsSUFBSSxLQUFLLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQztRQUNuQyxNQUFNLElBQUksS0FBSyxDQUFDLG9IQUFvSCxDQUFDLENBQUM7SUFDeEksQ0FBQztJQUNELE1BQU0sS0FBSyxHQUFHO1FBQ1osT0FBTyxFQUFFO1lBQ1AsS0FBSyxFQUFFLEtBQUssQ0FBQyxvQkFBb0IsQ0FBQyxNQUFPLENBQUMsT0FBTyxDQUFDO1lBQ2xELE9BQU8sRUFBRSxLQUFLO1lBQ2QsSUFBSSxFQUFFLFFBQVE7WUFDZCxnQkFBZ0IsRUFBRSxRQUFRO1NBQzNCO1FBQ0QsSUFBSSxFQUFFO1lBQ0osS0FBSyxFQUFFLEtBQUssQ0FBQyxvQkFBb0IsQ0FBQyxNQUFPLENBQUMsSUFBSSxDQUFDO1lBQy9DLE9BQU8sRUFBRSxLQUFLO1lBQ2QsSUFBSSxFQUFFLFFBQVE7WUFDZCxnQkFBZ0IsRUFBRSxRQUFRO1NBQzNCO1FBQ0QsSUFBSSxFQUFFO1lBQ0osS0FBSyxFQUFFLEtBQUssQ0FBQyxvQkFBb0IsQ0FBQyxNQUFPLENBQUMsSUFBSSxDQUFDO1lBQy9DLE9BQU8sRUFBRSxLQUFLO1lBQ2QsSUFBSSxFQUFFLFFBQVE7WUFDZCxnQkFBZ0IsRUFBRSxRQUFRO1NBQzNCO0tBQ0YsQ0FBQztJQUVGLDhCQUE4QjtJQUM5QixPQUFPLE1BQU0sQ0FBQyxXQUFXLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxLQUFLLENBQUMsRUFBRSxFQUFFLENBQUMsS0FBSyxLQUFLLFNBQVMsSUFBSSxLQUFLLENBQUMsS0FBSyxLQUFLLFNBQVMsQ0FBQyxDQUFDLENBQUM7QUFDNUgsQ0FBQztBQUVELE1BQWEsb0RBQXFELFNBQVEsS0FBSyxDQUFDLGFBQWE7SUFJM0Y7Ozs7O01BS0U7SUFDRixZQUFtQixpQkFBNkMsRUFBRSxrQkFBMEIsRUFBRSxrQkFBMEIsRUFBRSxzQkFBK0I7UUFDdkosS0FBSyxDQUFDLGlCQUFpQixFQUFFLGtCQUFrQixFQUFFLHNCQUFzQixFQUFFLGtCQUFrQixDQUFDLENBQUM7UUFWbkYsa0JBQWEsR0FBRyxLQUFLLENBQUM7SUFXOUIs