microsoft-azure-storage/src/com/microsoft/azure/storage/file/CloudFile.java
@DoesServiceRequest
    public final int downloadRangeToByteArray(final long offset, final Long length, final byte[] buffer,
            final int bufferOffset, final AccessCondition accessCondition, FileRequestOptions options,
            OperationContext opContext) throws StorageException {

        Utility.assertNotNull("buffer", buffer);

        if (length != null) {
            if (length + bufferOffset > buffer.length) {
                throw new IndexOutOfBoundsException();
            }
        }

        if (opContext == null) {
            opContext = new OperationContext();
        }

        opContext.initialize();

        return this.downloadRangeInternal(offset, length, buffer, bufferOffset, accessCondition, options, opContext);
    }
@DoesServiceRequest
    public final int downloadRangeToByteArray(final long offset, final Long length, final byte[] buffer,
            final int bufferOffset, final AccessCondition accessCondition, FileRequestOptions options,
            OperationContext opContext) throws StorageException {

        Utility.assertNotNull("buffer", buffer);

        if (length != null) {
            if (length + bufferOffset > buffer.length) {
                throw new IndexOutOfBoundsException();
            }
        }

        if (opContext == null) {
            opContext = new OperationContext();
        }

        opContext.initialize();

        return this.downloadRangeInternal(offset, length, buffer, bufferOffset, accessCondition, options, opContext);
    }
@ DoesServiceRequest public final int downloadRangeToByteArray ( final long offset , final Long length , final byte [ ] buffer , final int bufferOffset , final AccessCondition accessCondition , FileRequestOptions options , OperationContext opContext ) throws StorageException { Utility . assertNotNull ( "buffer" , buffer ) ; if ( length != null ) { if ( length + bufferOffset > buffer . length ) { throw new IndexOutOfBoundsException ( ) ; } } if ( opContext == null ) { opContext = new OperationContext ( ) ; } opContext . initialize ( ) ; return this . downloadRangeInternal ( offset , length , buffer , bufferOffset , accessCondition , options , opContext ) ; }
Downloads a range of bytes from the file to the given byte buffer, using the specified request options and
operation context.

@param offset
A <code>long</code> which represents the byte offset to use as the starting point for the source.
@param length
A <code>Long</code> which represents the number of bytes to read or <code>null</code>.
@param buffer
A <code>byte</code> array which represents the buffer to which the file bytes are downloaded.
@param bufferOffset
An <code>int</code> which represents the byte offset to use as the starting point for the target.
@param accessCondition
An {@link AccessCondition} object that represents the access conditions for the file.
@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.

@throws StorageException
If a storage service error occurred.
Downloads a range of bytes from the file to the given byte buffer using the specified request options and operation context .