コード例 #1
0
        private (ServiceRestClient ServiceClient, ContainerRestClient ContainerClient) BuildRestClients(Uri serviceUri)
        {
            ServiceRestClient serviceRestClient = new ServiceRestClient(
                clientDiagnostics: _clientDiagnostics,
                pipeline: _pipeline,
                url: serviceUri.AbsoluteUri,
                version: _version.ToVersionString());

            ContainerRestClient containerRestClient = new ContainerRestClient(
                clientDiagnostics: _clientDiagnostics,
                pipeline: _pipeline,
                url: serviceUri.AbsoluteUri,
                version: _version.ToVersionString());

            return(serviceRestClient, containerRestClient);
        }
コード例 #2
0
        private (ServiceRestClient, ContainerRestClient) BuildRestClients()
        {
            BlobUriBuilder uriBuilder = new BlobUriBuilder(_uri);

            uriBuilder.BlobContainerName = null;
            uriBuilder.BlobName          = null;

            ServiceRestClient serviceRestClient = new ServiceRestClient(
                clientDiagnostics: _clientDiagnostics,
                pipeline: _pipeline,
                url: uriBuilder.ToUri().ToString(),
                version: _version.ToVersionString());

            ContainerRestClient containerRestClient = new ContainerRestClient(
                clientDiagnostics: _clientDiagnostics,
                pipeline: _pipeline,
                url: uriBuilder.ToUri().ToString(),
                version: _version.ToVersionString());

            return(serviceRestClient, containerRestClient);
        }
コード例 #3
0
        /// <summary>
        /// Initializes a new instance of the <see cref="BlobBatchClient"/>
        /// class for the same account as the <see cref="BlobServiceClient"/>.
        /// The new <see cref="BlobBatchClient"/> uses the same request policy
        /// pipeline as the <see cref="BlobServiceClient"/>.
        /// </summary>
        /// <param name="client">The <see cref="BlobServiceClient"/>.</param>
        public BlobBatchClient(BlobServiceClient client)
        {
            _uri      = client.Uri;
            _pipeline = BlobServiceClientInternals.GetHttpPipeline(client);
            BlobClientOptions options = BlobServiceClientInternals.GetClientOptions(client);

            _version           = options.Version;
            _clientDiagnostics = new StorageClientDiagnostics(options);

            // Construct a dummy pipeline for processing batch sub-operations
            // if we don't have one cached on the service
            _batchOperationPipeline = CreateBatchPipeline(
                _pipeline,
                BlobServiceClientInternals.GetAuthenticationPolicy(client),
                _version);

            (ServiceRestClient serviceRestClient, ContainerRestClient containerRestClient) = BuildRestClients(_uri);
            _serviceRestClient   = serviceRestClient;
            _containerRestClient = containerRestClient;

            _isContainerScoped = false;
        }