The main Azure Data Lake Store SDK classes. If you are new to the SDK, start exploring from the class.



Exception type returned by Azure Data Lake SDK methods. Derives from IOException. Contains a number of additional fields that contain information about the success or failure of a server call.


ADLFileInputStream can be used to read data from an open file on ADL. It is a buffering stream, that reads data from the server in bulk, and then satisfies user reads from the buffer. Default buffer size is 4MB.

Thread-safety: Note that methods in this class are NOT thread-safe.


ADLFileOutputStream is used to add data to an Azure Data Lake File. It is a buffering stream that accumulates user writes, and then writes to the server in chunks. Default chunk size is 4MB.

Thread-safety: Note that methods in this class are NOT thread-safe.


ADLStoreClient class represents a client to Azure Data Lake. It can be used to perform operations on files and directories.


Options to configure the behavior of ADLStoreClient


structure that contains the return values from getContentSummary call.


protocol.Core class implements the calls for the RESP API. There is one method in Core for every REST API supported by the server.

The methods in this class tend to be lower-level, exposing all the details of the underlying operation. To call the methods, instantiate a RequestOptions object first. Assign any of the member values as needed (e.g., the RetryPolicy). Then create a new OperationResponse object. The OperationResponse is used for passing the call results and stats back from the call.

Failures originating in Core methods are communicated back through the OperationResponse parameter.

Thread Safety: all static methods in this class are thread-safe


filesystem metadata of a directory enrty (a file or a directory) in ADL.


LatencyTracker keeps track of client-preceived request latencies, to be reported on the next REST request. Every request adds its result (success/failure and latency) to LatencyTracker. When a request is made, the SDK checks LatencyTracker to see if there are any latency stats to be reported. If so, the stats are added as an HTTP header (x-ms-adl-client-latency ) on the next request.

To disable this reporting, user can call disable().

Contents of data reported back:

  • Client Request ID of last request

  • latency in milliseconds

  • error code (if request failed)

  • Operation

  • Request+response body Size

  • number for AzureDataLakeStoreClient that made this call


information about a response from a server call.

This class is a container for all the information from making a server call.


Internal class for SDK's internal use. DO NOT USE.


common options to control the behavior of server calls


Utility methods to enable one-liners for simple functionality.

The methods are all based on calls to the SDK methods, these are just convenience methods for common tasks.



enum to indicate whether a directory entry is a file or a directory.


Enum specifying how to interpret the expiry time specified in setExpiry call.


Enum specifying actions to take if attempting to create a file that already exists.


Indicator flags to backend during append.


Enum specifying how user and group objects should be represented in calls that return user and group ID.