use of com.microsoft.azure.batch.protocol.models.PoolListPoolUsageMetricsNextOptions in project azure-sdk-for-java by Azure.
the class PoolsImpl method listPoolUsageMetrics.
/**
* Lists the usage metrics, aggregated by pool across individual time intervals, for the specified account.
*
* @param poolListPoolUsageMetricsOptions Additional parameters for the operation
* @throws BatchErrorException exception thrown from REST call
* @throws IOException exception thrown from serialization/deserialization
* @throws IllegalArgumentException exception thrown from invalid parameters
* @return the List<PoolUsageMetrics> object wrapped in {@link ServiceResponseWithHeaders} if successful.
*/
public ServiceResponseWithHeaders<PagedList<PoolUsageMetrics>, PoolListPoolUsageMetricsHeaders> listPoolUsageMetrics(final PoolListPoolUsageMetricsOptions poolListPoolUsageMetricsOptions) throws BatchErrorException, IOException, IllegalArgumentException {
if (this.client.apiVersion() == null) {
throw new IllegalArgumentException("Parameter this.client.apiVersion() is required and cannot be null.");
}
Validator.validate(poolListPoolUsageMetricsOptions);
DateTime startTime = null;
if (poolListPoolUsageMetricsOptions != null) {
startTime = poolListPoolUsageMetricsOptions.startTime();
}
DateTime endTime = null;
if (poolListPoolUsageMetricsOptions != null) {
endTime = poolListPoolUsageMetricsOptions.endTime();
}
String filter = null;
if (poolListPoolUsageMetricsOptions != null) {
filter = poolListPoolUsageMetricsOptions.filter();
}
Integer maxResults = null;
if (poolListPoolUsageMetricsOptions != null) {
maxResults = poolListPoolUsageMetricsOptions.maxResults();
}
Integer timeout = null;
if (poolListPoolUsageMetricsOptions != null) {
timeout = poolListPoolUsageMetricsOptions.timeout();
}
String clientRequestId = null;
if (poolListPoolUsageMetricsOptions != null) {
clientRequestId = poolListPoolUsageMetricsOptions.clientRequestId();
}
Boolean returnClientRequestId = null;
if (poolListPoolUsageMetricsOptions != null) {
returnClientRequestId = poolListPoolUsageMetricsOptions.returnClientRequestId();
}
DateTime ocpDate = null;
if (poolListPoolUsageMetricsOptions != null) {
ocpDate = poolListPoolUsageMetricsOptions.ocpDate();
}
DateTimeRfc1123 ocpDateConverted = null;
if (ocpDate != null) {
ocpDateConverted = new DateTimeRfc1123(ocpDate);
}
Call<ResponseBody> call = service.listPoolUsageMetrics(this.client.apiVersion(), this.client.acceptLanguage(), startTime, endTime, filter, maxResults, timeout, clientRequestId, returnClientRequestId, ocpDateConverted, this.client.userAgent());
ServiceResponseWithHeaders<PageImpl<PoolUsageMetrics>, PoolListPoolUsageMetricsHeaders> response = listPoolUsageMetricsDelegate(call.execute());
PagedList<PoolUsageMetrics> result = new PagedList<PoolUsageMetrics>(response.getBody()) {
@Override
public Page<PoolUsageMetrics> nextPage(String nextPageLink) throws BatchErrorException, IOException {
PoolListPoolUsageMetricsNextOptions poolListPoolUsageMetricsNextOptions = null;
if (poolListPoolUsageMetricsOptions != null) {
poolListPoolUsageMetricsNextOptions = new PoolListPoolUsageMetricsNextOptions();
poolListPoolUsageMetricsNextOptions.withClientRequestId(poolListPoolUsageMetricsOptions.clientRequestId());
poolListPoolUsageMetricsNextOptions.withReturnClientRequestId(poolListPoolUsageMetricsOptions.returnClientRequestId());
poolListPoolUsageMetricsNextOptions.withOcpDate(poolListPoolUsageMetricsOptions.ocpDate());
}
return listPoolUsageMetricsNext(nextPageLink, poolListPoolUsageMetricsNextOptions).getBody();
}
};
return new ServiceResponseWithHeaders<>(result, response.getHeaders(), response.getResponse());
}
use of com.microsoft.azure.batch.protocol.models.PoolListPoolUsageMetricsNextOptions in project azure-sdk-for-java by Azure.
the class PoolsImpl method listPoolUsageMetricsNextAsync.
/**
* Lists the usage metrics, aggregated by pool across individual time intervals, for the specified account.
*
* @param nextPageLink The NextLink from the previous successful call to List 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 listPoolUsageMetricsNextAsync(final String nextPageLink, final ServiceCall serviceCall, final ListOperationCallback<PoolUsageMetrics> 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;
}
final PoolListPoolUsageMetricsNextOptions poolListPoolUsageMetricsNextOptions = null;
String clientRequestId = null;
Boolean returnClientRequestId = null;
DateTime ocpDate = null;
DateTimeRfc1123 ocpDateConverted = null;
if (ocpDate != null) {
ocpDateConverted = new DateTimeRfc1123(ocpDate);
}
Call<ResponseBody> call = service.listPoolUsageMetricsNext(nextPageLink, this.client.acceptLanguage(), clientRequestId, returnClientRequestId, ocpDateConverted, this.client.userAgent());
serviceCall.newCall(call);
call.enqueue(new ServiceResponseCallback<List<PoolUsageMetrics>>(serviceCallback) {
@Override
public void onResponse(Call<ResponseBody> call, Response<ResponseBody> response) {
try {
ServiceResponseWithHeaders<PageImpl<PoolUsageMetrics>, PoolListPoolUsageMetricsHeaders> result = listPoolUsageMetricsNextDelegate(response);
serviceCallback.load(result.getBody().getItems());
if (result.getBody().getNextPageLink() != null && serviceCallback.progress(result.getBody().getItems()) == ListOperationCallback.PagingBahavior.CONTINUE) {
listPoolUsageMetricsNextAsync(result.getBody().getNextPageLink(), null, serviceCall, serviceCallback);
} else {
serviceCallback.success(new ServiceResponseWithHeaders<>(serviceCallback.get(), result.getHeaders(), result.getResponse()));
}
} catch (BatchErrorException | IOException exception) {
serviceCallback.failure(exception);
}
}
});
return serviceCall;
}
use of com.microsoft.azure.batch.protocol.models.PoolListPoolUsageMetricsNextOptions in project azure-sdk-for-java by Azure.
the class PoolsImpl method listPoolUsageMetricsAsync.
/**
* Lists the usage metrics, aggregated by pool across individual time intervals, for the specified account.
*
* @param poolListPoolUsageMetricsOptions Additional parameters for the operation
* @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 listPoolUsageMetricsAsync(final PoolListPoolUsageMetricsOptions poolListPoolUsageMetricsOptions, final ListOperationCallback<PoolUsageMetrics> serviceCallback) throws IllegalArgumentException {
if (serviceCallback == null) {
throw new IllegalArgumentException("ServiceCallback is required for async calls.");
}
if (this.client.apiVersion() == null) {
serviceCallback.failure(new IllegalArgumentException("Parameter this.client.apiVersion() is required and cannot be null."));
return null;
}
Validator.validate(poolListPoolUsageMetricsOptions, serviceCallback);
DateTime startTime = null;
if (poolListPoolUsageMetricsOptions != null) {
startTime = poolListPoolUsageMetricsOptions.startTime();
}
DateTime endTime = null;
if (poolListPoolUsageMetricsOptions != null) {
endTime = poolListPoolUsageMetricsOptions.endTime();
}
String filter = null;
if (poolListPoolUsageMetricsOptions != null) {
filter = poolListPoolUsageMetricsOptions.filter();
}
Integer maxResults = null;
if (poolListPoolUsageMetricsOptions != null) {
maxResults = poolListPoolUsageMetricsOptions.maxResults();
}
Integer timeout = null;
if (poolListPoolUsageMetricsOptions != null) {
timeout = poolListPoolUsageMetricsOptions.timeout();
}
String clientRequestId = null;
if (poolListPoolUsageMetricsOptions != null) {
clientRequestId = poolListPoolUsageMetricsOptions.clientRequestId();
}
Boolean returnClientRequestId = null;
if (poolListPoolUsageMetricsOptions != null) {
returnClientRequestId = poolListPoolUsageMetricsOptions.returnClientRequestId();
}
DateTime ocpDate = null;
if (poolListPoolUsageMetricsOptions != null) {
ocpDate = poolListPoolUsageMetricsOptions.ocpDate();
}
DateTimeRfc1123 ocpDateConverted = null;
if (ocpDate != null) {
ocpDateConverted = new DateTimeRfc1123(ocpDate);
}
Call<ResponseBody> call = service.listPoolUsageMetrics(this.client.apiVersion(), this.client.acceptLanguage(), startTime, endTime, filter, maxResults, timeout, clientRequestId, returnClientRequestId, ocpDateConverted, this.client.userAgent());
final ServiceCall serviceCall = new ServiceCall(call);
call.enqueue(new ServiceResponseCallback<List<PoolUsageMetrics>>(serviceCallback) {
@Override
public void onResponse(Call<ResponseBody> call, Response<ResponseBody> response) {
try {
ServiceResponseWithHeaders<PageImpl<PoolUsageMetrics>, PoolListPoolUsageMetricsHeaders> result = listPoolUsageMetricsDelegate(response);
serviceCallback.load(result.getBody().getItems());
if (result.getBody().getNextPageLink() != null && serviceCallback.progress(result.getBody().getItems()) == ListOperationCallback.PagingBahavior.CONTINUE) {
PoolListPoolUsageMetricsNextOptions poolListPoolUsageMetricsNextOptions = null;
if (poolListPoolUsageMetricsOptions != null) {
poolListPoolUsageMetricsNextOptions = new PoolListPoolUsageMetricsNextOptions();
poolListPoolUsageMetricsNextOptions.withClientRequestId(poolListPoolUsageMetricsOptions.clientRequestId());
poolListPoolUsageMetricsNextOptions.withReturnClientRequestId(poolListPoolUsageMetricsOptions.returnClientRequestId());
poolListPoolUsageMetricsNextOptions.withOcpDate(poolListPoolUsageMetricsOptions.ocpDate());
}
listPoolUsageMetricsNextAsync(result.getBody().getNextPageLink(), poolListPoolUsageMetricsNextOptions, serviceCall, serviceCallback);
} else {
serviceCallback.success(new ServiceResponseWithHeaders<>(serviceCallback.get(), result.getHeaders(), result.getResponse()));
}
} catch (BatchErrorException | IOException exception) {
serviceCallback.failure(exception);
}
}
});
return serviceCall;
}
use of com.microsoft.azure.batch.protocol.models.PoolListPoolUsageMetricsNextOptions in project azure-sdk-for-java by Azure.
the class PoolsImpl method listPoolUsageMetricsNext.
/**
* Lists the usage metrics, aggregated by pool across individual time intervals, for the specified account.
*
* @param nextPageLink The NextLink from the previous successful call to List operation.
* @throws BatchErrorException exception thrown from REST call
* @throws IOException exception thrown from serialization/deserialization
* @throws IllegalArgumentException exception thrown from invalid parameters
* @return the List<PoolUsageMetrics> object wrapped in {@link ServiceResponseWithHeaders} if successful.
*/
public ServiceResponseWithHeaders<PageImpl<PoolUsageMetrics>, PoolListPoolUsageMetricsHeaders> listPoolUsageMetricsNext(final String nextPageLink) throws BatchErrorException, IOException, IllegalArgumentException {
if (nextPageLink == null) {
throw new IllegalArgumentException("Parameter nextPageLink is required and cannot be null.");
}
final PoolListPoolUsageMetricsNextOptions poolListPoolUsageMetricsNextOptions = null;
String clientRequestId = null;
Boolean returnClientRequestId = null;
DateTime ocpDate = null;
DateTimeRfc1123 ocpDateConverted = null;
if (ocpDate != null) {
ocpDateConverted = new DateTimeRfc1123(ocpDate);
}
Call<ResponseBody> call = service.listPoolUsageMetricsNext(nextPageLink, this.client.acceptLanguage(), clientRequestId, returnClientRequestId, ocpDateConverted, this.client.userAgent());
return listPoolUsageMetricsNextDelegate(call.execute());
}
Aggregations