com.microsoft.azure.documentdb

Classes

AccessCondition

Represents a set of access conditions to be used for operations against the Azure Cosmos DB database service.

Attachment

Represents a document attachment in the Azure Cosmos DB database service.

Each document may contain zero or more attachemnts. Attachments can be of any MIME type - text, image, binary data. These are stored externally in Azure Blob storage. Attachments are automatically deleted when the parent document is deleted.

ChangeFeedOptions

Specifies the options associated with change feed methods (enumeration operations) in the Azure Cosmos DB database service.

Conflict

Represents a conflict in the version of a particular resource in the Azure Cosmos DB database service.

During rare failure scenarios, conflicts are generated for the documents in transit. Clients can inspect the respective conflict instances for resources and operations in conflict.

ConnectionPolicy

Represents the Connection policy associated with a DocumentClient in the Azure Cosmos DB database service.

ConsistencyPolicy

Encapsulates the settings for consistency policy in the Azure Cosmos DB database service.

Database

Represents a Database in the Azure Cosmos DB database service. A database manages users, permissions and a set of collections

Each Azure Cosmos DB Service is able to support multiple independent named databases, with the database being the logical container for data. Each Database consists of one or more collections, each of which in turn contain one or more documents. Since databases are an an administrative resource and the Service Master Key will be required in order to access and successfully complete any action using the User APIs.

DatabaseAccount

Represents a database account in the Azure Cosmos DB database service.

DatabaseAccountLocation

Represents the location of a database account in the Azure Cosmos DB database service.

Document

Represents a document in the Azure Cosmos DB database service.

A document is a structured JSON document. There is no set schema for the JSON documents, and a document may contain any number of custom properties as well as an optional list of attachments. Document is an application resource and can be authorized using the master key or resource keys.

DocumentClient

Provides a client-side logical representation of the Azure Cosmos DB service. This client is used to configure and execute requests against the service.

The service client encapsulates the endpoint and credentials used to access the Azure Cosmos DB service.

DocumentClientException

This class defines a custom exception type for all operations on DocumentClient in the Azure Cosmos DB database service. Applications are expected to catch DocumentClientException and handle errors as appropriate when calling methods on DocumentClient.

Errors coming from the service during normal execution are converted to DocumentClientException before returning to the application with the following exception:

When a BE error is encountered during a QueryIterable<T> iteration, an IllegalStateException is thrown instead of DocumentClientException.

When a transport level error happens that request is not able to reach the service, an IllegalStateException is thrown instead of DocumentClientException.

DocumentCollection

Represents a document collection in the Azure Cosmos DB database service. A collection is a named logical container for documents.

A database may contain zero or more named collections and each collection consists of zero or more JSON documents. Being schema-free, the documents in a collection do not need to share the same structure or fields. Since collections are application resources, they can be authorized using either the master key or resource keys.

DocumentQueryClientInternal

Provides methods to do query in the Azure Cosmos DB database service.

Error

Encapsulates error related details in the Azure Cosmos DB database service.

ExcludedPath

Represents an excluded path of the IndexingPolicy in the Azure Cosmos DB database service.

FeedOptions

Specifies the options associated with feed methods (enumeration operations) in the Azure Cosmos DB database service.

FeedOptionsBase

Specifies the common options associated with feed methods (enumeration operations) in the Azure Cosmos DB database service.

FeedResponse<T>

Template class used by feed methods (enumeration operations) in the Azure Cosmos DB database service.

HashIndex

Represents a hash index in the Azure Cosmos DB database service.

HashPartitionResolver

HashPartitionResolver implements partitioning based on the value of a hash function, allowing you to evenly distribute requests and data across a number of partitions by implementing PartitionResolver interface in the Azure Cosmos DB database service.

IncludedPath

Represents an included path of the IndexingPolicy in the Azure Cosmos DB database service.

Index

Represents the index of a collection in the Azure Cosmos DB database service.

IndexingPolicy

Represents the indexing policy configuration for a collection in the Azure Cosmos DB database service.

JsonSerializable

Represents a base resource that can be serialized to JSON in the Azure Cosmos DB database service.

Note on Serializable: this interface is implemented solely for the use with the CosmosDB Spark Connector. In RDD transformation, it is a requirement of the RDD item type to be Serializable so that they can be transferred among the work nodes by the default serializer. The Serializable is not intended to be used by the user of the Cosmos DB Java SDK. Avoid relying on the serialized string format as it can change in the future.

MediaOptions

Options used with attachment content (aka media) creation in the Azure Cosmos DB database service.

MediaResponse

Response associated with retrieving attachment content in the Azure Cosmos DB database service.

MurmurHash

The MurmurHash3 algorithm was created by Austin Appleby and placed in the public domain. This java port was authored by Yonik Seeley and also placed into the public domain. The author hereby disclaims copyright to this source code.

This produces exactly the same hash values as the final C++ version of MurmurHash3 and is thus suitable for producing the same hash values across platforms.

The 32 bit x86 version of this hash should be the fastest variant for relatively short keys like ids. See http://github.com/yonik/java_util for future updates to this file.

Offer

Represents the offer for a resource in the Azure Cosmos DB database service.

OfferV2

Represents an offer version 2 in the Azure Cosmos DB database service.

PartitionKey

Represents a partition key value in the Azure Cosmos DB database service. A partition key identifies the partition where the document is stored in.

PartitionKeyDefinition

Represents a partition key definition in the Azure Cosmos DB database service. A partition key definition specifies which document property is used as the partition key in a collection that has multiple partitions.

