use of com.microsoft.azure.batch.protocol.models.JobPreparationAndReleaseTaskExecutionInformation in project azure-sdk-for-java by Azure.
the class JobsImpl method listPreparationAndReleaseTaskStatusNextAsync.
/**
* Lists the execution status of the Job Preparation and Job Release task for the specified job across the compute nodes where the job has run.
*
* @param nextPageLink The NextLink from the previous successful call to List operation.
* @param jobListPreparationAndReleaseTaskStatusNextOptions Additional parameters for the operation
* @param serviceCall the ServiceCall object tracking the Retrofit calls
* @param serviceCallback the async ServiceCallback to handle successful and failed responses.
* @throws IllegalArgumentException thrown if callback is null
* @return the {@link Call} object
*/
public ServiceCall listPreparationAndReleaseTaskStatusNextAsync(final String nextPageLink, final JobListPreparationAndReleaseTaskStatusNextOptions jobListPreparationAndReleaseTaskStatusNextOptions, final ServiceCall serviceCall, final ListOperationCallback<JobPreparationAndReleaseTaskExecutionInformation> serviceCallback) throws IllegalArgumentException {
if (serviceCallback == null) {
throw new IllegalArgumentException("ServiceCallback is required for async calls.");
}
if (nextPageLink == null) {
serviceCallback.failure(new IllegalArgumentException("Parameter nextPageLink is required and cannot be null."));
return null;
}
Validator.validate(jobListPreparationAndReleaseTaskStatusNextOptions, serviceCallback);
String clientRequestId = null;
if (jobListPreparationAndReleaseTaskStatusNextOptions != null) {
clientRequestId = jobListPreparationAndReleaseTaskStatusNextOptions.clientRequestId();
}
Boolean returnClientRequestId = null;
if (jobListPreparationAndReleaseTaskStatusNextOptions != null) {
returnClientRequestId = jobListPreparationAndReleaseTaskStatusNextOptions.returnClientRequestId();
}
DateTime ocpDate = null;
if (jobListPreparationAndReleaseTaskStatusNextOptions != null) {
ocpDate = jobListPreparationAndReleaseTaskStatusNextOptions.ocpDate();
}
DateTimeRfc1123 ocpDateConverted = null;
if (ocpDate != null) {
ocpDateConverted = new DateTimeRfc1123(ocpDate);
}
Call<ResponseBody> call = service.listPreparationAndReleaseTaskStatusNext(nextPageLink, this.client.acceptLanguage(), clientRequestId, returnClientRequestId, ocpDateConverted, this.client.userAgent());
serviceCall.newCall(call);
call.enqueue(new ServiceResponseCallback<List<JobPreparationAndReleaseTaskExecutionInformation>>(serviceCallback) {
@Override
public void onResponse(Call<ResponseBody> call, Response<ResponseBody> response) {
try {
ServiceResponseWithHeaders<PageImpl<JobPreparationAndReleaseTaskExecutionInformation>, JobListPreparationAndReleaseTaskStatusHeaders> result = listPreparationAndReleaseTaskStatusNextDelegate(response);
serviceCallback.load(result.getBody().getItems());
if (result.getBody().getNextPageLink() != null && serviceCallback.progress(result.getBody().getItems()) == ListOperationCallback.PagingBahavior.CONTINUE) {
listPreparationAndReleaseTaskStatusNextAsync(result.getBody().getNextPageLink(), jobListPreparationAndReleaseTaskStatusNextOptions, serviceCall, serviceCallback);
} else {
serviceCallback.success(new ServiceResponseWithHeaders<>(serviceCallback.get(), result.getHeaders(), result.getResponse()));
}
} catch (BatchErrorException | IOException exception) {
serviceCallback.failure(exception);
}
}
});
return serviceCall;
}
Aggregations