public override async Task <ContainerResponse> ReadContainerAsync(
            ContainerRequestOptions requestOptions = null,
            CancellationToken cancellationToken    = default(CancellationToken))
        {
            ResponseMessage response = await this.ReadContainerStreamAsync(
                requestOptions : requestOptions,
                cancellationToken : cancellationToken);

            return(this.ClientContext.ResponseFactory.CreateContainerResponse(this, response));
        }
示例#2
0
 public override Task <ResponseMessage> ReadContainerStreamAsync(
     ContainerRequestOptions requestOptions = null,
     CancellationToken cancellationToken    = default(CancellationToken))
 {
     return(this.ProcessStreamAsync(
                streamPayload: null,
                operationType: OperationType.Read,
                requestOptions: requestOptions,
                cancellationToken: cancellationToken));
 }
示例#3
0
 public override Task <ResponseMessage> ReplaceContainerStreamAsync(
     ContainerProperties containerProperties,
     ContainerRequestOptions requestOptions = null,
     CancellationToken cancellationToken    = default)
 {
     return(this.ClientContext.OperationHelperAsync(
                nameof(ReplaceContainerStreamAsync),
                requestOptions,
                (diagnostics) => base.ReplaceContainerStreamAsync(diagnostics, containerProperties, requestOptions, cancellationToken)));
 }
 public override Task <ResponseMessage> DeleteContainerStreamAsync(
     ContainerRequestOptions requestOptions = null,
     CancellationToken cancellationToken    = default)
 {
     return(this.ClientContext.OperationHelperAsync(
                nameof(DeleteContainerStreamAsync),
                requestOptions,
                (trace) => base.DeleteContainerStreamAsync(trace, requestOptions, cancellationToken),
                (response) => new OpenTelemetryResponse(response)));
 }
 public override Task <ContainerResponse> ReplaceContainerAsync(
     ContainerProperties containerProperties,
     ContainerRequestOptions requestOptions = null,
     CancellationToken cancellationToken    = default)
 {
     return(this.ClientContext.OperationHelperAsync(
                nameof(ReplaceContainerAsync),
                requestOptions,
                (trace) => base.ReplaceContainerAsync(containerProperties, trace, requestOptions, cancellationToken)));
 }
示例#6
0
        public override Task <ContainerResponse> DeleteContainerAsync(
            ContainerRequestOptions requestOptions = null,
            CancellationToken cancellationToken    = default(CancellationToken))
        {
            Task <ResponseMessage> response = this.DeleteContainerStreamAsync(
                requestOptions: requestOptions,
                cancellationToken: cancellationToken);

            return(this.ClientContext.ResponseFactory.CreateContainerResponseAsync(this, response));
        }
 public override Task <ContainerResponse> ReadContainerAsync(
     ContainerRequestOptions requestOptions = null,
     CancellationToken cancellationToken    = default)
 {
     return(this.ClientContext.OperationHelperAsync(
                nameof(ReadContainerAsync),
                requestOptions,
                (trace) => base.ReadContainerAsync(trace, requestOptions, cancellationToken),
                (response) => new OpenTelemetryResponse <ContainerProperties>(response)));
 }
示例#8
0
 private Task <ResponseMessage> ReplaceStreamInternalAsync(
     Stream streamPayload,
     ContainerRequestOptions requestOptions = null,
     CancellationToken cancellationToken    = default(CancellationToken))
 {
     return(this.ProcessStreamAsync(
                streamPayload: streamPayload,
                operationType: OperationType.Replace,
                requestOptions: requestOptions,
                cancellationToken: cancellationToken));
 }
示例#9
0
 public Task <ResponseMessage> DeleteContainerStreamAsync(
     ITrace trace,
     ContainerRequestOptions requestOptions = null,
     CancellationToken cancellationToken    = default)
 {
     return(this.ProcessStreamAsync(
                streamPayload: null,
                operationType: OperationType.Delete,
                requestOptions: requestOptions,
                trace: trace,
                cancellationToken: cancellationToken));
 }
示例#10
0
        public async Task <ContainerResponse> DeleteContainerAsync(
            ITrace trace,
            ContainerRequestOptions requestOptions = null,
            CancellationToken cancellationToken    = default)
        {
            ResponseMessage response = await this.DeleteContainerStreamAsync(
                requestOptions : requestOptions,
                trace : trace,
                cancellationToken : cancellationToken);

            return(this.ClientContext.ResponseFactory.CreateContainerResponse(this, response));
        }
示例#11
0
 public Task <ResponseMessage> ReadContainerStreamAsync(
     CosmosDiagnosticsContext diagnosticsContext,
     ContainerRequestOptions requestOptions = null,
     CancellationToken cancellationToken    = default)
 {
     return(this.ProcessStreamAsync(
                diagnosticsContext: diagnosticsContext,
                streamPayload: null,
                operationType: OperationType.Read,
                requestOptions: requestOptions,
                cancellationToken: cancellationToken));
 }
