private void handleComputePage(PlacementCapacityUpdateTaskState state) { sendRequest(Operation .createGet(getHost(), state.nextPageLink) .setCompletion((o, e) -> { if (e != null) { failTask("Error retrieving computes", e); return; } ServiceDocumentQueryResult result = o.getBody(QueryTask.class).results; List<ComputeState> computes = result.documents.values().stream() .map(json -> Utils.fromJson(json, ComputeState.class)) .collect(Collectors.toList()); if (computes.isEmpty()) { proceedTo(PlacementCapacityUpdateTaskState.SubStage.UPDATE_RESOURCE_POOL); } else { queryComputeDescriptions(state, computes, result.nextPageLink); } })); }
new ServiceDocumentQuery<ComputeDescription>(getHost(), ComputeDescription.class) .query(queryTask, (r) -> { if (r.hasException()) {
private void retrieveAndUpdatePlacements(PlacementCapacityUpdateTaskState state) { Query query = Query.Builder.create() .addKindFieldClause(GroupResourcePlacementState.class) .addFieldClause(GroupResourcePlacementState.FIELD_NAME_RESOURCE_POOL_LINK, state.resourcePoolLink) .build(); QueryTask queryTask = QueryTask.Builder.createDirectTask() .setQuery(query) .addOption(QueryOption.EXPAND_CONTENT) .build(); List<GroupResourcePlacementState> placements = new ArrayList<>(); new ServiceDocumentQuery<>(getHost(), GroupResourcePlacementState.class).query( queryTask, (r) -> { if (r.hasException()) { failTask(String.format("Error quering placements for resource pool '%s'", state.resourcePoolLink), r.getException()); } else if (r.hasResult()) { placements.add(r.getResult()); } else { updatePlacements(state, placements); } }); }
private void startComputeQuery(PlacementCapacityUpdateTaskState state, ResourcePoolState resourcePoolState) { if (resourcePoolState == null) { sendRequest(Operation.createGet(getHost(), state.resourcePoolLink) .setCompletion((o, e) -> { if (e != null) {