UNPKG

rhizo-co-terraform-provider-oci

Version:

Prebuilt oci Provider for Terraform CDK (cdktf)

1,169 lines 204 kB
"use strict"; var _a, _b, _c, _d, _e, _f, _g, _h; Object.defineProperty(exports, "__esModule", { value: true }); exports.DatabaseVmCluster = exports.DatabaseVmClusterTimeoutsOutputReference = exports.databaseVmClusterTimeoutsToHclTerraform = exports.databaseVmClusterTimeoutsToTerraform = exports.DatabaseVmClusterFileSystemConfigurationDetailsList = exports.DatabaseVmClusterFileSystemConfigurationDetailsOutputReference = exports.databaseVmClusterFileSystemConfigurationDetailsToHclTerraform = exports.databaseVmClusterFileSystemConfigurationDetailsToTerraform = exports.DatabaseVmClusterDataCollectionOptionsOutputReference = exports.databaseVmClusterDataCollectionOptionsToHclTerraform = exports.databaseVmClusterDataCollectionOptionsToTerraform = exports.DatabaseVmClusterCloudAutomationUpdateDetailsOutputReference = exports.databaseVmClusterCloudAutomationUpdateDetailsToHclTerraform = exports.databaseVmClusterCloudAutomationUpdateDetailsToTerraform = exports.DatabaseVmClusterCloudAutomationUpdateDetailsFreezePeriodOutputReference = exports.databaseVmClusterCloudAutomationUpdateDetailsFreezePeriodToHclTerraform = exports.databaseVmClusterCloudAutomationUpdateDetailsFreezePeriodToTerraform = exports.DatabaseVmClusterCloudAutomationUpdateDetailsApplyUpdateTimePreferenceOutputReference = exports.databaseVmClusterCloudAutomationUpdateDetailsApplyUpdateTimePreferenceToHclTerraform = exports.databaseVmClusterCloudAutomationUpdateDetailsApplyUpdateTimePreferenceToTerraform = void 0; const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti"); const cdktf = require("cdktf"); function databaseVmClusterCloudAutomationUpdateDetailsApplyUpdateTimePreferenceToTerraform(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 { apply_update_preferred_end_time: cdktf.stringToTerraform(struct.applyUpdatePreferredEndTime), apply_update_preferred_start_time: cdktf.stringToTerraform(struct.applyUpdatePreferredStartTime), }; } exports.databaseVmClusterCloudAutomationUpdateDetailsApplyUpdateTimePreferenceToTerraform = databaseVmClusterCloudAutomationUpdateDetailsApplyUpdateTimePreferenceToTerraform; function databaseVmClusterCloudAutomationUpdateDetailsApplyUpdateTimePreferenceToHclTerraform(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 = { apply_update_preferred_end_time: { value: cdktf.stringToHclTerraform(struct.applyUpdatePreferredEndTime), isBlock: false, type: "simple", storageClassType: "string", }, apply_update_preferred_start_time: { value: cdktf.stringToHclTerraform(struct.applyUpdatePreferredStartTime), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.databaseVmClusterCloudAutomationUpdateDetailsApplyUpdateTimePreferenceToHclTerraform = databaseVmClusterCloudAutomationUpdateDetailsApplyUpdateTimePreferenceToHclTerraform; class DatabaseVmClusterCloudAutomationUpdateDetailsApplyUpdateTimePreferenceOutputReference 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._applyUpdatePreferredEndTime !== undefined) { hasAnyValues = true; internalValueResult.applyUpdatePreferredEndTime = this._applyUpdatePreferredEndTime; } if (this._applyUpdatePreferredStartTime !== undefined) { hasAnyValues = true; internalValueResult.applyUpdatePreferredStartTime = this._applyUpdatePreferredStartTime; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._applyUpdatePreferredEndTime = undefined; this._applyUpdatePreferredStartTime = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._applyUpdatePreferredEndTime = value.applyUpdatePreferredEndTime; this._applyUpdatePreferredStartTime = value.applyUpdatePreferredStartTime; } } get applyUpdatePreferredEndTime() { return this.getStringAttribute('apply_update_preferred_end_time'); } set applyUpdatePreferredEndTime(value) { this._applyUpdatePreferredEndTime = value; } resetApplyUpdatePreferredEndTime() { this._applyUpdatePreferredEndTime = undefined; } // Temporarily expose input value. Use with caution. get applyUpdatePreferredEndTimeInput() { return this._applyUpdatePreferredEndTime; } get applyUpdatePreferredStartTime() { return this.getStringAttribute('apply_update_preferred_start_time'); } set applyUpdatePreferredStartTime(value) { this._applyUpdatePreferredStartTime = value; } resetApplyUpdatePreferredStartTime() { this._applyUpdatePreferredStartTime = undefined; } // Temporarily expose input value. Use with caution. get applyUpdatePreferredStartTimeInput() { return this._applyUpdatePreferredStartTime; } } exports.DatabaseVmClusterCloudAutomationUpdateDetailsApplyUpdateTimePreferenceOutputReference = DatabaseVmClusterCloudAutomationUpdateDetailsApplyUpdateTimePreferenceOutputReference; _a = JSII_RTTI_SYMBOL_1; DatabaseVmClusterCloudAutomationUpdateDetailsApplyUpdateTimePreferenceOutputReference[_a] = { fqn: "rhizo-co-terraform-provider-oci.databaseVmCluster.DatabaseVmClusterCloudAutomationUpdateDetailsApplyUpdateTimePreferenceOutputReference", version: "1.0.0" }; function databaseVmClusterCloudAutomationUpdateDetailsFreezePeriodToTerraform(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 { freeze_period_end_time: cdktf.stringToTerraform(struct.freezePeriodEndTime), freeze_period_start_time: cdktf.stringToTerraform(struct.freezePeriodStartTime), }; } exports.databaseVmClusterCloudAutomationUpdateDetailsFreezePeriodToTerraform = databaseVmClusterCloudAutomationUpdateDetailsFreezePeriodToTerraform; function databaseVmClusterCloudAutomationUpdateDetailsFreezePeriodToHclTerraform(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 = { freeze_period_end_time: { value: cdktf.stringToHclTerraform(struct.freezePeriodEndTime), isBlock: false, type: "simple", storageClassType: "string", }, freeze_period_start_time: { value: cdktf.stringToHclTerraform(struct.freezePeriodStartTime), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.databaseVmClusterCloudAutomationUpdateDetailsFreezePeriodToHclTerraform = databaseVmClusterCloudAutomationUpdateDetailsFreezePeriodToHclTerraform; class DatabaseVmClusterCloudAutomationUpdateDetailsFreezePeriodOutputReference 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._freezePeriodEndTime !== undefined) { hasAnyValues = true; internalValueResult.freezePeriodEndTime = this._freezePeriodEndTime; } if (this._freezePeriodStartTime !== undefined) { hasAnyValues = true; internalValueResult.freezePeriodStartTime = this._freezePeriodStartTime; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._freezePeriodEndTime = undefined; this._freezePeriodStartTime = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._freezePeriodEndTime = value.freezePeriodEndTime; this._freezePeriodStartTime = value.freezePeriodStartTime; } } get freezePeriodEndTime() { return this.getStringAttribute('freeze_period_end_time'); } set freezePeriodEndTime(value) { this._freezePeriodEndTime = value; } resetFreezePeriodEndTime() { this._freezePeriodEndTime = undefined; } // Temporarily expose input value. Use with caution. get freezePeriodEndTimeInput() { return this._freezePeriodEndTime; } get freezePeriodStartTime() { return this.getStringAttribute('freeze_period_start_time'); } set freezePeriodStartTime(value) { this._freezePeriodStartTime = value; } resetFreezePeriodStartTime() { this._freezePeriodStartTime = undefined; } // Temporarily expose input value. Use with caution. get freezePeriodStartTimeInput() { return this._freezePeriodStartTime; } } exports.DatabaseVmClusterCloudAutomationUpdateDetailsFreezePeriodOutputReference = DatabaseVmClusterCloudAutomationUpdateDetailsFreezePeriodOutputReference; _b = JSII_RTTI_SYMBOL_1; DatabaseVmClusterCloudAutomationUpdateDetailsFreezePeriodOutputReference[_b] = { fqn: "rhizo-co-terraform-provider-oci.databaseVmCluster.DatabaseVmClusterCloudAutomationUpdateDetailsFreezePeriodOutputReference", version: "1.0.0" }; function databaseVmClusterCloudAutomationUpdateDetailsToTerraform(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_early_adoption_enabled: cdktf.booleanToTerraform(struct.isEarlyAdoptionEnabled), is_freeze_period_enabled: cdktf.booleanToTerraform(struct.isFreezePeriodEnabled), apply_update_time_preference: databaseVmClusterCloudAutomationUpdateDetailsApplyUpdateTimePreferenceToTerraform(struct.applyUpdateTimePreference), freeze_period: databaseVmClusterCloudAutomationUpdateDetailsFreezePeriodToTerraform(struct.freezePeriod), }; } exports.databaseVmClusterCloudAutomationUpdateDetailsToTerraform = databaseVmClusterCloudAutomationUpdateDetailsToTerraform; function databaseVmClusterCloudAutomationUpdateDetailsToHclTerraform(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_early_adoption_enabled: { value: cdktf.booleanToHclTerraform(struct.isEarlyAdoptionEnabled), isBlock: false, type: "simple", storageClassType: "boolean", }, is_freeze_period_enabled: { value: cdktf.booleanToHclTerraform(struct.isFreezePeriodEnabled), isBlock: false, type: "simple", storageClassType: "boolean", }, apply_update_time_preference: { value: databaseVmClusterCloudAutomationUpdateDetailsApplyUpdateTimePreferenceToHclTerraform(struct.applyUpdateTimePreference), isBlock: true, type: "list", storageClassType: "DatabaseVmClusterCloudAutomationUpdateDetailsApplyUpdateTimePreferenceList", }, freeze_period: { value: databaseVmClusterCloudAutomationUpdateDetailsFreezePeriodToHclTerraform(struct.freezePeriod), isBlock: true, type: "list", storageClassType: "DatabaseVmClusterCloudAutomationUpdateDetailsFreezePeriodList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.databaseVmClusterCloudAutomationUpdateDetailsToHclTerraform = databaseVmClusterCloudAutomationUpdateDetailsToHclTerraform; class DatabaseVmClusterCloudAutomationUpdateDetailsOutputReference 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; // apply_update_time_preference - computed: false, optional: true, required: false this._applyUpdateTimePreference = new DatabaseVmClusterCloudAutomationUpdateDetailsApplyUpdateTimePreferenceOutputReference(this, "apply_update_time_preference"); // freeze_period - computed: false, optional: true, required: false this._freezePeriod = new DatabaseVmClusterCloudAutomationUpdateDetailsFreezePeriodOutputReference(this, "freeze_period"); } get internalValue() { let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._isEarlyAdoptionEnabled !== undefined) { hasAnyValues = true; internalValueResult.isEarlyAdoptionEnabled = this._isEarlyAdoptionEnabled; } if (this._isFreezePeriodEnabled !== undefined) { hasAnyValues = true; internalValueResult.isFreezePeriodEnabled = this._isFreezePeriodEnabled; } if (this._applyUpdateTimePreference?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.applyUpdateTimePreference = this._applyUpdateTimePreference?.internalValue; } if (this._freezePeriod?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.freezePeriod = this._freezePeriod?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._isEarlyAdoptionEnabled = undefined; this._isFreezePeriodEnabled = undefined; this._applyUpdateTimePreference.internalValue = undefined; this._freezePeriod.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._isEarlyAdoptionEnabled = value.isEarlyAdoptionEnabled; this._isFreezePeriodEnabled = value.isFreezePeriodEnabled; this._applyUpdateTimePreference.internalValue = value.applyUpdateTimePreference; this._freezePeriod.internalValue = value.freezePeriod; } } get isEarlyAdoptionEnabled() { return this.getBooleanAttribute('is_early_adoption_enabled'); } set isEarlyAdoptionEnabled(value) { this._isEarlyAdoptionEnabled = value; } resetIsEarlyAdoptionEnabled() { this._isEarlyAdoptionEnabled = undefined; } // Temporarily expose input value. Use with caution. get isEarlyAdoptionEnabledInput() { return this._isEarlyAdoptionEnabled; } get isFreezePeriodEnabled() { return this.getBooleanAttribute('is_freeze_period_enabled'); } set isFreezePeriodEnabled(value) { this._isFreezePeriodEnabled = value; } resetIsFreezePeriodEnabled() { this._isFreezePeriodEnabled = undefined; } // Temporarily expose input value. Use with caution. get isFreezePeriodEnabledInput() { return this._isFreezePeriodEnabled; } get applyUpdateTimePreference() { return this._applyUpdateTimePreference; } putApplyUpdateTimePreference(value) { this._applyUpdateTimePreference.internalValue = value; } resetApplyUpdateTimePreference() { this._applyUpdateTimePreference.internalValue = undefined; } // Temporarily expose input value. Use with caution. get applyUpdateTimePreferenceInput() { return this._applyUpdateTimePreference.internalValue; } get freezePeriod() { return this._freezePeriod; } putFreezePeriod(value) { this._freezePeriod.internalValue = value; } resetFreezePeriod() { this._freezePeriod.internalValue = undefined; } // Temporarily expose input value. Use with caution. get freezePeriodInput() { return this._freezePeriod.internalValue; } } exports.DatabaseVmClusterCloudAutomationUpdateDetailsOutputReference = DatabaseVmClusterCloudAutomationUpdateDetailsOutputReference; _c = JSII_RTTI_SYMBOL_1; DatabaseVmClusterCloudAutomationUpdateDetailsOutputReference[_c] = { fqn: "rhizo-co-terraform-provider-oci.databaseVmCluster.DatabaseVmClusterCloudAutomationUpdateDetailsOutputReference", version: "1.0.0" }; function databaseVmClusterDataCollectionOptionsToTerraform(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_diagnostics_events_enabled: cdktf.booleanToTerraform(struct.isDiagnosticsEventsEnabled), is_health_monitoring_enabled: cdktf.booleanToTerraform(struct.isHealthMonitoringEnabled), is_incident_logs_enabled: cdktf.booleanToTerraform(struct.isIncidentLogsEnabled), }; } exports.databaseVmClusterDataCollectionOptionsToTerraform = databaseVmClusterDataCollectionOptionsToTerraform; function databaseVmClusterDataCollectionOptionsToHclTerraform(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_diagnostics_events_enabled: { value: cdktf.booleanToHclTerraform(struct.isDiagnosticsEventsEnabled), isBlock: false, type: "simple", storageClassType: "boolean", }, is_health_monitoring_enabled: { value: cdktf.booleanToHclTerraform(struct.isHealthMonitoringEnabled), isBlock: false, type: "simple", storageClassType: "boolean", }, is_incident_logs_enabled: { value: cdktf.booleanToHclTerraform(struct.isIncidentLogsEnabled), isBlock: false, type: "simple", storageClassType: "boolean", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.databaseVmClusterDataCollectionOptionsToHclTerraform = databaseVmClusterDataCollectionOptionsToHclTerraform; class DatabaseVmClusterDataCollectionOptionsOutputReference 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._isDiagnosticsEventsEnabled !== undefined) { hasAnyValues = true; internalValueResult.isDiagnosticsEventsEnabled = this._isDiagnosticsEventsEnabled; } if (this._isHealthMonitoringEnabled !== undefined) { hasAnyValues = true; internalValueResult.isHealthMonitoringEnabled = this._isHealthMonitoringEnabled; } if (this._isIncidentLogsEnabled !== undefined) { hasAnyValues = true; internalValueResult.isIncidentLogsEnabled = this._isIncidentLogsEnabled; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._isDiagnosticsEventsEnabled = undefined; this._isHealthMonitoringEnabled = undefined; this._isIncidentLogsEnabled = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._isDiagnosticsEventsEnabled = value.isDiagnosticsEventsEnabled; this._isHealthMonitoringEnabled = value.isHealthMonitoringEnabled; this._isIncidentLogsEnabled = value.isIncidentLogsEnabled; } } get isDiagnosticsEventsEnabled() { return this.getBooleanAttribute('is_diagnostics_events_enabled'); } set isDiagnosticsEventsEnabled(value) { this._isDiagnosticsEventsEnabled = value; } resetIsDiagnosticsEventsEnabled() { this._isDiagnosticsEventsEnabled = undefined; } // Temporarily expose input value. Use with caution. get isDiagnosticsEventsEnabledInput() { return this._isDiagnosticsEventsEnabled; } get isHealthMonitoringEnabled() { return this.getBooleanAttribute('is_health_monitoring_enabled'); } set isHealthMonitoringEnabled(value) { this._isHealthMonitoringEnabled = value; } resetIsHealthMonitoringEnabled() { this._isHealthMonitoringEnabled = undefined; } // Temporarily expose input value. Use with caution. get isHealthMonitoringEnabledInput() { return this._isHealthMonitoringEnabled; } get isIncidentLogsEnabled() { return this.getBooleanAttribute('is_incident_logs_enabled'); } set isIncidentLogsEnabled(value) { this._isIncidentLogsEnabled = value; } resetIsIncidentLogsEnabled() { this._isIncidentLogsEnabled = undefined; } // Temporarily expose input value. Use with caution. get isIncidentLogsEnabledInput() { return this._isIncidentLogsEnabled; } } exports.DatabaseVmClusterDataCollectionOptionsOutputReference = DatabaseVmClusterDataCollectionOptionsOutputReference; _d = JSII_RTTI_SYMBOL_1; DatabaseVmClusterDataCollectionOptionsOutputReference[_d] = { fqn: "rhizo-co-terraform-provider-oci.databaseVmCluster.DatabaseVmClusterDataCollectionOptionsOutputReference", version: "1.0.0" }; function databaseVmClusterFileSystemConfigurationDetailsToTerraform(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 { file_system_size_gb: cdktf.numberToTerraform(struct.fileSystemSizeGb), mount_point: cdktf.stringToTerraform(struct.mountPoint), }; } exports.databaseVmClusterFileSystemConfigurationDetailsToTerraform = databaseVmClusterFileSystemConfigurationDetailsToTerraform; function databaseVmClusterFileSystemConfigurationDetailsToHclTerraform(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 = { file_system_size_gb: { value: cdktf.numberToHclTerraform(struct.fileSystemSizeGb), isBlock: false, type: "simple", storageClassType: "number", }, mount_point: { value: cdktf.stringToHclTerraform(struct.mountPoint), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.databaseVmClusterFileSystemConfigurationDetailsToHclTerraform = databaseVmClusterFileSystemConfigurationDetailsToHclTerraform; class DatabaseVmClusterFileSystemConfigurationDetailsOutputReference 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._fileSystemSizeGb !== undefined) { hasAnyValues = true; internalValueResult.fileSystemSizeGb = this._fileSystemSizeGb; } if (this._mountPoint !== undefined) { hasAnyValues = true; internalValueResult.mountPoint = this._mountPoint; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; this._fileSystemSizeGb = undefined; this._mountPoint = 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._fileSystemSizeGb = value.fileSystemSizeGb; this._mountPoint = value.mountPoint; } } get fileSystemSizeGb() { return this.getNumberAttribute('file_system_size_gb'); } set fileSystemSizeGb(value) { this._fileSystemSizeGb = value; } resetFileSystemSizeGb() { this._fileSystemSizeGb = undefined; } // Temporarily expose input value. Use with caution. get fileSystemSizeGbInput() { return this._fileSystemSizeGb; } get mountPoint() { return this.getStringAttribute('mount_point'); } set mountPoint(value) { this._mountPoint = value; } resetMountPoint() { this._mountPoint = undefined; } // Temporarily expose input value. Use with caution. get mountPointInput() { return this._mountPoint; } } exports.DatabaseVmClusterFileSystemConfigurationDetailsOutputReference = DatabaseVmClusterFileSystemConfigurationDetailsOutputReference; _e = JSII_RTTI_SYMBOL_1; DatabaseVmClusterFileSystemConfigurationDetailsOutputReference[_e] = { fqn: "rhizo-co-terraform-provider-oci.databaseVmCluster.DatabaseVmClusterFileSystemConfigurationDetailsOutputReference", version: "1.0.0" }; class DatabaseVmClusterFileSystemConfigurationDetailsList 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 DatabaseVmClusterFileSystemConfigurationDetailsOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } exports.DatabaseVmClusterFileSystemConfigurationDetailsList = DatabaseVmClusterFileSystemConfigurationDetailsList; _f = JSII_RTTI_SYMBOL_1; DatabaseVmClusterFileSystemConfigurationDetailsList[_f] = { fqn: "rhizo-co-terraform-provider-oci.databaseVmCluster.DatabaseVmClusterFileSystemConfigurationDetailsList", version: "1.0.0" }; function databaseVmClusterTimeoutsToTerraform(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.databaseVmClusterTimeoutsToTerraform = databaseVmClusterTimeoutsToTerraform; function databaseVmClusterTimeoutsToHclTerraform(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.databaseVmClusterTimeoutsToHclTerraform = databaseVmClusterTimeoutsToHclTerraform; class DatabaseVmClusterTimeoutsOutputReference 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.DatabaseVmClusterTimeoutsOutputReference = DatabaseVmClusterTimeoutsOutputReference; _g = JSII_RTTI_SYMBOL_1; DatabaseVmClusterTimeoutsOutputReference[_g] = { fqn: "rhizo-co-terraform-provider-oci.databaseVmCluster.DatabaseVmClusterTimeoutsOutputReference", version: "1.0.0" }; /** * Represents a {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/database_vm_cluster oci_database_vm_cluster} */ class DatabaseVmCluster extends cdktf.TerraformResource { // ============== // STATIC Methods // ============== /** * Generates CDKTF code for importing a DatabaseVmCluster 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 DatabaseVmCluster to import * @param importFromId The id of the existing DatabaseVmCluster that should be imported. Refer to the {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/database_vm_cluster#import import section} in the documentation of this resource for the id to use * @param provider? Optional instance of the provider where the DatabaseVmCluster to import is found */ static generateConfigForImport(scope, importToId, importFromId, provider) { return new cdktf.ImportableResource(scope, importToId, { terraformResourceType: "oci_database_vm_cluster", importId: importFromId, provider }); } // =========== // INITIALIZER // =========== /** * Create a new {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/database_vm_cluster oci_database_vm_cluster} 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 DatabaseVmClusterConfig */ constructor(scope, id, config) { super(scope, id, { terraformResourceType: 'oci_database_vm_cluster', 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 }); // cloud_automation_update_details - computed: false, optional: true, required: false this._cloudAutomationUpdateDetails = new DatabaseVmClusterCloudAutomationUpdateDetailsOutputReference(this, "cloud_automation_update_details"); // data_collection_options - computed: false, optional: true, required: false this._dataCollectionOptions = new DatabaseVmClusterDataCollectionOptionsOutputReference(this, "data_collection_options"); // file_system_configuration_details - computed: false, optional: true, required: false this._fileSystemConfigurationDetails = new DatabaseVmClusterFileSystemConfigurationDetailsList(this, "file_system_configuration_details", false); // timeouts - computed: false, optional: true, required: false this._timeouts = new DatabaseVmClusterTimeoutsOutputReference(this, "timeouts"); this._compartmentId = config.compartmentId; this._cpuCoreCount = config.cpuCoreCount; this._dataStorageSizeInGb = config.dataStorageSizeInGb; this._dataStorageSizeInTbs = config.dataStorageSizeInTbs; this._dbNodeStorageSizeInGbs = config.dbNodeStorageSizeInGbs; this._dbServers = config.dbServers; this._definedTags = config.definedTags; this._displayName = config.displayName; this._exadataInfrastructureId = config.exadataInfrastructureId; this._freeformTags = config.freeformTags; this._giVersion = config.giVersion; this._id = config.id; this._isLocalBackupEnabled = config.isLocalBackupEnabled; this._isSparseDiskgroupEnabled = config.isSparseDiskgroupEnabled; this._licenseModel = config.licenseModel; this._memorySizeInGbs = config.memorySizeInGbs; this._ocpuCount = config.ocpuCount; this._sshPublicKeys = config.sshPublicKeys; this._systemVersion = config.systemVersion; this._timeZone = config.timeZone; this._vmClusterNetworkId = config.vmClusterNetworkId; this._cloudAutomationUpdateDetails.internalValue = config.cloudAutomationUpdateDetails; this._dataCollectionOptions.internalValue = config.dataCollectionOptions; this._fileSystemConfigurationDetails.internalValue = config.fileSystemConfigurationDetails; this._timeouts.internalValue = config.timeouts; } // ========== // ATTRIBUTES // ========== // availability_domain - computed: true, optional: false, required: false get availabilityDomain() { return this.getStringAttribute('availability_domain'); } get compartmentId() { return this.getStringAttribute('compartment_id'); } set compartmentId(value) { this._compartmentId = value; } // Temporarily expose input value. Use with caution. get compartmentIdInput() { return this._compartmentId; } get cpuCoreCount() { return this.getNumberAttribute('cpu_core_count'); } set cpuCoreCount(value) { this._cpuCoreCount = value; } // Temporarily expose input value. Use with caution. get cpuCoreCountInput() { return this._cpuCoreCount; } // cpus_enabled - computed: true, optional: false, required: false get cpusEnabled() { return this.getNumberAttribute('cpus_enabled'); } get dataStorageSizeInGb() { return this.getNumberAttribute('data_storage_size_in_gb'); } set dataStorageSizeInGb(value) { this._dataStorageSizeInGb = value; } resetDataStorageSizeInGb() { this._dataStorageSizeInGb = undefined; } // Temporarily expose input value. Use with caution. get dataStorageSizeInGbInput() { return this._dataStorageSizeInGb; } get dataStorageSizeInTbs() { return this.getNumberAttribute('data_storage_size_in_tbs'); } set dataStorageSizeInTbs(value) { this._dataStorageSizeInTbs = value; } resetDataStorageSizeInTbs() { this._dataStorageSizeInTbs = undefined; } // Temporarily expose input value. Use with caution. get dataStorageSizeInTbsInput() { return this._dataStorageSizeInTbs; } get dbNodeStorageSizeInGbs() { return this.getNumberAttribute('db_node_storage_size_in_gbs'); } set dbNodeStorageSizeInGbs(value) { this._dbNodeStorageSizeInGbs = value; } resetDbNodeStorageSizeInGbs() { this._dbNodeStorageSizeInGbs = undefined; } // Temporarily expose input value. Use with caution. get dbNodeStorageSizeInGbsInput() { return this._dbNodeStorageSizeInGbs; } get dbServers() { return this.getListAttribute('db_servers'); } set dbServers(value) { this._dbServers = value; } resetDbServers() { this._dbServers = undefined; } // Temporarily expose input value. Use with caution. get dbServersInput() { return this._dbServers; } get definedTags() { return this.getStringMapAttribute('defined_tags'); } set definedTags(value) { this._definedTags = value; } resetDefinedTags() { this._definedTags = undefined; } // Temporarily expose input value. Use with caution. get definedTagsInput() { return this._definedTags; } get displayName() { return this.getStringAttribute('display_name'); } set displayName(value) { this._displayName = value; } // Temporarily expose input value. Use with caution. get displayNameInput() { return this._displayName; } get exadataInfrastructureId() { return this.getStringAttribute('exadata_infrastructure_id'); } set exadataInfrastructureId(value) { this._exadataInfrastructureId = value; } // Temporarily expose input value. Use with caution. get exadataInfrastructureIdInput() { return this._exadataInfrastructureId; } get freeformTags() { return this.getStringMapAttribute('freeform_tags'); } set freeformTags(value) { this._freeformTags = value; } resetFreeformTags() { this._freeformTags = undefined; } // Temporarily expose input value. Use with caution. get freeformTagsInput() { return this._freeformTags; } get giVersion() { return this.getStringAttribute('gi_version'); } set giVersion(value) { this._giVersion = value; } // Temporarily expose input value. Use with caution. get giVersionInput() { return this._giVersion; } 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 isLocalBackupEnabled() { return this.getBooleanAttribute('is_local_backup_enabled'); } set isLocalBackupEnabled(value) { this._isLocalBackupEnabled = value; } resetIsLocalBackupEnabled() { this._isLocalBackupEnabled = undefined; } // Temporarily expose input value. Use with caution. get isLocalBackupEnabledInput() { return this._isLocalBackupEnabled; } get isSparseDiskgroupEnabled() { return this.getBooleanAttribute('is_sparse_diskgroup_enabled'); } set isSparseDiskgroupEnabled(value) { this._isSparseDiskgroupEnabled = value; } resetIsSparseDiskgroupEnabled() { this._isSparseDiskgroupEnabled = undefined; } // Temporarily expose input value. Use with caution. get isSparseDiskgroupEnabledInput() { return this._isSparseDiskgroupEnabled; } // last_patch_history_entry_id - computed: true, optional: false, required: false get lastPatchHistoryEntryId() { return this.getStringAttribute('last_patch_history_entry_id'); } get licenseModel() { return this.getStringAttribute('license_model'); } set licenseModel(value) { this._licenseModel = value; } resetLicenseModel() { this._licenseModel = undefined; } // Temporarily expose input value. Use with caution. get licenseModelInput() { return this._licenseModel; } // lifecycle_details - computed: true, optional: false, required: false get lifecycleDetails() { return this.getStringAttribute('lifecycle_details'); } get memorySizeInGbs() { return this.getNumberAttribute('memory_size_in_gbs'); } set memorySizeInGbs(value) { this._memorySizeInGbs = value; } resetMemorySizeInGbs() { this._memorySizeInGbs = undefined; } // Temporarily expose input value. Use with caution. get memorySizeInGbsInput() { return this._memorySizeInGbs; } get ocpuCount() { return this.getNumberAttribute('ocpu_count'); } set ocpuCount(value) { this._ocpuCount = value; } resetOcpuCount() { this._ocpuCount = undefined; } // Temporarily expose input value. Use with caution. get ocpuCountInput() { return this._ocpuCount; } // ocpus_enabled - computed: true, optional: false, required: false get ocpusEnabled() { return this.getNumberAttribute('ocpus_enabled'); } // shape - computed: true, optional: false, required: false get shape() { return this.getStringAttribute('shape'); } get sshPublicKeys() { return cdktf.Fn.tolist(this.getListAttribute('ssh_public_keys')); } set sshPublicKeys(value) { this._sshPublicKeys = value; } // Temporarily expose input value. Use with caution. get sshPublicKeysInput() { return this._sshPublicKeys; } // state - computed: true, optional: false, required: false get state() { return this.getStringAttribute('state'); } get systemVersion() { return this.getStringAttribute('system_version'); } set systemVersion(value) { this._systemVersion = value; } resetSystemVersion() { this._systemVersion = undefined; } // Temporarily expose input value. Use with caution. get systemVersionInput() { return this._systemVersion; } // time_created - computed: true, optional: false, required: false get timeCreated() { return this.getStringAttribute('time_created'); } get timeZone() { return this.getStringAttribute('time_zone'); } set timeZone(value) { this._timeZone = value; } resetTimeZone() { this._timeZone = undefined; } // Temporarily expose input value. Use with caution. get timeZoneInput() { return this._timeZone; } get vmClusterNetworkId() { return this.getStringAttribute('vm_cluster_network_id'); } set vmClusterNetworkId(value) { this._vmClusterNetworkId = value; } // Temporarily expose input value. Use with caution. get vmClusterNetworkIdInput() { return this._vmClusterNetworkId; } get cloudAutomationUpdateDetails() { return this._cloudAutomationUpdateDetails; } putCloudAutomationUpdateDetails(value) { this._cloudAutomationUpdateDetails.internalValue = value; } resetCloudAutomationUpdateDetails() { this._cloudAutomationUpdateDetails.internalValue = undefined; } // Temporarily expose input value. Use with caution. get cloudAutomationUpdateDetailsInput() { return this._cloudAutomationUpdateDetails.internalValue; } get dataCollectionOptions() { return this._dataCollectionOptions; } putDataCollectionOptions(value) { this._dataCollectionOptions.internalValue = value; } resetDataCollectionOptions() { this._dataCollectionOptions.internalValue = undefined; } // Temporarily expose input value. Use with caution. get dataCollectionOptionsInput() { return this._dataCollectionOptions.internalValue; } get fileSystemConfigurationDetails() { return this._fileSystemConfigurationDetails; } putFileSystemConfigurationDetails(value) { this._fileSystemConfigurationDetails.internalValue = value; } resetFileSystemConfigurationDetails() { this._fileSystemConfigurationDetails.internalValue = undefined; } // Temporarily expose input value. Use with caution. get fileSystem