UNPKG

rhizo-co-terraform-provider-oci

Version:

Prebuilt oci Provider for Terraform CDK (cdktf)

1,098 lines 177 kB
"use strict"; var _a, _b, _c, _d, _e, _f, _g; Object.defineProperty(exports, "__esModule", { value: true }); exports.DatabaseManagementDatabaseDbmFeaturesManagement = exports.DatabaseManagementDatabaseDbmFeaturesManagementTimeoutsOutputReference = exports.databaseManagementDatabaseDbmFeaturesManagementTimeoutsToHclTerraform = exports.databaseManagementDatabaseDbmFeaturesManagementTimeoutsToTerraform = exports.DatabaseManagementDatabaseDbmFeaturesManagementFeatureDetailsOutputReference = exports.databaseManagementDatabaseDbmFeaturesManagementFeatureDetailsToHclTerraform = exports.databaseManagementDatabaseDbmFeaturesManagementFeatureDetailsToTerraform = exports.DatabaseManagementDatabaseDbmFeaturesManagementFeatureDetailsDatabaseConnectionDetailsOutputReference = exports.databaseManagementDatabaseDbmFeaturesManagementFeatureDetailsDatabaseConnectionDetailsToHclTerraform = exports.databaseManagementDatabaseDbmFeaturesManagementFeatureDetailsDatabaseConnectionDetailsToTerraform = exports.DatabaseManagementDatabaseDbmFeaturesManagementFeatureDetailsDatabaseConnectionDetailsConnectionStringOutputReference = exports.databaseManagementDatabaseDbmFeaturesManagementFeatureDetailsDatabaseConnectionDetailsConnectionStringToHclTerraform = exports.databaseManagementDatabaseDbmFeaturesManagementFeatureDetailsDatabaseConnectionDetailsConnectionStringToTerraform = exports.DatabaseManagementDatabaseDbmFeaturesManagementFeatureDetailsDatabaseConnectionDetailsConnectionCredentialsOutputReference = exports.databaseManagementDatabaseDbmFeaturesManagementFeatureDetailsDatabaseConnectionDetailsConnectionCredentialsToHclTerraform = exports.databaseManagementDatabaseDbmFeaturesManagementFeatureDetailsDatabaseConnectionDetailsConnectionCredentialsToTerraform = exports.DatabaseManagementDatabaseDbmFeaturesManagementFeatureDetailsConnectorDetailsOutputReference = exports.databaseManagementDatabaseDbmFeaturesManagementFeatureDetailsConnectorDetailsToHclTerraform = exports.databaseManagementDatabaseDbmFeaturesManagementFeatureDetailsConnectorDetailsToTerraform = void 0; const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti"); const cdktf = require("cdktf"); function databaseManagementDatabaseDbmFeaturesManagementFeatureDetailsConnectorDetailsToTerraform(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 { connector_type: cdktf.stringToTerraform(struct.connectorType), database_connector_id: cdktf.stringToTerraform(struct.databaseConnectorId), management_agent_id: cdktf.stringToTerraform(struct.managementAgentId), private_end_point_id: cdktf.stringToTerraform(struct.privateEndPointId), }; } exports.databaseManagementDatabaseDbmFeaturesManagementFeatureDetailsConnectorDetailsToTerraform = databaseManagementDatabaseDbmFeaturesManagementFeatureDetailsConnectorDetailsToTerraform; function databaseManagementDatabaseDbmFeaturesManagementFeatureDetailsConnectorDetailsToHclTerraform(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 = { connector_type: { value: cdktf.stringToHclTerraform(struct.connectorType), isBlock: false, type: "simple", storageClassType: "string", }, database_connector_id: { value: cdktf.stringToHclTerraform(struct.databaseConnectorId), isBlock: false, type: "simple", storageClassType: "string", }, management_agent_id: { value: cdktf.stringToHclTerraform(struct.managementAgentId), isBlock: false, type: "simple", storageClassType: "string", }, private_end_point_id: { value: cdktf.stringToHclTerraform(struct.privateEndPointId), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.databaseManagementDatabaseDbmFeaturesManagementFeatureDetailsConnectorDetailsToHclTerraform = databaseManagementDatabaseDbmFeaturesManagementFeatureDetailsConnectorDetailsToHclTerraform; class DatabaseManagementDatabaseDbmFeaturesManagementFeatureDetailsConnectorDetailsOutputReference 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._connectorType !== undefined) { hasAnyValues = true; internalValueResult.connectorType = this._connectorType; } if (this._databaseConnectorId !== undefined) { hasAnyValues = true; internalValueResult.databaseConnectorId = this._databaseConnectorId; } if (this._managementAgentId !== undefined) { hasAnyValues = true; internalValueResult.managementAgentId = this._managementAgentId; } if (this._privateEndPointId !== undefined) { hasAnyValues = true; internalValueResult.privateEndPointId = this._privateEndPointId; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._connectorType = undefined; this._databaseConnectorId = undefined; this._managementAgentId = undefined; this._privateEndPointId = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._connectorType = value.connectorType; this._databaseConnectorId = value.databaseConnectorId; this._managementAgentId = value.managementAgentId; this._privateEndPointId = value.privateEndPointId; } } get connectorType() { return this.getStringAttribute('connector_type'); } set connectorType(value) { this._connectorType = value; } resetConnectorType() { this._connectorType = undefined; } // Temporarily expose input value. Use with caution. get connectorTypeInput() { return this._connectorType; } get databaseConnectorId() { return this.getStringAttribute('database_connector_id'); } set databaseConnectorId(value) { this._databaseConnectorId = value; } resetDatabaseConnectorId() { this._databaseConnectorId = undefined; } // Temporarily expose input value. Use with caution. get databaseConnectorIdInput() { return this._databaseConnectorId; } get managementAgentId() { return this.getStringAttribute('management_agent_id'); } set managementAgentId(value) { this._managementAgentId = value; } resetManagementAgentId() { this._managementAgentId = undefined; } // Temporarily expose input value. Use with caution. get managementAgentIdInput() { return this._managementAgentId; } get privateEndPointId() { return this.getStringAttribute('private_end_point_id'); } set privateEndPointId(value) { this._privateEndPointId = value; } resetPrivateEndPointId() { this._privateEndPointId = undefined; } // Temporarily expose input value. Use with caution. get privateEndPointIdInput() { return this._privateEndPointId; } } exports.DatabaseManagementDatabaseDbmFeaturesManagementFeatureDetailsConnectorDetailsOutputReference = DatabaseManagementDatabaseDbmFeaturesManagementFeatureDetailsConnectorDetailsOutputReference; _a = JSII_RTTI_SYMBOL_1; DatabaseManagementDatabaseDbmFeaturesManagementFeatureDetailsConnectorDetailsOutputReference[_a] = { fqn: "rhizo-co-terraform-provider-oci.databaseManagementDatabaseDbmFeaturesManagement.DatabaseManagementDatabaseDbmFeaturesManagementFeatureDetailsConnectorDetailsOutputReference", version: "1.0.0" }; function databaseManagementDatabaseDbmFeaturesManagementFeatureDetailsDatabaseConnectionDetailsConnectionCredentialsToTerraform(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 { credential_name: cdktf.stringToTerraform(struct.credentialName), credential_type: cdktf.stringToTerraform(struct.credentialType), named_credential_id: cdktf.stringToTerraform(struct.namedCredentialId), password_secret_id: cdktf.stringToTerraform(struct.passwordSecretId), role: cdktf.stringToTerraform(struct.role), ssl_secret_id: cdktf.stringToTerraform(struct.sslSecretId), user_name: cdktf.stringToTerraform(struct.userName), }; } exports.databaseManagementDatabaseDbmFeaturesManagementFeatureDetailsDatabaseConnectionDetailsConnectionCredentialsToTerraform = databaseManagementDatabaseDbmFeaturesManagementFeatureDetailsDatabaseConnectionDetailsConnectionCredentialsToTerraform; function databaseManagementDatabaseDbmFeaturesManagementFeatureDetailsDatabaseConnectionDetailsConnectionCredentialsToHclTerraform(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 = { credential_name: { value: cdktf.stringToHclTerraform(struct.credentialName), isBlock: false, type: "simple", storageClassType: "string", }, credential_type: { value: cdktf.stringToHclTerraform(struct.credentialType), isBlock: false, type: "simple", storageClassType: "string", }, named_credential_id: { value: cdktf.stringToHclTerraform(struct.namedCredentialId), isBlock: false, type: "simple", storageClassType: "string", }, password_secret_id: { value: cdktf.stringToHclTerraform(struct.passwordSecretId), isBlock: false, type: "simple", storageClassType: "string", }, role: { value: cdktf.stringToHclTerraform(struct.role), isBlock: false, type: "simple", storageClassType: "string", }, ssl_secret_id: { value: cdktf.stringToHclTerraform(struct.sslSecretId), isBlock: false, type: "simple", storageClassType: "string", }, user_name: { value: cdktf.stringToHclTerraform(struct.userName), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.databaseManagementDatabaseDbmFeaturesManagementFeatureDetailsDatabaseConnectionDetailsConnectionCredentialsToHclTerraform = databaseManagementDatabaseDbmFeaturesManagementFeatureDetailsDatabaseConnectionDetailsConnectionCredentialsToHclTerraform; class DatabaseManagementDatabaseDbmFeaturesManagementFeatureDetailsDatabaseConnectionDetailsConnectionCredentialsOutputReference 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._credentialName !== undefined) { hasAnyValues = true; internalValueResult.credentialName = this._credentialName; } if (this._credentialType !== undefined) { hasAnyValues = true; internalValueResult.credentialType = this._credentialType; } if (this._namedCredentialId !== undefined) { hasAnyValues = true; internalValueResult.namedCredentialId = this._namedCredentialId; } if (this._passwordSecretId !== undefined) { hasAnyValues = true; internalValueResult.passwordSecretId = this._passwordSecretId; } if (this._role !== undefined) { hasAnyValues = true; internalValueResult.role = this._role; } if (this._sslSecretId !== undefined) { hasAnyValues = true; internalValueResult.sslSecretId = this._sslSecretId; } if (this._userName !== undefined) { hasAnyValues = true; internalValueResult.userName = this._userName; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._credentialName = undefined; this._credentialType = undefined; this._namedCredentialId = undefined; this._passwordSecretId = undefined; this._role = undefined; this._sslSecretId = undefined; this._userName = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._credentialName = value.credentialName; this._credentialType = value.credentialType; this._namedCredentialId = value.namedCredentialId; this._passwordSecretId = value.passwordSecretId; this._role = value.role; this._sslSecretId = value.sslSecretId; this._userName = value.userName; } } get credentialName() { return this.getStringAttribute('credential_name'); } set credentialName(value) { this._credentialName = value; } resetCredentialName() { this._credentialName = undefined; } // Temporarily expose input value. Use with caution. get credentialNameInput() { return this._credentialName; } get credentialType() { return this.getStringAttribute('credential_type'); } set credentialType(value) { this._credentialType = value; } resetCredentialType() { this._credentialType = undefined; } // Temporarily expose input value. Use with caution. get credentialTypeInput() { return this._credentialType; } get namedCredentialId() { return this.getStringAttribute('named_credential_id'); } set namedCredentialId(value) { this._namedCredentialId = value; } resetNamedCredentialId() { this._namedCredentialId = undefined; } // Temporarily expose input value. Use with caution. get namedCredentialIdInput() { return this._namedCredentialId; } get passwordSecretId() { return this.getStringAttribute('password_secret_id'); } set passwordSecretId(value) { this._passwordSecretId = value; } resetPasswordSecretId() { this._passwordSecretId = undefined; } // Temporarily expose input value. Use with caution. get passwordSecretIdInput() { return this._passwordSecretId; } get role() { return this.getStringAttribute('role'); } set role(value) { this._role = value; } resetRole() { this._role = undefined; } // Temporarily expose input value. Use with caution. get roleInput() { return this._role; } get sslSecretId() { return this.getStringAttribute('ssl_secret_id'); } set sslSecretId(value) { this._sslSecretId = value; } resetSslSecretId() { this._sslSecretId = undefined; } // Temporarily expose input value. Use with caution. get sslSecretIdInput() { return this._sslSecretId; } get userName() { return this.getStringAttribute('user_name'); } set userName(value) { this._userName = value; } resetUserName() { this._userName = undefined; } // Temporarily expose input value. Use with caution. get userNameInput() { return this._userName; } } exports.DatabaseManagementDatabaseDbmFeaturesManagementFeatureDetailsDatabaseConnectionDetailsConnectionCredentialsOutputReference = DatabaseManagementDatabaseDbmFeaturesManagementFeatureDetailsDatabaseConnectionDetailsConnectionCredentialsOutputReference; _b = JSII_RTTI_SYMBOL_1; DatabaseManagementDatabaseDbmFeaturesManagementFeatureDetailsDatabaseConnectionDetailsConnectionCredentialsOutputReference[_b] = { fqn: "rhizo-co-terraform-provider-oci.databaseManagementDatabaseDbmFeaturesManagement.DatabaseManagementDatabaseDbmFeaturesManagementFeatureDetailsDatabaseConnectionDetailsConnectionCredentialsOutputReference", version: "1.0.0" }; function databaseManagementDatabaseDbmFeaturesManagementFeatureDetailsDatabaseConnectionDetailsConnectionStringToTerraform(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 { connection_type: cdktf.stringToTerraform(struct.connectionType), port: cdktf.numberToTerraform(struct.port), protocol: cdktf.stringToTerraform(struct.protocol), service: cdktf.stringToTerraform(struct.service), }; } exports.databaseManagementDatabaseDbmFeaturesManagementFeatureDetailsDatabaseConnectionDetailsConnectionStringToTerraform = databaseManagementDatabaseDbmFeaturesManagementFeatureDetailsDatabaseConnectionDetailsConnectionStringToTerraform; function databaseManagementDatabaseDbmFeaturesManagementFeatureDetailsDatabaseConnectionDetailsConnectionStringToHclTerraform(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 = { connection_type: { value: cdktf.stringToHclTerraform(struct.connectionType), isBlock: false, type: "simple", storageClassType: "string", }, port: { value: cdktf.numberToHclTerraform(struct.port), isBlock: false, type: "simple", storageClassType: "number", }, protocol: { value: cdktf.stringToHclTerraform(struct.protocol), isBlock: false, type: "simple", storageClassType: "string", }, service: { value: cdktf.stringToHclTerraform(struct.service), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.databaseManagementDatabaseDbmFeaturesManagementFeatureDetailsDatabaseConnectionDetailsConnectionStringToHclTerraform = databaseManagementDatabaseDbmFeaturesManagementFeatureDetailsDatabaseConnectionDetailsConnectionStringToHclTerraform; class DatabaseManagementDatabaseDbmFeaturesManagementFeatureDetailsDatabaseConnectionDetailsConnectionStringOutputReference 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._connectionType !== undefined) { hasAnyValues = true; internalValueResult.connectionType = this._connectionType; } if (this._port !== undefined) { hasAnyValues = true; internalValueResult.port = this._port; } if (this._protocol !== undefined) { hasAnyValues = true; internalValueResult.protocol = this._protocol; } if (this._service !== undefined) { hasAnyValues = true; internalValueResult.service = this._service; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._connectionType = undefined; this._port = undefined; this._protocol = undefined; this._service = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._connectionType = value.connectionType; this._port = value.port; this._protocol = value.protocol; this._service = value.service; } } get connectionType() { return this.getStringAttribute('connection_type'); } set connectionType(value) { this._connectionType = value; } resetConnectionType() { this._connectionType = undefined; } // Temporarily expose input value. Use with caution. get connectionTypeInput() { return this._connectionType; } get port() { return this.getNumberAttribute('port'); } set port(value) { this._port = value; } resetPort() { this._port = undefined; } // Temporarily expose input value. Use with caution. get portInput() { return this._port; } get protocol() { return this.getStringAttribute('protocol'); } set protocol(value) { this._protocol = value; } resetProtocol() { this._protocol = undefined; } // Temporarily expose input value. Use with caution. get protocolInput() { return this._protocol; } get service() { return this.getStringAttribute('service'); } set service(value) { this._service = value; } resetService() { this._service = undefined; } // Temporarily expose input value. Use with caution. get serviceInput() { return this._service; } } exports.DatabaseManagementDatabaseDbmFeaturesManagementFeatureDetailsDatabaseConnectionDetailsConnectionStringOutputReference = DatabaseManagementDatabaseDbmFeaturesManagementFeatureDetailsDatabaseConnectionDetailsConnectionStringOutputReference; _c = JSII_RTTI_SYMBOL_1; DatabaseManagementDatabaseDbmFeaturesManagementFeatureDetailsDatabaseConnectionDetailsConnectionStringOutputReference[_c] = { fqn: "rhizo-co-terraform-provider-oci.databaseManagementDatabaseDbmFeaturesManagement.DatabaseManagementDatabaseDbmFeaturesManagementFeatureDetailsDatabaseConnectionDetailsConnectionStringOutputReference", version: "1.0.0" }; function databaseManagementDatabaseDbmFeaturesManagementFeatureDetailsDatabaseConnectionDetailsToTerraform(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 { connection_credentials: databaseManagementDatabaseDbmFeaturesManagementFeatureDetailsDatabaseConnectionDetailsConnectionCredentialsToTerraform(struct.connectionCredentials), connection_string: databaseManagementDatabaseDbmFeaturesManagementFeatureDetailsDatabaseConnectionDetailsConnectionStringToTerraform(struct.connectionString), }; } exports.databaseManagementDatabaseDbmFeaturesManagementFeatureDetailsDatabaseConnectionDetailsToTerraform = databaseManagementDatabaseDbmFeaturesManagementFeatureDetailsDatabaseConnectionDetailsToTerraform; function databaseManagementDatabaseDbmFeaturesManagementFeatureDetailsDatabaseConnectionDetailsToHclTerraform(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 = { connection_credentials: { value: databaseManagementDatabaseDbmFeaturesManagementFeatureDetailsDatabaseConnectionDetailsConnectionCredentialsToHclTerraform(struct.connectionCredentials), isBlock: true, type: "list", storageClassType: "DatabaseManagementDatabaseDbmFeaturesManagementFeatureDetailsDatabaseConnectionDetailsConnectionCredentialsList", }, connection_string: { value: databaseManagementDatabaseDbmFeaturesManagementFeatureDetailsDatabaseConnectionDetailsConnectionStringToHclTerraform(struct.connectionString), isBlock: true, type: "list", storageClassType: "DatabaseManagementDatabaseDbmFeaturesManagementFeatureDetailsDatabaseConnectionDetailsConnectionStringList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.databaseManagementDatabaseDbmFeaturesManagementFeatureDetailsDatabaseConnectionDetailsToHclTerraform = databaseManagementDatabaseDbmFeaturesManagementFeatureDetailsDatabaseConnectionDetailsToHclTerraform; class DatabaseManagementDatabaseDbmFeaturesManagementFeatureDetailsDatabaseConnectionDetailsOutputReference 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; // connection_credentials - computed: false, optional: true, required: false this._connectionCredentials = new DatabaseManagementDatabaseDbmFeaturesManagementFeatureDetailsDatabaseConnectionDetailsConnectionCredentialsOutputReference(this, "connection_credentials"); // connection_string - computed: false, optional: true, required: false this._connectionString = new DatabaseManagementDatabaseDbmFeaturesManagementFeatureDetailsDatabaseConnectionDetailsConnectionStringOutputReference(this, "connection_string"); } get internalValue() { let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._connectionCredentials?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.connectionCredentials = this._connectionCredentials?.internalValue; } if (this._connectionString?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.connectionString = this._connectionString?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._connectionCredentials.internalValue = undefined; this._connectionString.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._connectionCredentials.internalValue = value.connectionCredentials; this._connectionString.internalValue = value.connectionString; } } get connectionCredentials() { return this._connectionCredentials; } putConnectionCredentials(value) { this._connectionCredentials.internalValue = value; } resetConnectionCredentials() { this._connectionCredentials.internalValue = undefined; } // Temporarily expose input value. Use with caution. get connectionCredentialsInput() { return this._connectionCredentials.internalValue; } get connectionString() { return this._connectionString; } putConnectionString(value) { this._connectionString.internalValue = value; } resetConnectionString() { this._connectionString.internalValue = undefined; } // Temporarily expose input value. Use with caution. get connectionStringInput() { return this._connectionString.internalValue; } } exports.DatabaseManagementDatabaseDbmFeaturesManagementFeatureDetailsDatabaseConnectionDetailsOutputReference = DatabaseManagementDatabaseDbmFeaturesManagementFeatureDetailsDatabaseConnectionDetailsOutputReference; _d = JSII_RTTI_SYMBOL_1; DatabaseManagementDatabaseDbmFeaturesManagementFeatureDetailsDatabaseConnectionDetailsOutputReference[_d] = { fqn: "rhizo-co-terraform-provider-oci.databaseManagementDatabaseDbmFeaturesManagement.DatabaseManagementDatabaseDbmFeaturesManagementFeatureDetailsDatabaseConnectionDetailsOutputReference", version: "1.0.0" }; function databaseManagementDatabaseDbmFeaturesManagementFeatureDetailsToTerraform(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 { feature: cdktf.stringToTerraform(struct.feature), is_auto_enable_pluggable_database: cdktf.booleanToTerraform(struct.isAutoEnablePluggableDatabase), management_type: cdktf.stringToTerraform(struct.managementType), connector_details: databaseManagementDatabaseDbmFeaturesManagementFeatureDetailsConnectorDetailsToTerraform(struct.connectorDetails), database_connection_details: databaseManagementDatabaseDbmFeaturesManagementFeatureDetailsDatabaseConnectionDetailsToTerraform(struct.databaseConnectionDetails), }; } exports.databaseManagementDatabaseDbmFeaturesManagementFeatureDetailsToTerraform = databaseManagementDatabaseDbmFeaturesManagementFeatureDetailsToTerraform; function databaseManagementDatabaseDbmFeaturesManagementFeatureDetailsToHclTerraform(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 = { feature: { value: cdktf.stringToHclTerraform(struct.feature), isBlock: false, type: "simple", storageClassType: "string", }, is_auto_enable_pluggable_database: { value: cdktf.booleanToHclTerraform(struct.isAutoEnablePluggableDatabase), isBlock: false, type: "simple", storageClassType: "boolean", }, management_type: { value: cdktf.stringToHclTerraform(struct.managementType), isBlock: false, type: "simple", storageClassType: "string", }, connector_details: { value: databaseManagementDatabaseDbmFeaturesManagementFeatureDetailsConnectorDetailsToHclTerraform(struct.connectorDetails), isBlock: true, type: "list", storageClassType: "DatabaseManagementDatabaseDbmFeaturesManagementFeatureDetailsConnectorDetailsList", }, database_connection_details: { value: databaseManagementDatabaseDbmFeaturesManagementFeatureDetailsDatabaseConnectionDetailsToHclTerraform(struct.databaseConnectionDetails), isBlock: true, type: "list", storageClassType: "DatabaseManagementDatabaseDbmFeaturesManagementFeatureDetailsDatabaseConnectionDetailsList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.databaseManagementDatabaseDbmFeaturesManagementFeatureDetailsToHclTerraform = databaseManagementDatabaseDbmFeaturesManagementFeatureDetailsToHclTerraform; class DatabaseManagementDatabaseDbmFeaturesManagementFeatureDetailsOutputReference 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; // connector_details - computed: false, optional: true, required: false this._connectorDetails = new DatabaseManagementDatabaseDbmFeaturesManagementFeatureDetailsConnectorDetailsOutputReference(this, "connector_details"); // database_connection_details - computed: false, optional: true, required: false this._databaseConnectionDetails = new DatabaseManagementDatabaseDbmFeaturesManagementFeatureDetailsDatabaseConnectionDetailsOutputReference(this, "database_connection_details"); } get internalValue() { let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._feature !== undefined) { hasAnyValues = true; internalValueResult.feature = this._feature; } if (this._isAutoEnablePluggableDatabase !== undefined) { hasAnyValues = true; internalValueResult.isAutoEnablePluggableDatabase = this._isAutoEnablePluggableDatabase; } if (this._managementType !== undefined) { hasAnyValues = true; internalValueResult.managementType = this._managementType; } if (this._connectorDetails?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.connectorDetails = this._connectorDetails?.internalValue; } if (this._databaseConnectionDetails?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.databaseConnectionDetails = this._databaseConnectionDetails?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._feature = undefined; this._isAutoEnablePluggableDatabase = undefined; this._managementType = undefined; this._connectorDetails.internalValue = undefined; this._databaseConnectionDetails.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._feature = value.feature; this._isAutoEnablePluggableDatabase = value.isAutoEnablePluggableDatabase; this._managementType = value.managementType; this._connectorDetails.internalValue = value.connectorDetails; this._databaseConnectionDetails.internalValue = value.databaseConnectionDetails; } } get feature() { return this.getStringAttribute('feature'); } set feature(value) { this._feature = value; } // Temporarily expose input value. Use with caution. get featureInput() { return this._feature; } get isAutoEnablePluggableDatabase() { return this.getBooleanAttribute('is_auto_enable_pluggable_database'); } set isAutoEnablePluggableDatabase(value) { this._isAutoEnablePluggableDatabase = value; } resetIsAutoEnablePluggableDatabase() { this._isAutoEnablePluggableDatabase = undefined; } // Temporarily expose input value. Use with caution. get isAutoEnablePluggableDatabaseInput() { return this._isAutoEnablePluggableDatabase; } get managementType() { return this.getStringAttribute('management_type'); } set managementType(value) { this._managementType = value; } resetManagementType() { this._managementType = undefined; } // Temporarily expose input value. Use with caution. get managementTypeInput() { return this._managementType; } get connectorDetails() { return this._connectorDetails; } putConnectorDetails(value) { this._connectorDetails.internalValue = value; } resetConnectorDetails() { this._connectorDetails.internalValue = undefined; } // Temporarily expose input value. Use with caution. get connectorDetailsInput() { return this._connectorDetails.internalValue; } get databaseConnectionDetails() { return this._databaseConnectionDetails; } putDatabaseConnectionDetails(value) { this._databaseConnectionDetails.internalValue = value; } resetDatabaseConnectionDetails() { this._databaseConnectionDetails.internalValue = undefined; } // Temporarily expose input value. Use with caution. get databaseConnectionDetailsInput() { return this._databaseConnectionDetails.internalValue; } } exports.DatabaseManagementDatabaseDbmFeaturesManagementFeatureDetailsOutputReference = DatabaseManagementDatabaseDbmFeaturesManagementFeatureDetailsOutputReference; _e = JSII_RTTI_SYMBOL_1; DatabaseManagementDatabaseDbmFeaturesManagementFeatureDetailsOutputReference[_e] = { fqn: "rhizo-co-terraform-provider-oci.databaseManagementDatabaseDbmFeaturesManagement.DatabaseManagementDatabaseDbmFeaturesManagementFeatureDetailsOutputReference", version: "1.0.0" }; function databaseManagementDatabaseDbmFeaturesManagementTimeoutsToTerraform(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.databaseManagementDatabaseDbmFeaturesManagementTimeoutsToTerraform = databaseManagementDatabaseDbmFeaturesManagementTimeoutsToTerraform; function databaseManagementDatabaseDbmFeaturesManagementTimeoutsToHclTerraform(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.databaseManagementDatabaseDbmFeaturesManagementTimeoutsToHclTerraform = databaseManagementDatabaseDbmFeaturesManagementTimeoutsToHclTerraform; class DatabaseManagementDatabaseDbmFeaturesManagementTimeoutsOutputReference 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.DatabaseManagementDatabaseDbmFeaturesManagementTimeoutsOutputReference = DatabaseManagementDatabaseDbmFeaturesManagementTimeoutsOutputReference; _f = JSII_RTTI_SYMBOL_1; DatabaseManagementDatabaseDbmFeaturesManagementTimeoutsOutputReference[_f] = { fqn: "rhizo-co-terraform-provider-oci.databaseManagementDatabaseDbmFeaturesManagement.DatabaseManagementDatabaseDbmFeaturesManagementTimeoutsOutputReference", version: "1.0.0" }; /** * Represents a {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/database_management_database_dbm_features_management oci_database_management_database_dbm_features_management} */ class DatabaseManagementDatabaseDbmFeaturesManagement extends cdktf.TerraformResource { // ============== // STATIC Methods // ============== /** * Generates CDKTF code for importing a DatabaseManagementDatabaseDbmFeaturesManagement 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 DatabaseManagementDatabaseDbmFeaturesManagement to import * @param importFromId The id of the existing DatabaseManagementDatabaseDbmFeaturesManagement that should be imported. Refer to the {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/database_management_database_dbm_features_management#import import section} in the documentation of this resource for the id to use * @param provider? Optional instance of the provider where the DatabaseManagementDatabaseDbmFeaturesManagement to import is found */ static generateConfigForImport(scope, importToId, importFromId, provider) { return new cdktf.ImportableResource(scope, importToId, { terraformResourceType: "oci_database_management_database_dbm_features_management", importId: importFromId, provider }); } // =========== // INITIALIZER // =========== /** * Create a new {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/database_management_database_dbm_features_management oci_database_management_database_dbm_features_management} 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 DatabaseManagementDatabaseDbmFeaturesManagementConfig */ constructor(scope, id, config) { super(scope, id, { terraformResourceType: 'oci_database_management_database_dbm_features_management', terraformGeneratorMetadata: { providerName: 'oci', providerVersion: '6.18.0', providerVersionConstraint: '~> 6.18.0' }, provider: config.provider, dependsOn: config.dependsOn, count: config.count, lifecycle: config.lifecycle, provisioners: config.provisioners, connection: config.connection, forEach: config.forEach }); // feature_details - computed: false, optional: true, required: false this._featureDetails = new DatabaseManagementDatabaseDbmFeaturesManagementFeatureDetailsOutputReference(this, "feature_details"); // timeouts - computed: false, optional: true, required: false this._timeouts = new DatabaseManagementDatabaseDbmFeaturesManagementTimeoutsOutputReference(this, "timeouts"); this._databaseId = config.databaseId; this._enableDatabaseDbmFeature = config.enableDatabaseDbmFeature; this._id = config.id; this._modifyDatabaseDbmFeature = config.modifyDatabaseDbmFeature; this._featureDetails.internalValue = config.featureDetails; this._timeouts.internalValue = config.timeouts; } get databaseId() { return this.getStringAttribute('database_id'); } set databaseId(value) { this._databaseId = value; } // Temporarily expose input value. Use with caution. get databaseIdInput() { return this._databaseId; } get enableDatabaseDbmFeature() { return this.getBooleanAttribute('enable_database_dbm_feature'); } set enableDatabaseDbmFeature(value) { this._enableDatabaseDbmFeature = value; } // Temporarily expose input value. Use with caution. get enableDatabaseDbmFeatureInput() { return this._enableDatabaseDbmFeature; } 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 modifyDatabaseDbmFeature() { return this.getBooleanAttribute('modify_database_dbm_feature'); } set modifyDatabaseDbmFeature(value) { this._modifyDatabaseDbmFeature = value; } resetModifyDatabaseDbmFeature() { this._modifyDatabaseDbmFeature = undefined; } // Temporarily expose input value. Use with caution. get modifyDatabaseDbmFeatureInput() { return this._modifyDatabaseDbmFeature; } get featureDetails() { return this._featureDetails; } putFeatureDetails(value) { this._featureDetails.internalValue = value; } resetFeatureDetails() { this._featureDetails.internalValue = undefined; } // Temporarily expose input value. Use with caution. get featureDetailsInput() { return this._featureDetails.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; } // ========= // SY