code: public ServiceFuture<List<CloudTask>> listAsync(final String jobId, final ListOperationCallback<CloudTask> serviceCallback) {
          return AzureServiceFuture.fromHeaderPageResponse(
              listSinglePageAsync(jobId),
              new Func1<String, Observable<ServiceResponseWithHeaders<Page<CloudTask>, TaskListHeaders>>>() {
                  @Override
                  public Observable<ServiceResponseWithHeaders<Page<CloudTask>, TaskListHeaders>> call(String nextPageLink) {
                      return listNextSinglePageAsync(nextPageLink, null);
                  }
              },
              serviceCallback);
      }
docs: Lists all of the tasks that are associated with the specified job.
  For multi-instance tasks, information such as affinityId, executionInfo and nodeInfo refer to the primary task. Use the list subtasks API to retrieve information about subtasks.
  
  @param jobId The ID of the job.
  @param serviceCallback the async ServiceCallback to handle successful and failed responses.
  @throws IllegalArgumentException thrown if parameters fail the validation
  @return the {@link ServiceFuture} object