microsoft-azure-storage/src/com/microsoft/azure/storage/file/CloudFile.java
@DoesServiceRequest
    public final String startCopy(final URI source, final AccessCondition sourceAccessCondition,
            final AccessCondition destinationAccessCondition, FileRequestOptions options, OperationContext opContext)
            throws StorageException, URISyntaxException {
        if (opContext == null) {
            opContext = new OperationContext();
        }

        this.getShare().assertNoSnapshot();

        opContext.initialize();
        options = FileRequestOptions.populateAndApplyDefaults(options, this.fileServiceClient);

        return ExecutionEngine.executeWithRetry(this.fileServiceClient, this,
                this.startCopyImpl(source, sourceAccessCondition, destinationAccessCondition, options),
                options.getRetryPolicyFactory(), opContext);
    }
@DoesServiceRequest
    public final String startCopy(final URI source, final AccessCondition sourceAccessCondition,
            final AccessCondition destinationAccessCondition, FileRequestOptions options, OperationContext opContext)
            throws StorageException, URISyntaxException {
        if (opContext == null) {
            opContext = new OperationContext();
        }

        this.getShare().assertNoSnapshot();

        opContext.initialize();
        options = FileRequestOptions.populateAndApplyDefaults(options, this.fileServiceClient);

        return ExecutionEngine.executeWithRetry(this.fileServiceClient, this,
                this.startCopyImpl(source, sourceAccessCondition, destinationAccessCondition, options),
                options.getRetryPolicyFactory(), opContext);
    }
Requests the service to start copying a URI's contents, properties, and metadata to a new Azure File,
using the specified access conditions, lease ID, request options, and operation context.

@param source
The source's <code>java.net.URI</code>.
@param sourceAccessCondition
An {@link AccessCondition} object that represents the access conditions for the source.
@param destinationAccessCondition
An {@link AccessCondition} object that represents the access conditions for the destination.
@param options
A {@link FileRequestOptions} object that specifies any additional options for the request.
Specifying <code>null</code> will use the default request options from the associated
service client ({@link CloudFileClient}).
@param opContext
An {@link OperationContext} object that represents the context for the current operation.
This object is used to track requests to the storage service, and to provide additional
runtime information about the operation.

@return A <code>String</code> which represents the copy ID associated with the copy operation.

@throws StorageException
If a storage service error occurred.
@throws URISyntaxException