All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.pulumi.azurenative.documentdb.DatabaseAccount Maven / Gradle / Ivy

There is a newer version: 2.78.0
Show newest version
// *** WARNING: this file was generated by pulumi-java-gen. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***

package com.pulumi.azurenative.documentdb;

import com.pulumi.azurenative.Utilities;
import com.pulumi.azurenative.documentdb.DatabaseAccountArgs;
import com.pulumi.azurenative.documentdb.outputs.AnalyticalStorageConfigurationResponse;
import com.pulumi.azurenative.documentdb.outputs.ApiPropertiesResponse;
import com.pulumi.azurenative.documentdb.outputs.CapabilityResponse;
import com.pulumi.azurenative.documentdb.outputs.CapacityResponse;
import com.pulumi.azurenative.documentdb.outputs.ConsistencyPolicyResponse;
import com.pulumi.azurenative.documentdb.outputs.ContinuousModeBackupPolicyResponse;
import com.pulumi.azurenative.documentdb.outputs.CorsPolicyResponse;
import com.pulumi.azurenative.documentdb.outputs.DatabaseAccountKeysMetadataResponse;
import com.pulumi.azurenative.documentdb.outputs.FailoverPolicyResponse;
import com.pulumi.azurenative.documentdb.outputs.IpAddressOrRangeResponse;
import com.pulumi.azurenative.documentdb.outputs.LocationResponse;
import com.pulumi.azurenative.documentdb.outputs.ManagedServiceIdentityResponse;
import com.pulumi.azurenative.documentdb.outputs.PeriodicModeBackupPolicyResponse;
import com.pulumi.azurenative.documentdb.outputs.PrivateEndpointConnectionResponse;
import com.pulumi.azurenative.documentdb.outputs.RestoreParametersResponse;
import com.pulumi.azurenative.documentdb.outputs.SystemDataResponse;
import com.pulumi.azurenative.documentdb.outputs.VirtualNetworkRuleResponse;
import com.pulumi.core.Alias;
import com.pulumi.core.Either;
import com.pulumi.core.Output;
import com.pulumi.core.annotations.Export;
import com.pulumi.core.annotations.ResourceType;
import com.pulumi.core.internal.Codegen;
import java.lang.Boolean;
import java.lang.String;
import java.util.List;
import java.util.Map;
import java.util.Optional;
import javax.annotation.Nullable;

