rhizo-co-terraform-provider-oci
Version:
Prebuilt oci Provider for Terraform CDK (cdktf)
1,086 lines • 177 kB
JavaScript
"use strict";
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m;
Object.defineProperty(exports, "__esModule", { value: true });
exports.DatabasePluggableDatabase = exports.DatabasePluggableDatabaseTimeoutsOutputReference = exports.databasePluggableDatabaseTimeoutsToHclTerraform = exports.databasePluggableDatabaseTimeoutsToTerraform = exports.DatabasePluggableDatabasePdbCreationTypeDetailsOutputReference = exports.databasePluggableDatabasePdbCreationTypeDetailsToHclTerraform = exports.databasePluggableDatabasePdbCreationTypeDetailsToTerraform = exports.DatabasePluggableDatabasePdbCreationTypeDetailsRefreshableCloneDetailsOutputReference = exports.databasePluggableDatabasePdbCreationTypeDetailsRefreshableCloneDetailsToHclTerraform = exports.databasePluggableDatabasePdbCreationTypeDetailsRefreshableCloneDetailsToTerraform = exports.DatabasePluggableDatabaseRefreshableCloneConfigList = exports.DatabasePluggableDatabaseRefreshableCloneConfigOutputReference = exports.databasePluggableDatabaseRefreshableCloneConfigToHclTerraform = exports.databasePluggableDatabaseRefreshableCloneConfigToTerraform = exports.DatabasePluggableDatabasePluggableDatabaseManagementConfigList = exports.DatabasePluggableDatabasePluggableDatabaseManagementConfigOutputReference = exports.databasePluggableDatabasePluggableDatabaseManagementConfigToHclTerraform = exports.databasePluggableDatabasePluggableDatabaseManagementConfigToTerraform = exports.DatabasePluggableDatabasePdbNodeLevelDetailsList = exports.DatabasePluggableDatabasePdbNodeLevelDetailsOutputReference = exports.databasePluggableDatabasePdbNodeLevelDetailsToHclTerraform = exports.databasePluggableDatabasePdbNodeLevelDetailsToTerraform = exports.DatabasePluggableDatabaseConnectionStringsList = exports.DatabasePluggableDatabaseConnectionStringsOutputReference = exports.databasePluggableDatabaseConnectionStringsToHclTerraform = exports.databasePluggableDatabaseConnectionStringsToTerraform = void 0;
const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
const cdktf = require("cdktf");
function databasePluggableDatabaseConnectionStringsToTerraform(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 {};
}
exports.databasePluggableDatabaseConnectionStringsToTerraform = databasePluggableDatabaseConnectionStringsToTerraform;
function databasePluggableDatabaseConnectionStringsToHclTerraform(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 = {};
return attrs;
}
exports.databasePluggableDatabaseConnectionStringsToHclTerraform = databasePluggableDatabaseConnectionStringsToHclTerraform;
class DatabasePluggableDatabaseConnectionStringsOutputReference 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;
// all_connection_strings - computed: true, optional: false, required: false
this._allConnectionStrings = new cdktf.StringMap(this, "all_connection_strings");
}
get internalValue() {
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
}
}
get allConnectionStrings() {
return this._allConnectionStrings;
}
// pdb_default - computed: true, optional: false, required: false
get pdbDefault() {
return this.getStringAttribute('pdb_default');
}
// pdb_ip_default - computed: true, optional: false, required: false
get pdbIpDefault() {
return this.getStringAttribute('pdb_ip_default');
}
}
exports.DatabasePluggableDatabaseConnectionStringsOutputReference = DatabasePluggableDatabaseConnectionStringsOutputReference;
_a = JSII_RTTI_SYMBOL_1;
DatabasePluggableDatabaseConnectionStringsOutputReference[_a] = { fqn: "rhizo-co-terraform-provider-oci.databasePluggableDatabase.DatabasePluggableDatabaseConnectionStringsOutputReference", version: "1.0.0" };
class DatabasePluggableDatabaseConnectionStringsList 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 DatabasePluggableDatabaseConnectionStringsOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet);
}
}
exports.DatabasePluggableDatabaseConnectionStringsList = DatabasePluggableDatabaseConnectionStringsList;
_b = JSII_RTTI_SYMBOL_1;
DatabasePluggableDatabaseConnectionStringsList[_b] = { fqn: "rhizo-co-terraform-provider-oci.databasePluggableDatabase.DatabasePluggableDatabaseConnectionStringsList", version: "1.0.0" };
function databasePluggableDatabasePdbNodeLevelDetailsToTerraform(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 {};
}
exports.databasePluggableDatabasePdbNodeLevelDetailsToTerraform = databasePluggableDatabasePdbNodeLevelDetailsToTerraform;
function databasePluggableDatabasePdbNodeLevelDetailsToHclTerraform(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 = {};
return attrs;
}
exports.databasePluggableDatabasePdbNodeLevelDetailsToHclTerraform = databasePluggableDatabasePdbNodeLevelDetailsToHclTerraform;
class DatabasePluggableDatabasePdbNodeLevelDetailsOutputReference 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() {
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
}
}
// node_name - computed: true, optional: false, required: false
get nodeName() {
return this.getStringAttribute('node_name');
}
// open_mode - computed: true, optional: false, required: false
get openMode() {
return this.getStringAttribute('open_mode');
}
}
exports.DatabasePluggableDatabasePdbNodeLevelDetailsOutputReference = DatabasePluggableDatabasePdbNodeLevelDetailsOutputReference;
_c = JSII_RTTI_SYMBOL_1;
DatabasePluggableDatabasePdbNodeLevelDetailsOutputReference[_c] = { fqn: "rhizo-co-terraform-provider-oci.databasePluggableDatabase.DatabasePluggableDatabasePdbNodeLevelDetailsOutputReference", version: "1.0.0" };
class DatabasePluggableDatabasePdbNodeLevelDetailsList 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 DatabasePluggableDatabasePdbNodeLevelDetailsOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet);
}
}
exports.DatabasePluggableDatabasePdbNodeLevelDetailsList = DatabasePluggableDatabasePdbNodeLevelDetailsList;
_d = JSII_RTTI_SYMBOL_1;
DatabasePluggableDatabasePdbNodeLevelDetailsList[_d] = { fqn: "rhizo-co-terraform-provider-oci.databasePluggableDatabase.DatabasePluggableDatabasePdbNodeLevelDetailsList", version: "1.0.0" };
function databasePluggableDatabasePluggableDatabaseManagementConfigToTerraform(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 {};
}
exports.databasePluggableDatabasePluggableDatabaseManagementConfigToTerraform = databasePluggableDatabasePluggableDatabaseManagementConfigToTerraform;
function databasePluggableDatabasePluggableDatabaseManagementConfigToHclTerraform(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 = {};
return attrs;
}
exports.databasePluggableDatabasePluggableDatabaseManagementConfigToHclTerraform = databasePluggableDatabasePluggableDatabaseManagementConfigToHclTerraform;
class DatabasePluggableDatabasePluggableDatabaseManagementConfigOutputReference 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() {
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
}
}
// management_status - computed: true, optional: false, required: false
get managementStatus() {
return this.getStringAttribute('management_status');
}
}
exports.DatabasePluggableDatabasePluggableDatabaseManagementConfigOutputReference = DatabasePluggableDatabasePluggableDatabaseManagementConfigOutputReference;
_e = JSII_RTTI_SYMBOL_1;
DatabasePluggableDatabasePluggableDatabaseManagementConfigOutputReference[_e] = { fqn: "rhizo-co-terraform-provider-oci.databasePluggableDatabase.DatabasePluggableDatabasePluggableDatabaseManagementConfigOutputReference", version: "1.0.0" };
class DatabasePluggableDatabasePluggableDatabaseManagementConfigList 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 DatabasePluggableDatabasePluggableDatabaseManagementConfigOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet);
}
}
exports.DatabasePluggableDatabasePluggableDatabaseManagementConfigList = DatabasePluggableDatabasePluggableDatabaseManagementConfigList;
_f = JSII_RTTI_SYMBOL_1;
DatabasePluggableDatabasePluggableDatabaseManagementConfigList[_f] = { fqn: "rhizo-co-terraform-provider-oci.databasePluggableDatabase.DatabasePluggableDatabasePluggableDatabaseManagementConfigList", version: "1.0.0" };
function databasePluggableDatabaseRefreshableCloneConfigToTerraform(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 {};
}
exports.databasePluggableDatabaseRefreshableCloneConfigToTerraform = databasePluggableDatabaseRefreshableCloneConfigToTerraform;
function databasePluggableDatabaseRefreshableCloneConfigToHclTerraform(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 = {};
return attrs;
}
exports.databasePluggableDatabaseRefreshableCloneConfigToHclTerraform = databasePluggableDatabaseRefreshableCloneConfigToHclTerraform;
class DatabasePluggableDatabaseRefreshableCloneConfigOutputReference 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() {
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
}
}
// is_refreshable_clone - computed: true, optional: false, required: false
get isRefreshableClone() {
return this.getBooleanAttribute('is_refreshable_clone');
}
}
exports.DatabasePluggableDatabaseRefreshableCloneConfigOutputReference = DatabasePluggableDatabaseRefreshableCloneConfigOutputReference;
_g = JSII_RTTI_SYMBOL_1;
DatabasePluggableDatabaseRefreshableCloneConfigOutputReference[_g] = { fqn: "rhizo-co-terraform-provider-oci.databasePluggableDatabase.DatabasePluggableDatabaseRefreshableCloneConfigOutputReference", version: "1.0.0" };
class DatabasePluggableDatabaseRefreshableCloneConfigList 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 DatabasePluggableDatabaseRefreshableCloneConfigOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet);
}
}
exports.DatabasePluggableDatabaseRefreshableCloneConfigList = DatabasePluggableDatabaseRefreshableCloneConfigList;
_h = JSII_RTTI_SYMBOL_1;
DatabasePluggableDatabaseRefreshableCloneConfigList[_h] = { fqn: "rhizo-co-terraform-provider-oci.databasePluggableDatabase.DatabasePluggableDatabaseRefreshableCloneConfigList", version: "1.0.0" };
function databasePluggableDatabasePdbCreationTypeDetailsRefreshableCloneDetailsToTerraform(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_refreshable_clone: cdktf.booleanToTerraform(struct.isRefreshableClone),
};
}
exports.databasePluggableDatabasePdbCreationTypeDetailsRefreshableCloneDetailsToTerraform = databasePluggableDatabasePdbCreationTypeDetailsRefreshableCloneDetailsToTerraform;
function databasePluggableDatabasePdbCreationTypeDetailsRefreshableCloneDetailsToHclTerraform(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_refreshable_clone: {
value: cdktf.booleanToHclTerraform(struct.isRefreshableClone),
isBlock: false,
type: "simple",
storageClassType: "boolean",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
exports.databasePluggableDatabasePdbCreationTypeDetailsRefreshableCloneDetailsToHclTerraform = databasePluggableDatabasePdbCreationTypeDetailsRefreshableCloneDetailsToHclTerraform;
class DatabasePluggableDatabasePdbCreationTypeDetailsRefreshableCloneDetailsOutputReference 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._isRefreshableClone !== undefined) {
hasAnyValues = true;
internalValueResult.isRefreshableClone = this._isRefreshableClone;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._isRefreshableClone = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._isRefreshableClone = value.isRefreshableClone;
}
}
get isRefreshableClone() {
return this.getBooleanAttribute('is_refreshable_clone');
}
set isRefreshableClone(value) {
this._isRefreshableClone = value;
}
resetIsRefreshableClone() {
this._isRefreshableClone = undefined;
}
// Temporarily expose input value. Use with caution.
get isRefreshableCloneInput() {
return this._isRefreshableClone;
}
}
exports.DatabasePluggableDatabasePdbCreationTypeDetailsRefreshableCloneDetailsOutputReference = DatabasePluggableDatabasePdbCreationTypeDetailsRefreshableCloneDetailsOutputReference;
_j = JSII_RTTI_SYMBOL_1;
DatabasePluggableDatabasePdbCreationTypeDetailsRefreshableCloneDetailsOutputReference[_j] = { fqn: "rhizo-co-terraform-provider-oci.databasePluggableDatabase.DatabasePluggableDatabasePdbCreationTypeDetailsRefreshableCloneDetailsOutputReference", version: "1.0.0" };
function databasePluggableDatabasePdbCreationTypeDetailsToTerraform(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 {
creation_type: cdktf.stringToTerraform(struct.creationType),
dblink_user_password: cdktf.stringToTerraform(struct.dblinkUserPassword),
dblink_username: cdktf.stringToTerraform(struct.dblinkUsername),
is_thin_clone: cdktf.booleanToTerraform(struct.isThinClone),
source_container_database_admin_password: cdktf.stringToTerraform(struct.sourceContainerDatabaseAdminPassword),
source_pluggable_database_id: cdktf.stringToTerraform(struct.sourcePluggableDatabaseId),
refreshable_clone_details: databasePluggableDatabasePdbCreationTypeDetailsRefreshableCloneDetailsToTerraform(struct.refreshableCloneDetails),
};
}
exports.databasePluggableDatabasePdbCreationTypeDetailsToTerraform = databasePluggableDatabasePdbCreationTypeDetailsToTerraform;
function databasePluggableDatabasePdbCreationTypeDetailsToHclTerraform(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 = {
creation_type: {
value: cdktf.stringToHclTerraform(struct.creationType),
isBlock: false,
type: "simple",
storageClassType: "string",
},
dblink_user_password: {
value: cdktf.stringToHclTerraform(struct.dblinkUserPassword),
isBlock: false,
type: "simple",
storageClassType: "string",
},
dblink_username: {
value: cdktf.stringToHclTerraform(struct.dblinkUsername),
isBlock: false,
type: "simple",
storageClassType: "string",
},
is_thin_clone: {
value: cdktf.booleanToHclTerraform(struct.isThinClone),
isBlock: false,
type: "simple",
storageClassType: "boolean",
},
source_container_database_admin_password: {
value: cdktf.stringToHclTerraform(struct.sourceContainerDatabaseAdminPassword),
isBlock: false,
type: "simple",
storageClassType: "string",
},
source_pluggable_database_id: {
value: cdktf.stringToHclTerraform(struct.sourcePluggableDatabaseId),
isBlock: false,
type: "simple",
storageClassType: "string",
},
refreshable_clone_details: {
value: databasePluggableDatabasePdbCreationTypeDetailsRefreshableCloneDetailsToHclTerraform(struct.refreshableCloneDetails),
isBlock: true,
type: "list",
storageClassType: "DatabasePluggableDatabasePdbCreationTypeDetailsRefreshableCloneDetailsList",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
exports.databasePluggableDatabasePdbCreationTypeDetailsToHclTerraform = databasePluggableDatabasePdbCreationTypeDetailsToHclTerraform;
class DatabasePluggableDatabasePdbCreationTypeDetailsOutputReference 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;
// refreshable_clone_details - computed: false, optional: true, required: false
this._refreshableCloneDetails = new DatabasePluggableDatabasePdbCreationTypeDetailsRefreshableCloneDetailsOutputReference(this, "refreshable_clone_details");
}
get internalValue() {
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
if (this._creationType !== undefined) {
hasAnyValues = true;
internalValueResult.creationType = this._creationType;
}
if (this._dblinkUserPassword !== undefined) {
hasAnyValues = true;
internalValueResult.dblinkUserPassword = this._dblinkUserPassword;
}
if (this._dblinkUsername !== undefined) {
hasAnyValues = true;
internalValueResult.dblinkUsername = this._dblinkUsername;
}
if (this._isThinClone !== undefined) {
hasAnyValues = true;
internalValueResult.isThinClone = this._isThinClone;
}
if (this._sourceContainerDatabaseAdminPassword !== undefined) {
hasAnyValues = true;
internalValueResult.sourceContainerDatabaseAdminPassword = this._sourceContainerDatabaseAdminPassword;
}
if (this._sourcePluggableDatabaseId !== undefined) {
hasAnyValues = true;
internalValueResult.sourcePluggableDatabaseId = this._sourcePluggableDatabaseId;
}
if (this._refreshableCloneDetails?.internalValue !== undefined) {
hasAnyValues = true;
internalValueResult.refreshableCloneDetails = this._refreshableCloneDetails?.internalValue;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._creationType = undefined;
this._dblinkUserPassword = undefined;
this._dblinkUsername = undefined;
this._isThinClone = undefined;
this._sourceContainerDatabaseAdminPassword = undefined;
this._sourcePluggableDatabaseId = undefined;
this._refreshableCloneDetails.internalValue = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._creationType = value.creationType;
this._dblinkUserPassword = value.dblinkUserPassword;
this._dblinkUsername = value.dblinkUsername;
this._isThinClone = value.isThinClone;
this._sourceContainerDatabaseAdminPassword = value.sourceContainerDatabaseAdminPassword;
this._sourcePluggableDatabaseId = value.sourcePluggableDatabaseId;
this._refreshableCloneDetails.internalValue = value.refreshableCloneDetails;
}
}
get creationType() {
return this.getStringAttribute('creation_type');
}
set creationType(value) {
this._creationType = value;
}
// Temporarily expose input value. Use with caution.
get creationTypeInput() {
return this._creationType;
}
get dblinkUserPassword() {
return this.getStringAttribute('dblink_user_password');
}
set dblinkUserPassword(value) {
this._dblinkUserPassword = value;
}
resetDblinkUserPassword() {
this._dblinkUserPassword = undefined;
}
// Temporarily expose input value. Use with caution.
get dblinkUserPasswordInput() {
return this._dblinkUserPassword;
}
get dblinkUsername() {
return this.getStringAttribute('dblink_username');
}
set dblinkUsername(value) {
this._dblinkUsername = value;
}
resetDblinkUsername() {
this._dblinkUsername = undefined;
}
// Temporarily expose input value. Use with caution.
get dblinkUsernameInput() {
return this._dblinkUsername;
}
get isThinClone() {
return this.getBooleanAttribute('is_thin_clone');
}
set isThinClone(value) {
this._isThinClone = value;
}
resetIsThinClone() {
this._isThinClone = undefined;
}
// Temporarily expose input value. Use with caution.
get isThinCloneInput() {
return this._isThinClone;
}
get sourceContainerDatabaseAdminPassword() {
return this.getStringAttribute('source_container_database_admin_password');
}
set sourceContainerDatabaseAdminPassword(value) {
this._sourceContainerDatabaseAdminPassword = value;
}
resetSourceContainerDatabaseAdminPassword() {
this._sourceContainerDatabaseAdminPassword = undefined;
}
// Temporarily expose input value. Use with caution.
get sourceContainerDatabaseAdminPasswordInput() {
return this._sourceContainerDatabaseAdminPassword;
}
get sourcePluggableDatabaseId() {
return this.getStringAttribute('source_pluggable_database_id');
}
set sourcePluggableDatabaseId(value) {
this._sourcePluggableDatabaseId = value;
}
// Temporarily expose input value. Use with caution.
get sourcePluggableDatabaseIdInput() {
return this._sourcePluggableDatabaseId;
}
get refreshableCloneDetails() {
return this._refreshableCloneDetails;
}
putRefreshableCloneDetails(value) {
this._refreshableCloneDetails.internalValue = value;
}
resetRefreshableCloneDetails() {
this._refreshableCloneDetails.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get refreshableCloneDetailsInput() {
return this._refreshableCloneDetails.internalValue;
}
}
exports.DatabasePluggableDatabasePdbCreationTypeDetailsOutputReference = DatabasePluggableDatabasePdbCreationTypeDetailsOutputReference;
_k = JSII_RTTI_SYMBOL_1;
DatabasePluggableDatabasePdbCreationTypeDetailsOutputReference[_k] = { fqn: "rhizo-co-terraform-provider-oci.databasePluggableDatabase.DatabasePluggableDatabasePdbCreationTypeDetailsOutputReference", version: "1.0.0" };
function databasePluggableDatabaseTimeoutsToTerraform(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.databasePluggableDatabaseTimeoutsToTerraform = databasePluggableDatabaseTimeoutsToTerraform;
function databasePluggableDatabaseTimeoutsToHclTerraform(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.databasePluggableDatabaseTimeoutsToHclTerraform = databasePluggableDatabaseTimeoutsToHclTerraform;
class DatabasePluggableDatabaseTimeoutsOutputReference 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.DatabasePluggableDatabaseTimeoutsOutputReference = DatabasePluggableDatabaseTimeoutsOutputReference;
_l = JSII_RTTI_SYMBOL_1;
DatabasePluggableDatabaseTimeoutsOutputReference[_l] = { fqn: "rhizo-co-terraform-provider-oci.databasePluggableDatabase.DatabasePluggableDatabaseTimeoutsOutputReference", version: "1.0.0" };
/**
* Represents a {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/database_pluggable_database oci_database_pluggable_database}
*/
class DatabasePluggableDatabase extends cdktf.TerraformResource {
// ==============
// STATIC Methods
// ==============
/**
* Generates CDKTF code for importing a DatabasePluggableDatabase 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 DatabasePluggableDatabase to import
* @param importFromId The id of the existing DatabasePluggableDatabase that should be imported. Refer to the {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/database_pluggable_database#import import section} in the documentation of this resource for the id to use
* @param provider? Optional instance of the provider where the DatabasePluggableDatabase to import is found
*/
static generateConfigForImport(scope, importToId, importFromId, provider) {
return new cdktf.ImportableResource(scope, importToId, { terraformResourceType: "oci_database_pluggable_database", importId: importFromId, provider });
}
// ===========
// INITIALIZER
// ===========
/**
* Create a new {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/database_pluggable_database oci_database_pluggable_database} 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 DatabasePluggableDatabaseConfig
*/
constructor(scope, id, config) {
super(scope, id, {
terraformResourceType: 'oci_database_pluggable_database',
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
});
// connection_strings - computed: true, optional: false, required: false
this._connectionStrings = new DatabasePluggableDatabaseConnectionStringsList(this, "connection_strings", false);
// pdb_node_level_details - computed: true, optional: false, required: false
this._pdbNodeLevelDetails = new DatabasePluggableDatabasePdbNodeLevelDetailsList(this, "pdb_node_level_details", false);
// pluggable_database_management_config - computed: true, optional: false, required: false
this._pluggableDatabaseManagementConfig = new DatabasePluggableDatabasePluggableDatabaseManagementConfigList(this, "pluggable_database_management_config", false);
// refreshable_clone_config - computed: true, optional: false, required: false
this._refreshableCloneConfig = new DatabasePluggableDatabaseRefreshableCloneConfigList(this, "refreshable_clone_config", false);
// pdb_creation_type_details - computed: false, optional: true, required: false
this._pdbCreationTypeDetails = new DatabasePluggableDatabasePdbCreationTypeDetailsOutputReference(this, "pdb_creation_type_details");
// timeouts - computed: false, optional: true, required: false
this._timeouts = new DatabasePluggableDatabaseTimeoutsOutputReference(this, "timeouts");
this._containerDatabaseAdminPassword = config.containerDatabaseAdminPassword;
this._containerDatabaseId = config.containerDatabaseId;
this._convertToRegularTrigger = config.convertToRegularTrigger;
this._definedTags = config.definedTags;
this._freeformTags = config.freeformTags;
this._id = config.id;
this._kmsKeyVersionId = config.kmsKeyVersionId;
this._pdbAdminPassword = config.pdbAdminPassword;
this._pdbName = config.pdbName;
this._refreshTrigger = config.refreshTrigger;
this._rotateKeyTrigger = config.rotateKeyTrigger;
this._shouldCreatePdbBackup = config.shouldCreatePdbBackup;
this._shouldPdbAdminAccountBeLocked = config.shouldPdbAdminAccountBeLocked;
this._tdeWalletPassword = config.tdeWalletPassword;
this._pdbCreationTypeDetails.internalValue = config.pdbCreationTypeDetails;
this._timeouts.internalValue = config.timeouts;
}
// ==========
// ATTRIBUTES
// ==========
// compartment_id - computed: true, optional: false, required: false
get compartmentId() {
return this.getStringAttribute('compartment_id');
}
get connectionStrings() {
return this._connectionStrings;
}
get containerDatabaseAdminPassword() {
return this.getStringAttribute('container_database_admin_password');
}
set containerDatabaseAdminPassword(value) {
this._containerDatabaseAdminPassword = value;
}
resetContainerDatabaseAdminPassword() {
this._containerDatabaseAdminPassword = undefined;
}
// Temporarily expose input value. Use with caution.
get containerDatabaseAdminPasswordInput() {
return this._containerDatabaseAdminPassword;
}
get containerDatabaseId() {
return this.getStringAttribute('container_database_id');
}
set containerDatabaseId(value) {
this._containerDatabaseId = value;
}
// Temporarily expose input value. Use with caution.
get containerDatabaseIdInput() {
return this._containerDatabaseId;
}
get convertToRegularTrigger() {
return this.getNumberAttribute('convert_to_regular_trigger');
}
set convertToRegularTrigger(value) {
this._convertToRegularTrigger = value;
}
resetConvertToRegularTrigger() {
this._convertToRegularTrigger = undefined;
}
// Temporarily expose input value. Use with caution.
get convertToRegularTriggerInput() {
return this._convertToRegularTrigger;
}
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 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 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;
}
// is_restricted - computed: true, optional: false, required: false
get isRestricted() {
return this.getBooleanAttribute('is_restricted');
}
get kmsKeyVersionId() {
return this.getStringAttribute('kms_key_version_id');
}
set kmsKeyVersionId(value) {
this._kmsKeyVersionId = value;
}
resetKmsKeyVersionId() {
this._kmsKeyVersionId = undefined;
}
// Temporarily expose input value. Use with caution.
get kmsKeyVersionIdInput() {
return this._kmsKeyVersionId;
}
// lifecycle_details - computed: true, optional: false, required: false
get lifecycleDetails() {
return this.getStringAttribute('lifecycle_details');
}
// open_mode - computed: true, optional: false, required: false
get openMode() {
return this.getStringAttribute('open_mode');
}
get pdbAdminPassword() {
return this.getStringAttribute('pdb_admin_password');
}
set pdbAdminPassword(value) {
this._pdbAdminPassword = value;
}
resetPdbAdminPassword() {
this._pdbAdminPassword = undefined;
}
// Temporarily expose input value. Use with caution.
get pdbAdminPasswordInput() {
return this._pdbAdminPassword;
}
get pdbName() {
return this.getStringAttribute('pdb_name');
}
set pdbName(value) {
this._pdbName = value;
}
// Temporarily expose input value. Use with caution.
get pdbNameInput() {
return this._pdbName;
}
get pdbNodeLevelDetails() {
return this._pdbNodeLevelDetails;
}
get pluggableDatabaseManagementConfig() {
return this._pluggableDatabaseManagementConfig;
}
get refreshTrigger() {
return this.getNumberAttribute('refresh_trigger');
}
set refreshTrigger(value) {
this._refreshTrigger = value;
}
resetRefreshTrigger() {
this._refreshTrigger = undefined;
}
// Temporarily expose input value. Use with caution.
get refreshTriggerInput() {
return this._refreshTrigger;
}
get refreshableCloneConfig() {
return this._refreshableCloneConfig;
}
get rotateKeyTrigger() {
return this.getNumberAttribute('rotate_key_trigger');
}
set rotateKeyTrigger(value) {
this._rotateKeyTrigger = value;
}
resetRotateKeyTrigger() {
this._rotateKeyTrigger = undefined;
}
// Temporarily expose input value. Use with caution.
get rotateKeyTriggerInput() {
return this._rotateKeyTrigger;
}
get shouldCreatePdbBackup() {
return this.getBooleanAttribute('should_create_pdb_backup');
}
set shouldCreatePdbBackup(value) {
this._shouldCreatePdbBackup = value;
}
resetShouldCreatePdbBackup() {
this._shouldCreatePdbBackup = undefined;
}
// Temporarily expose input value. Use with caution.
get shouldCreatePdbBackupInput() {
return this._shouldCreatePdbBackup;
}
get shouldPdbAdminAccountBeLocked() {
return this.getBooleanAttribute('should_pdb_admin_account_be_locked');
}
set shouldPdbAdminAccountBeLocked(value) {
this._shouldPdbAdminAccountBeLocked = value;
}
resetShouldPdbAdminAccountBeLocked() {
this._shouldPdbAdminAccountBeLocked = undefined;
}
// Temporarily expose input value. Use with caution.
get shouldPdbAdminAccountBeLockedInput() {
return this._shouldPdbAdminAccountBeLocked;
}
// state - computed: true, optional: false, required: false
get state() {
return this.getStringAttribute('state');
}
get tdeWalletPassword() {
return this.getStringAttribute('tde_wallet_password');
}
set tdeWalletPassword(value) {
this._tdeWalletPassword = value;
}
resetTdeWalletPassword() {
this._tdeWalletPassword = undefined;
}
// Temporarily expose input value. Use with caution.
get tdeWalletPasswordInput() {
return this._tdeWalletPassword;
}
// time_created - computed: true, optional: false, required: false
get timeCreated() {
return this.getStringAttribute('time_created');
}
get pdbCreationTypeDetails() {
return this._pdbCreationTypeDetails;
}
putPdbCreationTypeDetails(value) {
this._pdbCreationTypeDetails.internalValue = value;
}
resetPdbCreationTypeDetails() {
this._pdbCreationTypeDetails.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get pdbCreationTypeDetailsInput() {
return this._pdbCreationTypeDetails.internalValue;
}
get timeouts() {
return this._timeouts;
}
putTimeouts(value) {
this._timeouts.internalValue = value;
}
resetTimeouts() {
this._timeouts.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get timeoutsInput() {
return this._timeouts.internalValue;
}
// =========
// SYNTHESIS
// =========
synthesizeAttributes() {
return {
container_database_admin_password: cdktf.stringToTerraform(this._containerDatabaseAdminPassword),
container_database_id: cdktf.stringToTerraform(this._containerDatabaseId),
convert_to_regular_trigger: cdktf.numberToTerraform(this._convertToRegularTrigger),
defined_tags: cdktf.hashMapper(cdktf.stringToTerraform)(this._definedTags),
freeform_tags: cdktf.hashMapper(cdktf.stringToTerraform)(this._freeformTags),
id: cdktf.stringToTerraform(this._id),
kms_key_version_id: cdktf.stringToTerraform(this._kmsKeyVersionId),
pdb_admin_password: cdktf.