Class DatabaseAccountCreateUpdateProperties

java.lang.Object
com.azure.resourcemanager.cosmos.fluent.models.DatabaseAccountCreateUpdateProperties
All Implemented Interfaces:
com.azure.json.JsonSerializable<DatabaseAccountCreateUpdateProperties>

public final class DatabaseAccountCreateUpdateProperties extends Object implements com.azure.json.JsonSerializable<DatabaseAccountCreateUpdateProperties>
Properties to create and update Azure Cosmos DB database accounts.
  • Constructor Details

    • DatabaseAccountCreateUpdateProperties

      public DatabaseAccountCreateUpdateProperties()
      Creates an instance of DatabaseAccountCreateUpdateProperties class.
  • Method Details

    • consistencyPolicy

      public ConsistencyPolicy consistencyPolicy()
      Get the consistencyPolicy property: The consistency policy for the Cosmos DB account.
      Returns:
      the consistencyPolicy value.
    • withConsistencyPolicy

      public DatabaseAccountCreateUpdateProperties withConsistencyPolicy(ConsistencyPolicy consistencyPolicy)
      Set the consistencyPolicy property: The consistency policy for the Cosmos DB account.
      Parameters:
      consistencyPolicy - the consistencyPolicy value to set.
      Returns:
      the DatabaseAccountCreateUpdateProperties object itself.
    • locations

      public List<Location> locations()
      Get the locations property: An array that contains the georeplication locations enabled for the Cosmos DB account.
      Returns:
      the locations value.
    • withLocations

      public DatabaseAccountCreateUpdateProperties withLocations(List<Location> locations)
      Set the locations property: An array that contains the georeplication locations enabled for the Cosmos DB account.
      Parameters:
      locations - the locations value to set.
      Returns:
      the DatabaseAccountCreateUpdateProperties object itself.
    • databaseAccountOfferType

      public String databaseAccountOfferType()
      Get the databaseAccountOfferType property: The offer type for the database.
      Returns:
      the databaseAccountOfferType value.
    • ipRules

      public List<IpAddressOrRange> ipRules()
      Get the ipRules property: List of IpRules.
      Returns:
      the ipRules value.
    • withIpRules

      Set the ipRules property: List of IpRules.
      Parameters:
      ipRules - the ipRules value to set.
      Returns:
      the DatabaseAccountCreateUpdateProperties object itself.
    • isVirtualNetworkFilterEnabled

      public Boolean isVirtualNetworkFilterEnabled()
      Get the isVirtualNetworkFilterEnabled property: Flag to indicate whether to enable/disable Virtual Network ACL rules.
      Returns:
      the isVirtualNetworkFilterEnabled value.
    • withIsVirtualNetworkFilterEnabled

      public DatabaseAccountCreateUpdateProperties withIsVirtualNetworkFilterEnabled(Boolean isVirtualNetworkFilterEnabled)
      Set the isVirtualNetworkFilterEnabled property: Flag to indicate whether to enable/disable Virtual Network ACL rules.
      Parameters:
      isVirtualNetworkFilterEnabled - the isVirtualNetworkFilterEnabled value to set.
      Returns:
      the DatabaseAccountCreateUpdateProperties object itself.
    • enableAutomaticFailover

      public Boolean enableAutomaticFailover()
      Get the enableAutomaticFailover property: 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.
      Returns:
      the enableAutomaticFailover value.
    • withEnableAutomaticFailover

      public DatabaseAccountCreateUpdateProperties withEnableAutomaticFailover(Boolean enableAutomaticFailover)
      Set the enableAutomaticFailover property: 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.
      Parameters:
      enableAutomaticFailover - the enableAutomaticFailover value to set.
      Returns:
      the DatabaseAccountCreateUpdateProperties object itself.
    • capabilities

      public List<Capability> capabilities()
      Get the capabilities property: List of Cosmos DB capabilities for the account.
      Returns:
      the capabilities value.
    • withCapabilities

      public DatabaseAccountCreateUpdateProperties withCapabilities(List<Capability> capabilities)
      Set the capabilities property: List of Cosmos DB capabilities for the account.
      Parameters:
      capabilities - the capabilities value to set.
      Returns:
      the DatabaseAccountCreateUpdateProperties object itself.
    • virtualNetworkRules

      public List<VirtualNetworkRule> virtualNetworkRules()
      Get the virtualNetworkRules property: List of Virtual Network ACL rules configured for the Cosmos DB account.
      Returns:
      the virtualNetworkRules value.
    • withVirtualNetworkRules

      public DatabaseAccountCreateUpdateProperties withVirtualNetworkRules(List<VirtualNetworkRule> virtualNetworkRules)
      Set the virtualNetworkRules property: List of Virtual Network ACL rules configured for the Cosmos DB account.
      Parameters:
      virtualNetworkRules - the virtualNetworkRules value to set.
      Returns:
      the DatabaseAccountCreateUpdateProperties object itself.
    • enableMultipleWriteLocations

      public Boolean enableMultipleWriteLocations()
      Get the enableMultipleWriteLocations property: Enables the account to write in multiple locations.
      Returns:
      the enableMultipleWriteLocations value.
    • withEnableMultipleWriteLocations

      public DatabaseAccountCreateUpdateProperties withEnableMultipleWriteLocations(Boolean enableMultipleWriteLocations)
      Set the enableMultipleWriteLocations property: Enables the account to write in multiple locations.
      Parameters:
      enableMultipleWriteLocations - the enableMultipleWriteLocations value to set.
      Returns:
      the DatabaseAccountCreateUpdateProperties object itself.
    • enableCassandraConnector

      public Boolean enableCassandraConnector()
      Get the enableCassandraConnector property: Enables the cassandra connector on the Cosmos DB C* account.
      Returns:
      the enableCassandraConnector value.
    • withEnableCassandraConnector

      public DatabaseAccountCreateUpdateProperties withEnableCassandraConnector(Boolean enableCassandraConnector)
      Set the enableCassandraConnector property: Enables the cassandra connector on the Cosmos DB C* account.
      Parameters:
      enableCassandraConnector - the enableCassandraConnector value to set.
      Returns:
      the DatabaseAccountCreateUpdateProperties object itself.
    • connectorOffer

      public ConnectorOffer connectorOffer()
      Get the connectorOffer property: The cassandra connector offer type for the Cosmos DB database C* account.
      Returns:
      the connectorOffer value.
    • withConnectorOffer

      public DatabaseAccountCreateUpdateProperties withConnectorOffer(ConnectorOffer connectorOffer)
      Set the connectorOffer property: The cassandra connector offer type for the Cosmos DB database C* account.
      Parameters:
      connectorOffer - the connectorOffer value to set.
      Returns:
      the DatabaseAccountCreateUpdateProperties object itself.
    • disableKeyBasedMetadataWriteAccess

      public Boolean disableKeyBasedMetadataWriteAccess()
      Get the disableKeyBasedMetadataWriteAccess property: Disable write operations on metadata resources (databases, containers, throughput) via account keys.
      Returns:
      the disableKeyBasedMetadataWriteAccess value.
    • withDisableKeyBasedMetadataWriteAccess

      public DatabaseAccountCreateUpdateProperties withDisableKeyBasedMetadataWriteAccess(Boolean disableKeyBasedMetadataWriteAccess)
      Set the disableKeyBasedMetadataWriteAccess property: Disable write operations on metadata resources (databases, containers, throughput) via account keys.
      Parameters:
      disableKeyBasedMetadataWriteAccess - the disableKeyBasedMetadataWriteAccess value to set.
      Returns:
      the DatabaseAccountCreateUpdateProperties object itself.
    • keyVaultKeyUri

      public String keyVaultKeyUri()
      Get the keyVaultKeyUri property: The URI of the key vault.
      Returns:
      the keyVaultKeyUri value.
    • withKeyVaultKeyUri

      public DatabaseAccountCreateUpdateProperties withKeyVaultKeyUri(String keyVaultKeyUri)
      Set the keyVaultKeyUri property: The URI of the key vault.
      Parameters:
      keyVaultKeyUri - the keyVaultKeyUri value to set.
      Returns:
      the DatabaseAccountCreateUpdateProperties object itself.
    • defaultIdentity

      public String defaultIdentity()
      Get the defaultIdentity property: 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.
      Returns:
      the defaultIdentity value.
    • withDefaultIdentity

      public DatabaseAccountCreateUpdateProperties withDefaultIdentity(String defaultIdentity)
      Set the defaultIdentity property: 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.
      Parameters:
      defaultIdentity - the defaultIdentity value to set.
      Returns:
      the DatabaseAccountCreateUpdateProperties object itself.
    • publicNetworkAccess

      public PublicNetworkAccess publicNetworkAccess()
      Get the publicNetworkAccess property: Whether requests from Public Network are allowed.
      Returns:
      the publicNetworkAccess value.
    • withPublicNetworkAccess

      public DatabaseAccountCreateUpdateProperties withPublicNetworkAccess(PublicNetworkAccess publicNetworkAccess)
      Set the publicNetworkAccess property: Whether requests from Public Network are allowed.
      Parameters:
      publicNetworkAccess - the publicNetworkAccess value to set.
      Returns:
      the DatabaseAccountCreateUpdateProperties object itself.
    • enableFreeTier

      public Boolean enableFreeTier()
      Get the enableFreeTier property: Flag to indicate whether Free Tier is enabled.
      Returns:
      the enableFreeTier value.
    • withEnableFreeTier

      public DatabaseAccountCreateUpdateProperties withEnableFreeTier(Boolean enableFreeTier)
      Set the enableFreeTier property: Flag to indicate whether Free Tier is enabled.
      Parameters:
      enableFreeTier - the enableFreeTier value to set.
      Returns:
      the DatabaseAccountCreateUpdateProperties object itself.
    • apiProperties

      public ApiProperties apiProperties()
      Get the apiProperties property: API specific properties. Currently, supported only for MongoDB API.
      Returns:
      the apiProperties value.
    • withApiProperties

      public DatabaseAccountCreateUpdateProperties withApiProperties(ApiProperties apiProperties)
      Set the apiProperties property: API specific properties. Currently, supported only for MongoDB API.
      Parameters:
      apiProperties - the apiProperties value to set.
      Returns:
      the DatabaseAccountCreateUpdateProperties object itself.
    • enableAnalyticalStorage

      public Boolean enableAnalyticalStorage()
      Get the enableAnalyticalStorage property: Flag to indicate whether to enable storage analytics.
      Returns:
      the enableAnalyticalStorage value.
    • withEnableAnalyticalStorage

      public DatabaseAccountCreateUpdateProperties withEnableAnalyticalStorage(Boolean enableAnalyticalStorage)
      Set the enableAnalyticalStorage property: Flag to indicate whether to enable storage analytics.
      Parameters:
      enableAnalyticalStorage - the enableAnalyticalStorage value to set.
      Returns:
      the DatabaseAccountCreateUpdateProperties object itself.
    • analyticalStorageConfiguration

      public AnalyticalStorageConfiguration analyticalStorageConfiguration()
      Get the analyticalStorageConfiguration property: Analytical storage specific properties.
      Returns:
      the analyticalStorageConfiguration value.
    • withAnalyticalStorageConfiguration

      public DatabaseAccountCreateUpdateProperties withAnalyticalStorageConfiguration(AnalyticalStorageConfiguration analyticalStorageConfiguration)
      Set the analyticalStorageConfiguration property: Analytical storage specific properties.
      Parameters:
      analyticalStorageConfiguration - the analyticalStorageConfiguration value to set.
      Returns:
      the DatabaseAccountCreateUpdateProperties object itself.
    • createMode

      public CreateMode createMode()
      Get the createMode property: Enum to indicate the mode of account creation.
      Returns:
      the createMode value.
    • withCreateMode

      public DatabaseAccountCreateUpdateProperties withCreateMode(CreateMode createMode)
      Set the createMode property: Enum to indicate the mode of account creation.
      Parameters:
      createMode - the createMode value to set.
      Returns:
      the DatabaseAccountCreateUpdateProperties object itself.
    • backupPolicy

      public BackupPolicy backupPolicy()
      Get the backupPolicy property: The object representing the policy for taking backups on an account.
      Returns:
      the backupPolicy value.
    • withBackupPolicy

      public DatabaseAccountCreateUpdateProperties withBackupPolicy(BackupPolicy backupPolicy)
      Set the backupPolicy property: The object representing the policy for taking backups on an account.
      Parameters:
      backupPolicy - the backupPolicy value to set.
      Returns:
      the DatabaseAccountCreateUpdateProperties object itself.
    • cors

      public List<CorsPolicy> cors()
      Get the cors property: The CORS policy for the Cosmos DB database account.
      Returns:
      the cors value.
    • withCors

      Set the cors property: The CORS policy for the Cosmos DB database account.
      Parameters:
      cors - the cors value to set.
      Returns:
      the DatabaseAccountCreateUpdateProperties object itself.
    • networkAclBypass

      public NetworkAclBypass networkAclBypass()
      Get the networkAclBypass property: Indicates what services are allowed to bypass firewall checks.
      Returns:
      the networkAclBypass value.
    • withNetworkAclBypass

      public DatabaseAccountCreateUpdateProperties withNetworkAclBypass(NetworkAclBypass networkAclBypass)
      Set the networkAclBypass property: Indicates what services are allowed to bypass firewall checks.
      Parameters:
      networkAclBypass - the networkAclBypass value to set.
      Returns:
      the DatabaseAccountCreateUpdateProperties object itself.
    • networkAclBypassResourceIds

      public List<String> networkAclBypassResourceIds()
      Get the networkAclBypassResourceIds property: An array that contains the Resource Ids for Network Acl Bypass for the Cosmos DB account.
      Returns:
      the networkAclBypassResourceIds value.
    • withNetworkAclBypassResourceIds

      public DatabaseAccountCreateUpdateProperties withNetworkAclBypassResourceIds(List<String> networkAclBypassResourceIds)
      Set the networkAclBypassResourceIds property: An array that contains the Resource Ids for Network Acl Bypass for the Cosmos DB account.
      Parameters:
      networkAclBypassResourceIds - the networkAclBypassResourceIds value to set.
      Returns:
      the DatabaseAccountCreateUpdateProperties object itself.
    • disableLocalAuth

      public Boolean disableLocalAuth()
      Get the disableLocalAuth property: Opt-out of local authentication and ensure only MSI and AAD can be used exclusively for authentication.
      Returns:
      the disableLocalAuth value.
    • withDisableLocalAuth

      public DatabaseAccountCreateUpdateProperties withDisableLocalAuth(Boolean disableLocalAuth)
      Set the disableLocalAuth property: Opt-out of local authentication and ensure only MSI and AAD can be used exclusively for authentication.
      Parameters:
      disableLocalAuth - the disableLocalAuth value to set.
      Returns:
      the DatabaseAccountCreateUpdateProperties object itself.
    • restoreParameters

      public RestoreParameters restoreParameters()
      Get the restoreParameters property: Parameters to indicate the information about the restore.
      Returns:
      the restoreParameters value.
    • withRestoreParameters

      public DatabaseAccountCreateUpdateProperties withRestoreParameters(RestoreParameters restoreParameters)
      Set the restoreParameters property: Parameters to indicate the information about the restore.
      Parameters:
      restoreParameters - the restoreParameters value to set.
      Returns:
      the DatabaseAccountCreateUpdateProperties object itself.
    • capacity

      public Capacity capacity()
      Get the capacity property: The object that represents all properties related to capacity enforcement on an account.
      Returns:
      the capacity value.
    • withCapacity

      public DatabaseAccountCreateUpdateProperties withCapacity(Capacity capacity)
      Set the capacity property: The object that represents all properties related to capacity enforcement on an account.
      Parameters:
      capacity - the capacity value to set.
      Returns:
      the DatabaseAccountCreateUpdateProperties object itself.
    • keysMetadata

      public DatabaseAccountKeysMetadata keysMetadata()
      Get the keysMetadata property: This property is ignored during the update/create operation, as the metadata is read-only. The object represents the metadata for the Account Keys of the Cosmos DB account.
      Returns:
      the keysMetadata value.
    • enablePartitionMerge

      public Boolean enablePartitionMerge()
      Get the enablePartitionMerge property: Flag to indicate enabling/disabling of Partition Merge feature on the account.
      Returns:
      the enablePartitionMerge value.
    • withEnablePartitionMerge

      public DatabaseAccountCreateUpdateProperties withEnablePartitionMerge(Boolean enablePartitionMerge)
      Set the enablePartitionMerge property: Flag to indicate enabling/disabling of Partition Merge feature on the account.
      Parameters:
      enablePartitionMerge - the enablePartitionMerge value to set.
      Returns:
      the DatabaseAccountCreateUpdateProperties object itself.
    • minimalTlsVersion

      public MinimalTlsVersion minimalTlsVersion()
      Get the minimalTlsVersion property: Indicates the minimum allowed Tls version. The default value is Tls 1.2. Cassandra and Mongo APIs only work with Tls 1.2.
      Returns:
      the minimalTlsVersion value.
    • withMinimalTlsVersion

      public DatabaseAccountCreateUpdateProperties withMinimalTlsVersion(MinimalTlsVersion minimalTlsVersion)
      Set the minimalTlsVersion property: Indicates the minimum allowed Tls version. The default value is Tls 1.2. Cassandra and Mongo APIs only work with Tls 1.2.
      Parameters:
      minimalTlsVersion - the minimalTlsVersion value to set.
      Returns:
      the DatabaseAccountCreateUpdateProperties object itself.
    • enableBurstCapacity

      public Boolean enableBurstCapacity()
      Get the enableBurstCapacity property: Flag to indicate enabling/disabling of Burst Capacity feature on the account.
      Returns:
      the enableBurstCapacity value.
    • withEnableBurstCapacity

      public DatabaseAccountCreateUpdateProperties withEnableBurstCapacity(Boolean enableBurstCapacity)
      Set the enableBurstCapacity property: Flag to indicate enabling/disabling of Burst Capacity feature on the account.
      Parameters:
      enableBurstCapacity - the enableBurstCapacity value to set.
      Returns:
      the DatabaseAccountCreateUpdateProperties object itself.
    • customerManagedKeyStatus

      public String customerManagedKeyStatus()
      Get the customerManagedKeyStatus property: Indicates the status of the Customer Managed Key feature on the account. In case there are errors, the property provides troubleshooting guidance.
      Returns:
      the customerManagedKeyStatus value.
    • withCustomerManagedKeyStatus

      public DatabaseAccountCreateUpdateProperties withCustomerManagedKeyStatus(String customerManagedKeyStatus)
      Set the customerManagedKeyStatus property: Indicates the status of the Customer Managed Key feature on the account. In case there are errors, the property provides troubleshooting guidance.
      Parameters:
      customerManagedKeyStatus - the customerManagedKeyStatus value to set.
      Returns:
      the DatabaseAccountCreateUpdateProperties object itself.
    • enablePerRegionPerPartitionAutoscale

      public Boolean enablePerRegionPerPartitionAutoscale()
      Get the enablePerRegionPerPartitionAutoscale property: Flag to indicate enabling/disabling of PerRegionPerPartitionAutoscale feature on the account.
      Returns:
      the enablePerRegionPerPartitionAutoscale value.
    • withEnablePerRegionPerPartitionAutoscale

      public DatabaseAccountCreateUpdateProperties withEnablePerRegionPerPartitionAutoscale(Boolean enablePerRegionPerPartitionAutoscale)
      Set the enablePerRegionPerPartitionAutoscale property: Flag to indicate enabling/disabling of PerRegionPerPartitionAutoscale feature on the account.
      Parameters:
      enablePerRegionPerPartitionAutoscale - the enablePerRegionPerPartitionAutoscale value to set.
      Returns:
      the DatabaseAccountCreateUpdateProperties object itself.
    • validate

      public void validate()
      Validates the instance.
      Throws:
      IllegalArgumentException - thrown if the instance is not valid.
    • toJson

      public com.azure.json.JsonWriter toJson(com.azure.json.JsonWriter jsonWriter) throws IOException
      Specified by:
      toJson in interface com.azure.json.JsonSerializable<DatabaseAccountCreateUpdateProperties>
      Throws:
      IOException
    • fromJson

      public static DatabaseAccountCreateUpdateProperties fromJson(com.azure.json.JsonReader jsonReader) throws IOException
      Reads an instance of DatabaseAccountCreateUpdateProperties from the JsonReader.
      Parameters:
      jsonReader - The JsonReader being read.
      Returns:
      An instance of DatabaseAccountCreateUpdateProperties if the JsonReader was pointing to an instance of it, or null if it was pointing to JSON null.
      Throws:
      IllegalStateException - If the deserialized JSON object was missing any required properties.
      IOException - If an error occurs while reading the DatabaseAccountCreateUpdateProperties.