PartitionKeyRange

Represent a partition key range in the Azure Cosmos DB database service.

PartitionKeyRangeStatistics
PartitionKeyStatistics

Represents the statistics of a logical partition key in the Azure Cosmos DB service.

Permission

Represents a per-User Permission to access a specific resource e.g. Document or Collection in the Azure Cosmos DB database service.

QueryIterable<T>

This is the template class for iterable resources in the Azure Cosmos DB database service.

Range<T>

Represents a range in the Azure Cosmos DB database service.

RangeIndex

Represents a range index in the Azure Cosmos DB database service.

RangePartitionResolver<T>

RangePartitionResolver implements partitioning based on the ranges in the Azure Cosmos DB database service. It allows you to distribute requests and data across a number of partitions by implementing PartitionResolver interface.

ReplicationPolicy

Encapsulates the replication policy in the Azure Cosmos DB database service.

RequestOptions

Encapsulates options that can be specified for a request issued to the Azure Cosmos DB database service.

Resource

Represents the base resource in the Azure Cosmos DB database service.

ResourceResponse<T>

Represents the service response to a request made from DocumentClient in the Azure Cosmos DB database service. Contains both the resource and the response headers.

RetryOptions

Encapsulates retry options in the Azure Cosmos DB database service.

SpatialIndex

Represents a spatial index in the Azure Cosmos DB database service.

SqlParameter

Represents a SQL parameter in the SqlQuerySpec used for queries in the Azure Cosmos DB database service.

SqlParameterCollection

Represents a collection of SQL parameters to for a SQL query in the Azure Cosmos DB database service.

SqlQuerySpec

Represents a SQL query in the Azure Cosmos DB database service.

StoredProcedure

Represents a stored procedure in the Azure Cosmos DB database service.

Azure Cosmos DB allows stored procedures to be executed in the storage tier, directly against a document collection. The script gets executed under ACID transactions on the primary storage partition of the specified collection. For additional details, refer to the server-side JavaScript API documentation.

StoredProcedureResponse

Represents the response returned from a stored procedure in the Azure Cosmos DB database service. Wraps the response body and headers.

Trigger

Represents a trigger in the Azure Cosmos DB database service.

Azure Cosmos DB supports pre and post triggers defined in JavaScript to be executed on creates, updates and deletes. For additional details, refer to the server-side JavaScript API documentation.

Undefined

Represents the 'Undefined' partition key in the Azure Cosmos DB database service.

UniqueKey

Represents a unique key on that enforces uniqueness constraint on documents in the collection in the Azure Cosmos DB service.

1) For partitioned collections, the value of partition key is implicitly a part of each unique key. 2) Uniqueness constraint is also enforced for missing values. For instance, if unique key policy defines a unique key with single property path, there could be only one document that has missing value for this property.

UniqueKeyPolicy

Represents the unique key policy configuration for specifying uniqueness constraints on documents in the collection in the Azure Cosmos DB service.

User

Represents a database user in the Azure Cosmos DB database service.

UserDefinedFunction

Represents a user defined function in the Azure Cosmos DB database service.

Azure Cosmos DB supports JavaScript UDFs which can be used inside queries, stored procedures and triggers. For additional details, refer to the server-side JavaScript API documentation.

Interfaces

DatabaseAccountManagerInternal
HashGenerator

HashGenerator interface to be implemented for computing the hash used in the hashing algorithm for the Azure Cosmos DB database service.

PartitionKeyExtractor

PartitionKeyExtractor interface is used for getting the partition key from a document in the Azure Cosmos DB database service.

PartitionResolver

This is an interface to be implemented for partitioning scenarios and register it at the document client level in the Azure Cosmos DB database service.

Enums

AccessConditionType

Specifies the set of access condition types that can be used for operations in the Azure Cosmos DB database service.

ConnectionMode

Represents the connection mode to be used by the client in the Azure Cosmos DB database service.

Direct and Gateway connectivity modes are supported. Gateway is the default. Refer to <see>http://azure.microsoft.com/documentation/articles/documentdb- interactions-with-resources/connectivity-options</see> for additional details.

ConsistencyLevel

Represents the consistency levels supported for Azure Cosmos DB client operations in the Azure Cosmos DB database service.

The requested ConsistencyLevel must match or be weaker than that provisioned for the database account. Consistency levels by order of strength are Strong, BoundedStaleness, Session and Eventual.

DataType

Data types in the Azure Cosmos DB database service.

IndexingDirective

Specifies whether or not the resource is to be indexed in the Azure Cosmos DB database service.

IndexingMode

Specifies the supported indexing modes in the Azure Cosmos DB database service.

IndexKind

These are the indexing types available for indexing a path in the Azure Cosmos DB database service. For additional details, refer to http://azure.microsoft.com/documentation/articles/documentdb-indexing-policies/#ConfigPolicy.

MediaReadMode

Represents the mode for use with downloading attachment content (aka media) from the Azure Cosmos DB database service.

PartitionKind

Specifies the partition scheme for an multiple-partitioned collection in the Azure Cosmos DB database service.

PermissionMode

Enumeration specifying applicability of permission in the Azure Cosmos DB database service.

SerializationFormattingPolicy

The formatting policy associated with JSON serialization in the Azure Cosmos DB database service.

TriggerOperation

Specifies the operations on which a trigger should be executed in the Azure Cosmos DB database service.

TriggerType

The trigger type in the Azure Cosmos DB database service.