/**
 * An Azure Cosmos DB database account.
 * Azure REST API version: 2023-04-15. Prior API version in Azure Native 1.x: 2021-03-15.
 * 
 * Other available API versions: 2020-03-01, 2020-06-01-preview, 2020-09-01, 2021-04-01-preview, 2023-03-15-preview, 2023-09-15, 2023-09-15-preview, 2023-11-15, 2023-11-15-preview, 2024-02-15-preview, 2024-05-15, 2024-05-15-preview, 2024-08-15, 2024-09-01-preview.
 * 
 * ## Example Usage
 * ### CosmosDBDatabaseAccountCreateMin
 * 
 * 
 * {@code
 * package generated_program;
 * 
 * import com.pulumi.Context;
 * import com.pulumi.Pulumi;
 * import com.pulumi.core.Output;
 * import com.pulumi.azurenative.documentdb.DatabaseAccount;
 * import com.pulumi.azurenative.documentdb.DatabaseAccountArgs;
 * import com.pulumi.azurenative.documentdb.inputs.LocationArgs;
 * import java.util.List;
 * import java.util.ArrayList;
 * import java.util.Map;
 * import java.io.File;
 * import java.nio.file.Files;
 * import java.nio.file.Paths;
 * 
 * public class App {
 *     public static void main(String[] args) {
 *         Pulumi.run(App::stack);
 *     }
 * 
 *     public static void stack(Context ctx) {
 *         var databaseAccount = new DatabaseAccount("databaseAccount", DatabaseAccountArgs.builder()
 *             .accountName("ddb1")
 *             .createMode("Default")
 *             .databaseAccountOfferType("Standard")
 *             .location("westus")
 *             .locations(LocationArgs.builder()
 *                 .failoverPriority(0)
 *                 .isZoneRedundant(false)
 *                 .locationName("southcentralus")
 *                 .build())
 *             .resourceGroupName("rg1")
 *             .build());
 * 
 *     }
 * }
 * 
 * }
 * 
* ### CosmosDBRestoreDatabaseAccountCreateUpdate.json * *
 * {@code
 * package generated_program;
 * 
 * import com.pulumi.Context;
 * import com.pulumi.Pulumi;
 * import com.pulumi.core.Output;
 * import com.pulumi.azurenative.documentdb.DatabaseAccount;
 * import com.pulumi.azurenative.documentdb.DatabaseAccountArgs;
 * import com.pulumi.azurenative.documentdb.inputs.ApiPropertiesArgs;
 * import com.pulumi.azurenative.documentdb.inputs.ConsistencyPolicyArgs;
 * import com.pulumi.azurenative.documentdb.inputs.LocationArgs;
 * import com.pulumi.azurenative.documentdb.inputs.RestoreParametersArgs;
 * import java.util.List;
 * import java.util.ArrayList;
 * import java.util.Map;
 * import java.io.File;
 * import java.nio.file.Files;
 * import java.nio.file.Paths;
 * 
 * public class App {
 *     public static void main(String[] args) {
 *         Pulumi.run(App::stack);
 *     }
 * 
 *     public static void stack(Context ctx) {
 *         var databaseAccount = new DatabaseAccount("databaseAccount", DatabaseAccountArgs.builder()
 *             .accountName("ddb1")
 *             .apiProperties(ApiPropertiesArgs.builder()
 *                 .serverVersion("3.2")
 *                 .build())
 *             .backupPolicy(ContinuousModeBackupPolicyArgs.builder()
 *                 .continuousModeProperties(ContinuousModePropertiesArgs.builder()
 *                     .tier("Continuous30Days")
 *                     .build())
 *                 .type("Continuous")
 *                 .build())
 *             .consistencyPolicy(ConsistencyPolicyArgs.builder()
 *                 .defaultConsistencyLevel("BoundedStaleness")
 *                 .maxIntervalInSeconds(10)
 *                 .maxStalenessPrefix(200)
 *                 .build())
 *             .createMode("Restore")
 *             .databaseAccountOfferType("Standard")
 *             .enableAnalyticalStorage(true)
 *             .enableFreeTier(false)
 *             .keyVaultKeyUri("https://myKeyVault.vault.azure.net")
 *             .kind("GlobalDocumentDB")
 *             .location("westus")
 *             .locations(LocationArgs.builder()
 *                 .failoverPriority(0)
 *                 .isZoneRedundant(false)
 *                 .locationName("southcentralus")
 *                 .build())
 *             .minimalTlsVersion("Tls")
 *             .resourceGroupName("rg1")
 *             .restoreParameters(RestoreParametersArgs.builder()
 *                 .databasesToRestore(                
 *                     DatabaseRestoreResourceArgs.builder()
 *                         .collectionNames(                        
 *                             "collection1",
 *                             "collection2")
 *                         .databaseName("db1")
 *                         .build(),
 *                     DatabaseRestoreResourceArgs.builder()
 *                         .collectionNames(                        
 *                             "collection3",
 *                             "collection4")
 *                         .databaseName("db2")
 *                         .build())
 *                 .restoreMode("PointInTime")
 *                 .restoreSource("/subscriptions/subid/providers/Microsoft.DocumentDB/locations/westus/restorableDatabaseAccounts/1a97b4bb-f6a0-430e-ade1-638d781830cc")
 *                 .restoreTimestampInUtc("2021-03-11T22:05:09Z")
 *                 .build())
 *             .tags()
 *             .build());
 * 
 *     }
 * }
 * 
 * }
 * 
* * ## Import * * An existing resource can be imported using its type token, name, and identifier, e.g. * * ```sh * $ pulumi import azure-native:documentdb:DatabaseAccount ddb1 /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName} * ``` * */ @ResourceType(type="azure-native:documentdb:DatabaseAccount") public class DatabaseAccount extends com.pulumi.resources.CustomResource { /** * Analytical storage specific properties. * */ @Export(name="analyticalStorageConfiguration", refs={AnalyticalStorageConfigurationResponse.class}, tree="[0]") private Output analyticalStorageConfiguration; /** * @return Analytical storage specific properties. * */ public Output> analyticalStorageConfiguration() { return Codegen.optional(this.analyticalStorageConfiguration); } /** * API specific properties. * */ @Export(name="apiProperties", refs={ApiPropertiesResponse.class}, tree="[0]") private Output apiProperties; /** * @return API specific properties. * */ public Output> apiProperties() { return Codegen.optional(this.apiProperties); } /** * The object representing the policy for taking backups on an account. * */ @Export(name="backupPolicy", refs={Either.class,ContinuousModeBackupPolicyResponse.class,PeriodicModeBackupPolicyResponse.class}, tree="[0,1,2]") private Output> backupPolicy; /** * @return The object representing the policy for taking backups on an account. * */ public Output>> backupPolicy() { return Codegen.optional(this.backupPolicy); } /** * List of Cosmos DB capabilities for the account * */ @Export(name="capabilities", refs={List.class,CapabilityResponse.class}, tree="[0,1]") private Output> capabilities; /** * @return List of Cosmos DB capabilities for the account * */ public Output>> capabilities() { return Codegen.optional(this.capabilities); } /** * The object that represents all properties related to capacity enforcement on an account. * */ @Export(name="capacity", refs={CapacityResponse.class}, tree="[0]") private Output capacity; /** * @return The object that represents all properties related to capacity enforcement on an account. * */ public Output> capacity() { return Codegen.optional(this.capacity); } /** * The cassandra connector offer type for the Cosmos DB database C* account. * */ @Export(name="connectorOffer", refs={String.class}, tree="[0]") private Output connectorOffer; /** * @return The cassandra connector offer type for the Cosmos DB database C* account. * */ public Output> connectorOffer() { return Codegen.optional(this.connectorOffer); } /** * The consistency policy for the Cosmos DB database account. * */ @Export(name="consistencyPolicy", refs={ConsistencyPolicyResponse.class}, tree="[0]") private Output consistencyPolicy; /** * @return The consistency policy for the Cosmos DB database account. * */ public Output> consistencyPolicy() { return Codegen.optional(this.consistencyPolicy); } /** * The CORS policy for the Cosmos DB database account. * */ @Export(name="cors", refs={List.class,CorsPolicyResponse.class}, tree="[0,1]") private Output> cors; /** * @return The CORS policy for the Cosmos DB database account. * */ public Output>> cors() { return Codegen.optional(this.cors); } /** * Enum to indicate the mode of account creation. * */ @Export(name="createMode", refs={String.class}, tree="[0]") private Output createMode; /** * @return Enum to indicate the mode of account creation. * */ public Output> createMode() { return Codegen.optional(this.createMode); } /** * The offer type for the Cosmos DB database account. Default value: Standard. * */ @Export(name="databaseAccountOfferType", refs={String.class}, tree="[0]") private Output databaseAccountOfferType; /** * @return The offer type for the Cosmos DB database account. Default value: Standard. * */ public Output databaseAccountOfferType() { return this.databaseAccountOfferType; } /** * The default identity for accessing key vault used in features like customer managed keys. The default identity needs to be explicitly set by the users. It can be "FirstPartyIdentity", "SystemAssignedIdentity" and more. * */ @Export(name="defaultIdentity", refs={String.class}, tree="[0]") private Output defaultIdentity; /** * @return The default identity for accessing key vault used in features like customer managed keys. The default identity needs to be explicitly set by the users. It can be "FirstPartyIdentity", "SystemAssignedIdentity" and more. * */ public Output> defaultIdentity() { return Codegen.optional(this.defaultIdentity); } /** * Disable write operations on metadata resources (databases, containers, throughput) via account keys * */ @Export(name="disableKeyBasedMetadataWriteAccess", refs={Boolean.class}, tree="[0]") private Output disableKeyBasedMetadataWriteAccess; /** * @return Disable write operations on metadata resources (databases, containers, throughput) via account keys * */ public Output> disableKeyBasedMetadataWriteAccess() { return Codegen.optional(this.disableKeyBasedMetadataWriteAccess); } /** * Opt-out of local authentication and ensure only MSI and AAD can be used exclusively for authentication. * */ @Export(name="disableLocalAuth", refs={Boolean.class}, tree="[0]") private Output disableLocalAuth; /** * @return Opt-out of local authentication and ensure only MSI and AAD can be used exclusively for authentication. * */ public Output> disableLocalAuth() { return Codegen.optional(this.disableLocalAuth); } /** * The connection endpoint for the Cosmos DB database account. * */ @Export(name="documentEndpoint", refs={String.class}, tree="[0]") private Output documentEndpoint; /** * @return The connection endpoint for the Cosmos DB database account. * */ public Output documentEndpoint() { return this.documentEndpoint; } /** * Flag to indicate whether to enable storage analytics. * */ @Export(name="enableAnalyticalStorage", refs={Boolean.class}, tree="[0]") private Output enableAnalyticalStorage; /** * @return Flag to indicate whether to enable storage analytics. * */ public Output> enableAnalyticalStorage() { return Codegen.optional(this.enableAnalyticalStorage); } /** * Enables automatic failover of the write region in the rare event that the region is unavailable due to an outage. Automatic failover will result in a new write region for the account and is chosen based on the failover priorities configured for the account. * */ @Export(name="enableAutomaticFailover", refs={Boolean.class}, tree="[0]") private Output enableAutomaticFailover; /** * @return Enables automatic failover of the write region in the rare event that the region is unavailable due to an outage. Automatic failover will result in a new write region for the account and is chosen based on the failover priorities configured for the account. * */ public Output> enableAutomaticFailover() { return Codegen.optional(this.enableAutomaticFailover); } /** * Enables the cassandra connector on the Cosmos DB C* account * */ @Export(name="enableCassandraConnector", refs={Boolean.class}, tree="[0]") private Output enableCassandraConnector; /** * @return Enables the cassandra connector on the Cosmos DB C* account * */ public Output> enableCassandraConnector() { return Codegen.optional(this.enableCassandraConnector); } /** * Flag to indicate whether Free Tier is enabled. * */ @Export(name="enableFreeTier", refs={Boolean.class}, tree="[0]") private Output enableFreeTier; /** * @return Flag to indicate whether Free Tier is enabled. * */ public Output> enableFreeTier() { return Codegen.optional(this.enableFreeTier); } /** * Enables the account to write in multiple locations * */ @Export(name="enableMultipleWriteLocations", refs={Boolean.class}, tree="[0]") private Output enableMultipleWriteLocations; /** * @return Enables the account to write in multiple locations * */ public Output> enableMultipleWriteLocations() { return Codegen.optional(this.enableMultipleWriteLocations); } /** * Flag to indicate enabling/disabling of Partition Merge feature on the account * */ @Export(name="enablePartitionMerge", refs={Boolean.class}, tree="[0]") private Output enablePartitionMerge; /** * @return Flag to indicate enabling/disabling of Partition Merge feature on the account * */ public Output> enablePartitionMerge() { return Codegen.optional(this.enablePartitionMerge); } /** * An array that contains the regions ordered by their failover priorities. * */ @Export(name="failoverPolicies", refs={List.class,FailoverPolicyResponse.class}, tree="[0,1]") private Output> failoverPolicies; /** * @return An array that contains the regions ordered by their failover priorities. * */ public Output> failoverPolicies() { return this.failoverPolicies; } /** * Identity for the resource. * */ @Export(name="identity", refs={ManagedServiceIdentityResponse.class}, tree="[0]") private Output identity; /** * @return Identity for the resource. * */ public Output> identity() { return Codegen.optional(this.identity); } /** * A unique identifier assigned to the database account * */ @Export(name="instanceId", refs={String.class}, tree="[0]") private Output instanceId; /** * @return A unique identifier assigned to the database account * */ public Output instanceId() { return this.instanceId; } /** * List of IpRules. * */ @Export(name="ipRules", refs={List.class,IpAddressOrRangeResponse.class}, tree="[0,1]") private Output> ipRules; /** * @return List of IpRules. * */ public Output>> ipRules() { return Codegen.optional(this.ipRules); } /** * Flag to indicate whether to enable/disable Virtual Network ACL rules. * */ @Export(name="isVirtualNetworkFilterEnabled", refs={Boolean.class}, tree="[0]") private Output isVirtualNetworkFilterEnabled; /** * @return Flag to indicate whether to enable/disable Virtual Network ACL rules. * */ public Output> isVirtualNetworkFilterEnabled() { return Codegen.optional(this.isVirtualNetworkFilterEnabled); } /** * The URI of the key vault * */ @Export(name="keyVaultKeyUri", refs={String.class}, tree="[0]") private Output keyVaultKeyUri; /** * @return The URI of the key vault * */ public Output> keyVaultKeyUri() { return Codegen.optional(this.keyVaultKeyUri); } /** * The object that represents the metadata for the Account Keys of the Cosmos DB account. * */ @Export(name="keysMetadata", refs={DatabaseAccountKeysMetadataResponse.class}, tree="[0]") private Output keysMetadata; /** * @return The object that represents the metadata for the Account Keys of the Cosmos DB account. * */ public Output keysMetadata() { return this.keysMetadata; } /** * Indicates the type of database account. This can only be set at database account creation. * */ @Export(name="kind", refs={String.class}, tree="[0]") private Output kind; /** * @return Indicates the type of database account. This can only be set at database account creation. * */ public Output> kind() { return Codegen.optional(this.kind); } /** * The location of the resource group to which the resource belongs. * */ @Export(name="location", refs={String.class}, tree="[0]") private Output location; /** * @return The location of the resource group to which the resource belongs. * */ public Output> location() { return Codegen.optional(this.location); } /** * An array that contains all of the locations enabled for the Cosmos DB account. * */ @Export(name="locations", refs={List.class,LocationResponse.class}, tree="[0,1]") private Output> locations; /** * @return An array that contains all of the locations enabled for the Cosmos DB account. * */ public Output> locations() { return this.locations; } /** * Indicates the minimum allowed Tls version. The default value is Tls 1.2. Cassandra and Mongo APIs only work with Tls 1.2. * */ @Export(name="minimalTlsVersion", refs={String.class}, tree="[0]") private Output minimalTlsVersion; /** * @return Indicates the minimum allowed Tls version. The default value is Tls 1.2. Cassandra and Mongo APIs only work with Tls 1.2. * */ public Output> minimalTlsVersion() { return Codegen.optional(this.minimalTlsVersion); } /** * The name of the ARM resource. * */ @Export(name="name", refs={String.class}, tree="[0]") private Output name; /** * @return The name of the ARM resource. * */ public Output name() { return this.name; } /** * Indicates what services are allowed to bypass firewall checks. * */ @Export(name="networkAclBypass", refs={String.class}, tree="[0]") private Output networkAclBypass; /** * @return Indicates what services are allowed to bypass firewall checks. * */ public Output> networkAclBypass() { return Codegen.optional(this.networkAclBypass); } /** * An array that contains the Resource Ids for Network Acl Bypass for the Cosmos DB account. * */ @Export(name="networkAclBypassResourceIds", refs={List.class,String.class}, tree="[0,1]") private Output> networkAclBypassResourceIds; /** * @return An array that contains the Resource Ids for Network Acl Bypass for the Cosmos DB account. * */ public Output>> networkAclBypassResourceIds() { return Codegen.optional(this.networkAclBypassResourceIds); } /** * List of Private Endpoint Connections configured for the Cosmos DB account. * */ @Export(name="privateEndpointConnections", refs={List.class,PrivateEndpointConnectionResponse.class}, tree="[0,1]") private Output> privateEndpointConnections; /** * @return List of Private Endpoint Connections configured for the Cosmos DB account. * */ public Output> privateEndpointConnections() { return this.privateEndpointConnections; } /** * The status of the Cosmos DB account at the time the operation was called. The status can be one of following. 'Creating' – the Cosmos DB account is being created. When an account is in Creating state, only properties that are specified as input for the Create Cosmos DB account operation are returned. 'Succeeded' – the Cosmos DB account is active for use. 'Updating' – the Cosmos DB account is being updated. 'Deleting' – the Cosmos DB account is being deleted. 'Failed' – the Cosmos DB account failed creation. 'DeletionFailed' – the Cosmos DB account deletion failed. * */ @Export(name="provisioningState", refs={String.class}, tree="[0]") private Output provisioningState; /** * @return The status of the Cosmos DB account at the time the operation was called. The status can be one of following. 'Creating' – the Cosmos DB account is being created. When an account is in Creating state, only properties that are specified as input for the Create Cosmos DB account operation are returned. 'Succeeded' – the Cosmos DB account is active for use. 'Updating' – the Cosmos DB account is being updated. 'Deleting' – the Cosmos DB account is being deleted. 'Failed' – the Cosmos DB account failed creation. 'DeletionFailed' – the Cosmos DB account deletion failed. * */ public Output provisioningState() { return this.provisioningState; } /** * Whether requests from Public Network are allowed * */ @Export(name="publicNetworkAccess", refs={String.class}, tree="[0]") private Output publicNetworkAccess; /** * @return Whether requests from Public Network are allowed * */ public Output> publicNetworkAccess() { return Codegen.optional(this.publicNetworkAccess); } /** * An array that contains of the read locations enabled for the Cosmos DB account. * */ @Export(name="readLocations", refs={List.class,LocationResponse.class}, tree="[0,1]") private Output> readLocations; /** * @return An array that contains of the read locations enabled for the Cosmos DB account. * */ public Output> readLocations() { return this.readLocations; } /** * Parameters to indicate the information about the restore. * */ @Export(name="restoreParameters", refs={RestoreParametersResponse.class}, tree="[0]") private Output restoreParameters; /** * @return Parameters to indicate the information about the restore. * */ public Output> restoreParameters() { return Codegen.optional(this.restoreParameters); } /** * The system meta data relating to this resource. * */ @Export(name="systemData", refs={SystemDataResponse.class}, tree="[0]") private Output systemData; /** * @return The system meta data relating to this resource. * */ public Output systemData() { return this.systemData; } /** * Tags are a list of key-value pairs that describe the resource. These tags can be used in viewing and grouping this resource (across resource groups). A maximum of 15 tags can be provided for a resource. Each tag must have a key no greater than 128 characters and value no greater than 256 characters. For example, the default experience for a template type is set with "defaultExperience": "Cassandra". Current "defaultExperience" values also include "Table", "Graph", "DocumentDB", and "MongoDB". * */ @Export(name="tags", refs={Map.class,String.class}, tree="[0,1,1]") private Output> tags; /** * @return Tags are a list of key-value pairs that describe the resource. These tags can be used in viewing and grouping this resource (across resource groups). A maximum of 15 tags can be provided for a resource. Each tag must have a key no greater than 128 characters and value no greater than 256 characters. For example, the default experience for a template type is set with "defaultExperience": "Cassandra". Current "defaultExperience" values also include "Table", "Graph", "DocumentDB", and "MongoDB". * */ public Output>> tags() { return Codegen.optional(this.tags); } /** * The type of Azure resource. * */ @Export(name="type", refs={String.class}, tree="[0]") private Output type; /** * @return The type of Azure resource. * */ public Output type() { return this.type; } /** * List of Virtual Network ACL rules configured for the Cosmos DB account. * */ @Export(name="virtualNetworkRules", refs={List.class,VirtualNetworkRuleResponse.class}, tree="[0,1]") private Output> virtualNetworkRules; /** * @return List of Virtual Network ACL rules configured for the Cosmos DB account. * */ public Output>> virtualNetworkRules() { return Codegen.optional(this.virtualNetworkRules); } /** * An array that contains the write location for the Cosmos DB account. * */ @Export(name="writeLocations", refs={List.class,LocationResponse.class}, tree="[0,1]") private Output> writeLocations; /** * @return An array that contains the write location for the Cosmos DB account. * */ public Output> writeLocations() { return this.writeLocations; } /** * * @param name The _unique_ name of the resulting resource. */ public DatabaseAccount(java.lang.String name) { this(name, DatabaseAccountArgs.Empty); } /** * * @param name The _unique_ name of the resulting resource. * @param args The arguments to use to populate this resource's properties. */ public DatabaseAccount(java.lang.String name, DatabaseAccountArgs args) { this(name, args, null); } /** * * @param name The _unique_ name of the resulting resource. * @param args The arguments to use to populate this resource's properties. * @param options A bag of options that control this resource's behavior. */ public DatabaseAccount(java.lang.String name, DatabaseAccountArgs args, @Nullable com.pulumi.resources.CustomResourceOptions options) { super("azure-native:documentdb:DatabaseAccount", name, makeArgs(args, options), makeResourceOptions(options, Codegen.empty()), false); } private DatabaseAccount(java.lang.String name, Output id, @Nullable com.pulumi.resources.CustomResourceOptions options) { super("azure-native:documentdb:DatabaseAccount", name, null, makeResourceOptions(options, id), false); } private static DatabaseAccountArgs makeArgs(DatabaseAccountArgs args, @Nullable com.pulumi.resources.CustomResourceOptions options) { if (options != null && options.getUrn().isPresent()) { return null; } return args == null ? DatabaseAccountArgs.Empty : args; } private static com.pulumi.resources.CustomResourceOptions makeResourceOptions(@Nullable com.pulumi.resources.CustomResourceOptions options, @Nullable Output id) { var defaultOptions = com.pulumi.resources.CustomResourceOptions.builder() .version(Utilities.getVersion()) .aliases(List.of( Output.of(Alias.builder().type("azure-native:documentdb/v20150401:DatabaseAccount").build()), Output.of(Alias.builder().type("azure-native:documentdb/v20150408:DatabaseAccount").build()), Output.of(Alias.builder().type("azure-native:documentdb/v20151106:DatabaseAccount").build()), Output.of(Alias.builder().type("azure-native:documentdb/v20160319:DatabaseAccount").build()), Output.of(Alias.builder().type("azure-native:documentdb/v20160331:DatabaseAccount").build()), Output.of(Alias.builder().type("azure-native:documentdb/v20190801:DatabaseAccount").build()), Output.of(Alias.builder().type("azure-native:documentdb/v20191212:DatabaseAccount").build()), Output.of(Alias.builder().type("azure-native:documentdb/v20200301:DatabaseAccount").build()), Output.of(Alias.builder().type("azure-native:documentdb/v20200401:DatabaseAccount").build()), Output.of(Alias.builder().type("azure-native:documentdb/v20200601preview:DatabaseAccount").build()), Output.of(Alias.builder().type("azure-native:documentdb/v20200901:DatabaseAccount").build()), Output.of(Alias.builder().type("azure-native:documentdb/v20210115:DatabaseAccount").build()), Output.of(Alias.builder().type("azure-native:documentdb/v20210301preview:DatabaseAccount").build()), Output.of(Alias.builder().type("azure-native:documentdb/v20210315:DatabaseAccount").build()), Output.of(Alias.builder().type("azure-native:documentdb/v20210401preview:DatabaseAccount").build()), Output.of(Alias.builder().type("azure-native:documentdb/v20210415:DatabaseAccount").build()), Output.of(Alias.builder().type("azure-native:documentdb/v20210515:DatabaseAccount").build()), Output.of(Alias.builder().type("azure-native:documentdb/v20210615:DatabaseAccount").build()), Output.of(Alias.builder().type("azure-native:documentdb/v20210701preview:DatabaseAccount").build()), Output.of(Alias.builder().type("azure-native:documentdb/v20211015:DatabaseAccount").build()), Output.of(Alias.builder().type("azure-native:documentdb/v20211015preview:DatabaseAccount").build()), Output.of(Alias.builder().type("azure-native:documentdb/v20211115preview:DatabaseAccount").build()), Output.of(Alias.builder().type("azure-native:documentdb/v20220215preview:DatabaseAccount").build()), Output.of(Alias.builder().type("azure-native:documentdb/v20220515:DatabaseAccount").build()), Output.of(Alias.builder().type("azure-native:documentdb/v20220515preview:DatabaseAccount").build()), Output.of(Alias.builder().type("azure-native:documentdb/v20220815:DatabaseAccount").build()), Output.of(Alias.builder().type("azure-native:documentdb/v20220815preview:DatabaseAccount").build()), Output.of(Alias.builder().type("azure-native:documentdb/v20221115:DatabaseAccount").build()), Output.of(Alias.builder().type("azure-native:documentdb/v20221115preview:DatabaseAccount").build()), Output.of(Alias.builder().type("azure-native:documentdb/v20230301preview:DatabaseAccount").build()), Output.of(Alias.builder().type("azure-native:documentdb/v20230315:DatabaseAccount").build()), Output.of(Alias.builder().type("azure-native:documentdb/v20230315preview:DatabaseAccount").build()), Output.of(Alias.builder().type("azure-native:documentdb/v20230415:DatabaseAccount").build()), Output.of(Alias.builder().type("azure-native:documentdb/v20230915:DatabaseAccount").build()), Output.of(Alias.builder().type("azure-native:documentdb/v20230915preview:DatabaseAccount").build()), Output.of(Alias.builder().type("azure-native:documentdb/v20231115:DatabaseAccount").build()), Output.of(Alias.builder().type("azure-native:documentdb/v20231115preview:DatabaseAccount").build()), Output.of(Alias.builder().type("azure-native:documentdb/v20240215preview:DatabaseAccount").build()), Output.of(Alias.builder().type("azure-native:documentdb/v20240515:DatabaseAccount").build()), Output.of(Alias.builder().type("azure-native:documentdb/v20240515preview:DatabaseAccount").build()), Output.of(Alias.builder().type("azure-native:documentdb/v20240815:DatabaseAccount").build()), Output.of(Alias.builder().type("azure-native:documentdb/v20240901preview:DatabaseAccount").build()) )) .build(); return com.pulumi.resources.CustomResourceOptions.merge(defaultOptions, options, id); } /** * Get an existing Host resource's state with the given name, ID, and optional extra * properties used to qualify the lookup. * * @param name The _unique_ name of the resulting resource. * @param id The _unique_ provider ID of the resource to lookup. * @param options Optional settings to control the behavior of the CustomResource. */ public static DatabaseAccount get(java.lang.String name, Output id, @Nullable com.pulumi.resources.CustomResourceOptions options) { return new DatabaseAccount(name, id, options); } }




© 2015 - 2024 Weber Informatics LLC | Privacy Policy