示例#12
0
        public async Task <ContainerResponse> ReadContainerAsync(
            CosmosDiagnosticsContext diagnosticsContext,
            ContainerRequestOptions requestOptions = null,
            CancellationToken cancellationToken    = default)
        {
            ResponseMessage response = await this.ReadContainerStreamAsync(
                diagnosticsContext : diagnosticsContext,
                requestOptions : requestOptions,
                cancellationToken : cancellationToken);

            return(this.ClientContext.ResponseFactory.CreateContainerResponse(this, response));
        }
示例#13
0
 private Task <ResponseMessage> ProcessStreamAsync(
     Stream streamPayload,
     OperationType operationType,
     ContainerRequestOptions requestOptions = null,
     CancellationToken cancellationToken    = default(CancellationToken))
 {
     return(this.ProcessResourceOperationStreamAsync(
                streamPayload: streamPayload,
                operationType: operationType,
                linkUri: this.LinkUri,
                resourceType: ResourceType.Collection,
                requestOptions: requestOptions,
                cancellationToken: cancellationToken));
 }
 private Task <ResponseMessage> ReplaceStreamInternalAsync(
     CosmosDiagnosticsContext diagnosticsContext,
     Stream streamPayload,
     ITrace trace,
     ContainerRequestOptions requestOptions = null,
     CancellationToken cancellationToken    = default)
 {
     return(this.ProcessStreamAsync(
                diagnosticsContext: diagnosticsContext,
                streamPayload: streamPayload,
                operationType: OperationType.Replace,
                requestOptions: requestOptions,
                trace: trace,
                cancellationToken: cancellationToken));
 }
示例#15
0
        public override Task <ResponseMessage> ReplaceContainerStreamAsync(
            ContainerProperties containerProperties,
            ContainerRequestOptions requestOptions = null,
            CancellationToken cancellationToken    = default(CancellationToken))
        {
            if (containerProperties == null)
            {
                throw new ArgumentNullException(nameof(containerProperties));
            }

            this.ClientContext.ValidateResource(containerProperties.Id);
            return(this.ReplaceStreamInternalAsync(
                       streamPayload: this.ClientContext.SerializerCore.ToStream(containerProperties),
                       requestOptions: requestOptions,
                       cancellationToken: cancellationToken));
        }
 private Task <CosmosResponseMessage> ProcessStreamAsync(
     Stream streamPayload,
     OperationType operationType,
     ContainerRequestOptions requestOptions = null,
     CancellationToken cancellationToken    = default(CancellationToken))
 {
     return(this.ClientContext.ProcessResourceOperationStreamAsync(
                resourceUri: this.LinkUri,
                resourceType: ResourceType.Collection,
                operationType: operationType,
                cosmosContainerCore: null,
                partitionKey: null,
                streamPayload: streamPayload,
                requestOptions: requestOptions,
                requestEnricher: null,
                cancellationToken: cancellationToken));
 }
        public override Task <ContainerResponse> ReplaceAsync(
            CosmosContainerSettings containerSettings,
            ContainerRequestOptions requestOptions = null,
            CancellationToken cancellationToken    = default(CancellationToken))
        {
            if (containerSettings == null)
            {
                throw new ArgumentNullException(nameof(containerSettings));
            }

            this.ClientContext.ValidateResource(containerSettings.Id);
            Task <CosmosResponseMessage> response = this.ReplaceStreamInternalAsync(
                streamPayload: this.ClientContext.SettingsSerializer.ToStream(containerSettings),
                requestOptions: requestOptions,
                cancellationToken: cancellationToken);

            return(this.ClientContext.ResponseFactory.CreateContainerResponseAsync(this, response));
        }
