class Azure::Cosmosdb::Mgmt::V2019_08_01::Models::DatabaseAccountCreateUpdateParameters

Parameters to create and update Cosmos DB database accounts.

Attributes

capabilities[RW]

@return [Array<Capability>] List of Cosmos DB capabilities for the account

connector_offer[RW]

@return [ConnectorOffer] The cassandra connector offer type for the Cosmos DB database C* account. Possible values include: 'Small'

consistency_policy[RW]

@return [ConsistencyPolicy] The consistency policy for the Cosmos DB account.

database_account_offer_type[RW]

@return [String] The offer type for the database. Default value: 'Standard' .

disable_key_based_metadata_write_access[RW]

@return [Boolean] Disable write operations on metadata resources (databases, containers, throughput) via account keys

enable_automatic_failover[RW]

@return [Boolean] 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.

enable_cassandra_connector[RW]

@return [Boolean] Enables the cassandra connector on the Cosmos DB C* account

enable_multiple_write_locations[RW]

@return [Boolean] Enables the account to write in multiple locations

ip_range_filter[RW]

@return [String] Cosmos DB Firewall Support: This value specifies the set of IP addresses or IP address ranges in CIDR form to be included as the allowed list of client IPs for a given database account. IP addresses/ranges must be comma separated and must not contain any spaces.

is_virtual_network_filter_enabled[RW]

@return [Boolean] Flag to indicate whether to enable/disable Virtual Network ACL rules.

kind[RW]

@return [DatabaseAccountKind] Indicates the type of database account. This can only be set at database account creation. Possible values include: 'GlobalDocumentDB', 'MongoDB', 'Parse'. Default value: 'GlobalDocumentDB' .

locations[RW]

@return [Array<Location>] An array that contains the georeplication locations enabled for the Cosmos DB account.

virtual_network_rules[RW]

@return [Array<VirtualNetworkRule>] List of Virtual Network ACL rules configured for the Cosmos DB account.

Public Class Methods

mapper() click to toggle source

Mapper for DatabaseAccountCreateUpdateParameters class as Ruby Hash. This will be used for serialization/deserialization.

# File lib/2019-08-01/generated/azure_mgmt_cosmosdb/models/database_account_create_update_parameters.rb, line 78
def self.mapper()
  {
    client_side_validation: true,
    required: false,
    serialized_name: 'DatabaseAccountCreateUpdateParameters',
    type: {
      name: 'Composite',
      class_name: 'DatabaseAccountCreateUpdateParameters',
      model_properties: {
        id: {
          client_side_validation: true,
          required: false,
          read_only: true,
          serialized_name: 'id',
          type: {
            name: 'String'
          }
        },
        name: {
          client_side_validation: true,
          required: false,
          read_only: true,
          serialized_name: 'name',
          type: {
            name: 'String'
          }
        },
        type: {
          client_side_validation: true,
          required: false,
          read_only: true,
          serialized_name: 'type',
          type: {
            name: 'String'
          }
        },
        location: {
          client_side_validation: true,
          required: false,
          serialized_name: 'location',
          type: {
            name: 'String'
          }
        },
        tags: {
          client_side_validation: true,
          required: false,
          serialized_name: 'tags',
          type: {
            name: 'Dictionary',
            value: {
                client_side_validation: true,
                required: false,
                serialized_name: 'StringElementType',
                type: {
                  name: 'String'
                }
            }
          }
        },
        kind: {
          client_side_validation: true,
          required: false,
          serialized_name: 'kind',
          default_value: 'GlobalDocumentDB',
          type: {
            name: 'String'
          }
        },
        consistency_policy: {
          client_side_validation: true,
          required: false,
          serialized_name: 'properties.consistencyPolicy',
          type: {
            name: 'Composite',
            class_name: 'ConsistencyPolicy'
          }
        },
        locations: {
          client_side_validation: true,
          required: true,
          serialized_name: 'properties.locations',
          type: {
            name: 'Sequence',
            element: {
                client_side_validation: true,
                required: false,
                serialized_name: 'LocationElementType',
                type: {
                  name: 'Composite',
                  class_name: 'Location'
                }
            }
          }
        },
        database_account_offer_type: {
          client_side_validation: true,
          required: true,
          is_constant: true,
          serialized_name: 'properties.databaseAccountOfferType',
          default_value: 'Standard',
          type: {
            name: 'String'
          }
        },
        ip_range_filter: {
          client_side_validation: true,
          required: false,
          serialized_name: 'properties.ipRangeFilter',
          type: {
            name: 'String'
          }
        },
        is_virtual_network_filter_enabled: {
          client_side_validation: true,
          required: false,
          serialized_name: 'properties.isVirtualNetworkFilterEnabled',
          type: {
            name: 'Boolean'
          }
        },
        enable_automatic_failover: {
          client_side_validation: true,
          required: false,
          serialized_name: 'properties.enableAutomaticFailover',
          type: {
            name: 'Boolean'
          }
        },
        capabilities: {
          client_side_validation: true,
          required: false,
          serialized_name: 'properties.capabilities',
          type: {
            name: 'Sequence',
            element: {
                client_side_validation: true,
                required: false,
                serialized_name: 'CapabilityElementType',
                type: {
                  name: 'Composite',
                  class_name: 'Capability'
                }
            }
          }
        },
        virtual_network_rules: {
          client_side_validation: true,
          required: false,
          serialized_name: 'properties.virtualNetworkRules',
          type: {
            name: 'Sequence',
            element: {
                client_side_validation: true,
                required: false,
                serialized_name: 'VirtualNetworkRuleElementType',
                type: {
                  name: 'Composite',
                  class_name: 'VirtualNetworkRule'
                }
            }
          }
        },
        enable_multiple_write_locations: {
          client_side_validation: true,
          required: false,
          serialized_name: 'properties.enableMultipleWriteLocations',
          type: {
            name: 'Boolean'
          }
        },
        enable_cassandra_connector: {
          client_side_validation: true,
          required: false,
          serialized_name: 'properties.enableCassandraConnector',
          type: {
            name: 'Boolean'
          }
        },
        connector_offer: {
          client_side_validation: true,
          required: false,
          serialized_name: 'properties.connectorOffer',
          type: {
            name: 'String'
          }
        },
        disable_key_based_metadata_write_access: {
          client_side_validation: true,
          required: false,
          serialized_name: 'properties.disableKeyBasedMetadataWriteAccess',
          type: {
            name: 'Boolean'
          }
        }
      }
    }
  }
end