public virtual ICancellableAsyncResult BeginSetServiceProperties(FileServiceProperties properties, FileRequestOptions requestOptions, OperationContext operationContext, AsyncCallback callback, object state) { requestOptions = FileRequestOptions.ApplyDefaults(requestOptions, this); operationContext = operationContext ?? new OperationContext(); return(CancellableAsyncResultTaskWrapper.Create(token => this.SetServicePropertiesAsync(properties, requestOptions, operationContext), callback, state)); }
public virtual ShareResultSegment ListSharesSegmented(string prefix, ShareListingDetails detailsIncluded, int?maxResults, FileContinuationToken currentToken, FileRequestOptions options = null, OperationContext operationContext = null) { FileRequestOptions modifiedOptions = FileRequestOptions.ApplyDefaults(options, this); ResultSegment <CloudFileShare> resultSegment = this.ListSharesSegmentedCore(prefix, detailsIncluded, maxResults, currentToken, modifiedOptions, operationContext); return(new ShareResultSegment(resultSegment.Results, (FileContinuationToken)resultSegment.ContinuationToken)); }
public virtual IEnumerable <CloudFileShare> ListShares(string prefix = null, ShareListingDetails detailsIncluded = ShareListingDetails.None, FileRequestOptions options = null, OperationContext operationContext = null) { FileRequestOptions modifiedOptions = FileRequestOptions.ApplyDefaults(options, this); return(CommonUtility.LazyEnumerable( token => this.ListSharesSegmentedCore(prefix, detailsIncluded, null, (FileContinuationToken)token, modifiedOptions, operationContext), long.MaxValue)); }
public virtual void SetServiceProperties(FileServiceProperties properties, FileRequestOptions requestOptions = null, OperationContext operationContext = null) { requestOptions = FileRequestOptions.ApplyDefaults(requestOptions, this); operationContext = operationContext ?? new OperationContext(); Executor.ExecuteSync( this.SetServicePropertiesImpl(properties, requestOptions), requestOptions.RetryPolicy, operationContext); }
public virtual Task <CloseFileHandleResultSegment> CloseHandleSegmentedAsync(string handleId, FileContinuationToken token, bool?recursive = null, AccessCondition accessCondition = null, FileRequestOptions options = null, OperationContext operationContext = null, CancellationToken?cancellationToken = null) { FileRequestOptions modifiedOptions = FileRequestOptions.ApplyDefaults(options, this.ServiceClient); return(Executor.ExecuteAsync( this.CloseHandleImpl(token, handleId, recursive, accessCondition, modifiedOptions), modifiedOptions.RetryPolicy, operationContext, cancellationToken ?? CancellationToken.None)); }
public virtual Task FetchAttributesAsync(AccessCondition accessCondition, FileRequestOptions options, OperationContext operationContext, CancellationToken cancellationToken) { FileRequestOptions modifiedOptions = FileRequestOptions.ApplyDefaults(options, this.ServiceClient); return(Executor.ExecuteAsyncNullReturn( this.FetchAttributesImpl(accessCondition, modifiedOptions), modifiedOptions.RetryPolicy, operationContext, cancellationToken)); }
public virtual Task <bool> ExistsAsync(FileRequestOptions options, OperationContext operationContext, CancellationToken cancellationToken) { FileRequestOptions modifiedOptions = FileRequestOptions.ApplyDefaults(options, this.ServiceClient); return(Executor.ExecuteAsync( this.ExistsImpl(modifiedOptions), modifiedOptions.RetryPolicy, operationContext, cancellationToken)); }
public virtual Task SetServicePropertiesAsync(FileServiceProperties properties, FileRequestOptions requestOptions, OperationContext operationContext, CancellationToken cancellationToken) { requestOptions = FileRequestOptions.ApplyDefaults(requestOptions, this); operationContext = operationContext ?? new OperationContext(); return(Executor.ExecuteAsync( this.SetServicePropertiesImpl(properties, requestOptions), requestOptions.RetryPolicy, operationContext, cancellationToken)); }
public virtual async Task <ShareResultSegment> ListSharesSegmentedAsync(string prefix, ShareListingDetails detailsIncluded, int?maxResults, FileContinuationToken currentToken, FileRequestOptions options, OperationContext operationContext, CancellationToken cancellationToken) { FileRequestOptions modifiedOptions = FileRequestOptions.ApplyDefaults(options, this); ResultSegment <CloudFileShare> resultSegment = await Executor.ExecuteAsync( this.ListSharesImpl(prefix, detailsIncluded, currentToken, maxResults, modifiedOptions), modifiedOptions.RetryPolicy, operationContext, cancellationToken).ConfigureAwait(false); return(new ShareResultSegment(resultSegment.Results, (FileContinuationToken)resultSegment.ContinuationToken)); }
public virtual Task CreateAsync(FileRequestOptions options, OperationContext operationContext, CancellationToken cancellationToken) { this.Share.AssertNoSnapshot(); FileRequestOptions modifiedOptions = FileRequestOptions.ApplyDefaults(options, this.ServiceClient); return(Executor.ExecuteAsyncNullReturn( this.CreateDirectoryImpl(modifiedOptions), modifiedOptions.RetryPolicy, operationContext, cancellationToken)); }
public virtual Task SetMetadataAsync(AccessCondition accessCondition, FileRequestOptions options, OperationContext operationContext, CancellationToken cancellationToken) { this.Share.AssertNoSnapshot(); FileRequestOptions modifiedOptions = FileRequestOptions.ApplyDefaults(options, this.ServiceClient); return(Executor.ExecuteAsyncNullReturn( this.SetMetadataImpl(accessCondition, modifiedOptions), modifiedOptions.RetryPolicy, operationContext, cancellationToken)); }
public virtual async Task <FileResultSegment> ListFilesAndDirectoriesSegmentedAsync(string prefix, int?maxResults, FileContinuationToken currentToken, FileRequestOptions options, OperationContext operationContext, CancellationToken cancellationToken) { FileRequestOptions modifiedOptions = FileRequestOptions.ApplyDefaults(options, this.ServiceClient); ResultSegment <IListFileItem> resultSegment = await Executor.ExecuteAsync( this.ListFilesAndDirectoriesImpl(maxResults, modifiedOptions, currentToken, prefix), modifiedOptions.RetryPolicy, operationContext, cancellationToken).ConfigureAwait(false); return(new FileResultSegment(resultSegment.Results, (FileContinuationToken)resultSegment.ContinuationToken)); }
public virtual Task <FileServiceProperties> GetServicePropertiesAsync(FileRequestOptions options, OperationContext operationContext, CancellationToken cancellationToken) { FileRequestOptions modifiedOptions = FileRequestOptions.ApplyDefaults(options, this); operationContext = operationContext ?? new OperationContext(); return(Executor.ExecuteAsync( this.GetServicePropertiesImpl(modifiedOptions), modifiedOptions.RetryPolicy, operationContext, cancellationToken)); }
public virtual async Task <bool> DeleteIfExistsAsync(AccessCondition accessCondition, FileRequestOptions options, OperationContext operationContext, CancellationToken cancellationToken) { FileRequestOptions modifiedOptions = FileRequestOptions.ApplyDefaults(options, this.ServiceClient); try { bool exists = await Executor.ExecuteAsync( this.ExistsImpl(modifiedOptions), modifiedOptions.RetryPolicy, operationContext, cancellationToken).ConfigureAwait(false); if (!exists) { return(false); } } catch (StorageException e) { if (e.RequestInformation.HttpStatusCode != (int)HttpStatusCode.Forbidden) { throw; } } try { await Executor.ExecuteAsync( this.DeleteDirectoryImpl(accessCondition, modifiedOptions), modifiedOptions.RetryPolicy, operationContext, cancellationToken).ConfigureAwait(false); return(true); } catch (StorageException e) { if (e.RequestInformation.HttpStatusCode == (int)HttpStatusCode.NotFound) { return(false); } else { throw; } } }
public virtual async Task <bool> CreateIfNotExistsAsync(FileRequestOptions options, OperationContext operationContext, CancellationToken cancellationToken) { FileRequestOptions modifiedOptions = FileRequestOptions.ApplyDefaults(options, this.ServiceClient); try { // Root directory always exists if the share exists. // We cannot call this.CreateDirectoryImpl if this is the root directory, because the service will always // return a 405 error in that case, regardless of whether or not the share exists. if (string.IsNullOrEmpty(this.Name)) { // If the share does not exist, this fetch call will throw a 404, which is what we want. await Executor.ExecuteAsync( this.FetchAttributesImpl(null, modifiedOptions), modifiedOptions.RetryPolicy, operationContext, cancellationToken).ConfigureAwait(false); return(false); } await Executor.ExecuteAsync( this.CreateDirectoryImpl(modifiedOptions), modifiedOptions.RetryPolicy, operationContext, cancellationToken).ConfigureAwait(false); return(true); } catch (StorageException e) { #pragma warning disable 618 if ((e.RequestInformation.ExtendedErrorInformation != null) && (e.RequestInformation.ExtendedErrorInformation.ErrorCode == FileErrorCodeStrings.ResourceAlreadyExists)) #pragma warning restore 618 { return(false); } else { throw; } } }
public virtual ICancellableAsyncResult BeginListSharesSegmented(string prefix, ShareListingDetails detailsIncluded, int?maxResults, FileContinuationToken currentToken, FileRequestOptions options, OperationContext operationContext, AsyncCallback callback, object state) { FileRequestOptions modifiedOptions = FileRequestOptions.ApplyDefaults(options, this); return(CancellableAsyncResultTaskWrapper.Create(token => this.ListSharesSegmentedAsync(prefix, detailsIncluded, maxResults, currentToken, modifiedOptions, operationContext), callback, state)); }