示例#18
0
        public async Task <ContainerResponse> ReplaceContainerAsync(
            ContainerProperties containerProperties,
            ITrace trace,
            ContainerRequestOptions requestOptions = null,
            CancellationToken cancellationToken    = default)
        {
            if (containerProperties == null)
            {
                throw new ArgumentNullException(nameof(containerProperties));
            }

            this.ClientContext.ValidateResource(containerProperties.Id);
            ResponseMessage response = await this.ReplaceStreamInternalAsync(
                streamPayload : this.ClientContext.SerializerCore.ToStream(containerProperties),
                requestOptions : requestOptions,
                trace : trace,
                cancellationToken : cancellationToken);

            return(this.ClientContext.ResponseFactory.CreateContainerResponse(this, response));
        }
        public Task <ResponseMessage> ReplaceContainerStreamAsync(
            CosmosDiagnosticsContext diagnosticsContext,
            ContainerProperties containerProperties,
            ITrace trace,
            ContainerRequestOptions requestOptions = null,
            CancellationToken cancellationToken    = default)
        {
            if (containerProperties == null)
            {
                throw new ArgumentNullException(nameof(containerProperties));
            }

            this.ClientContext.ValidateResource(containerProperties.Id);
            return(this.ReplaceStreamInternalAsync(
                       diagnosticsContext: diagnosticsContext,
                       streamPayload: this.ClientContext.SerializerCore.ToStream(containerProperties),
                       requestOptions: requestOptions,
                       trace: trace,
                       cancellationToken: cancellationToken));
        }
 public override Task <ResponseMessage> DeleteContainerStreamAsync(
     ContainerRequestOptions requestOptions = null,
     CancellationToken cancellationToken    = default)
 {
     return(TaskHelper.RunInlineIfNeededAsync(() => this.container.DeleteContainerStreamAsync(requestOptions, cancellationToken)));
 }
 public override Task <ContainerResponse> ReadContainerAsync(
     ContainerRequestOptions requestOptions = null,
     CancellationToken cancellationToken    = default)
 {
     return(TaskHelper.RunInlineIfNeededAsync(() => this.container.ReadContainerAsync(requestOptions, cancellationToken)));
 }
示例#22
0
 /// <summary>
 /// Delete a <see cref="CosmosContainerSettings"/> from the Azure Cosmos DB service as an asynchronous operation.
 /// </summary>
 /// <param name="requestOptions">(Optional) The options for the container request <see cref="RequestOptions"/></param>
 /// <param name="cancellationToken">(Optional) <see cref="CancellationToken"/> representing request cancellation.</param>
 /// <returns>A <see cref="Task"/> containing a <see cref="CosmosResponseMessage"/> which will contain information about the request issued.</returns>
 public abstract Task <CosmosResponseMessage> DeleteStreamAsync(
     ContainerRequestOptions requestOptions = null,
     CancellationToken cancellationToken    = default(CancellationToken));
示例#23
0
 /// <summary>
 /// Replace a <see cref="CosmosContainerSettings"/> from the Azure Cosmos service as an asynchronous operation.
 /// </summary>
 /// <param name="containerSettings">The <see cref="CosmosContainerSettings"/>.</param>
 /// <param name="requestOptions">(Optional) The options for the container request <see cref="RequestOptions"/></param>
 /// <param name="cancellationToken">(Optional) <see cref="CancellationToken"/> representing request cancellation.</param>
 /// <returns>
 /// A <see cref="Task"/> containing a <see cref="CosmosResponseMessage"/> containing the replace resource record.
 /// </returns>
 public abstract Task <CosmosResponseMessage> ReplaceStreamAsync(
     CosmosContainerSettings containerSettings,
     ContainerRequestOptions requestOptions = null,
     CancellationToken cancellationToken    = default(CancellationToken));
示例#24
0
 /// <summary>
 /// Reads a <see cref="CosmosContainerSettings"/> from the Azure Cosmos service as an asynchronous operation.
 /// </summary>
 /// <param name="requestOptions">(Optional) The options for the container request <see cref="RequestOptions"/></param>
 /// <param name="cancellationToken">(Optional) <see cref="CancellationToken"/> representing request cancellation.</param>
 /// <returns>
 /// A <see cref="Task"/> containing a <see cref="ContainerResponse"/> which wraps a <see cref="CosmosContainerSettings"/> containing the read resource record.
 /// </returns>
 /// <exception cref="CosmosException">This exception can encapsulate many different types of errors. To determine the specific error always look at the StatusCode property. Some common codes you may get when creating a Document are:
 /// <list type="table">
 ///     <listheader>
 ///         <term>StatusCode</term><description>Reason for exception</description>
 ///     </listheader>
 ///     <item>
 ///         <term>404</term><description>NotFound - This means the resource you tried to read did not exist.</description>
 ///     </item>
 ///     <item>
 ///         <term>429</term><description>TooManyRequests - This means you have exceeded the number of request units per second. Consult the DocumentClientException.RetryAfter value to see how long you should wait before retrying this operation.</description>
 ///     </item>
 /// </list>
 /// </exception>
 /// <example>
 /// <code language="c#">
 /// <![CDATA[
 /// CosmosContainer cosmosContainer = this.database.GetContainer("containerId");
 /// CosmosContainerSettings settings = cosmosContainer.ReadAsync();
 /// ]]>
 /// </code>
 /// </example>
 public abstract Task <ContainerResponse> ReadAsync(
     ContainerRequestOptions requestOptions = null,
     CancellationToken cancellationToken    = default(CancellationToken));