com.vmware.admiral.common.util.QueryUtil.addCountOption()方法的使用及代码示例

x33g5p2x  于2022-01-28 转载在 其他  
字(8.8k)|赞(0)|评价(0)|浏览(72)

本文整理了Java中com.vmware.admiral.common.util.QueryUtil.addCountOption方法的一些代码示例,展示了QueryUtil.addCountOption的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。QueryUtil.addCountOption方法的具体详情如下:
包路径:com.vmware.admiral.common.util.QueryUtil
类名称:QueryUtil
方法名:addCountOption

QueryUtil.addCountOption介绍

暂无

代码示例

代码示例来源:origin: vmware/admiral

public static QueryTask createQueryTaskForProjectAssociatedWithPlacement(ResourceState project,
    Query query) {
  QueryTask queryTask = null;
  if (query != null) {
    queryTask = QueryTask.Builder.createDirectTask().setQuery(query).build();
  } else if (project != null && project.documentSelfLink != null) {
    queryTask = QueryUtil.buildQuery(GroupResourcePlacementState.class, true,
        QueryUtil.addTenantAndGroupClause(Arrays.asList(project.documentSelfLink)));
  }
  if (queryTask != null) {
    QueryUtil.addCountOption(queryTask);
  }
  return queryTask;
}

代码示例来源:origin: vmware/admiral

private void verifyPlacementZoneIsEmpty(ContainerHostSpec hostSpec, Operation op,
    Runnable successCallback) {
  String placementZoneLink = hostSpec.hostState.resourcePoolLink;
  if (placementZoneLink == null || placementZoneLink.isEmpty()) {
    // no placement zone to verify
    successCallback.run();
    return;
  }
  AtomicBoolean emptyZone = new AtomicBoolean(true);
  QueryTask queryTask = QueryUtil.buildPropertyQuery(ComputeState.class,
      ComputeState.FIELD_NAME_RESOURCE_POOL_LINK, placementZoneLink);
  QueryUtil.addCountOption(queryTask);
  new ServiceDocumentQuery<>(getHost(), ComputeState.class)
      .query(queryTask, (r) -> {
        if (r.hasException()) {
          op.fail(r.getException());
        } else if (r.getCount() > 0) {
          emptyZone.set(false);
          op.fail(new LocalizableValidationException(PLACEMENT_ZONE_NOT_EMPTY_MESSAGE,
              PLACEMENT_ZONE_NOT_EMPTY_MESSAGE_CODE));
        } else {
          if (emptyZone.get()) {
            successCallback.run();
          }
        }
      });
}

代码示例来源:origin: vmware/admiral

@SuppressWarnings("unchecked")
private <T extends ServiceDocument> void countResourcesForPlacement(
    GroupResourcePlacementState state,
    Consumer<ServiceDocumentQueryElementResult<T>> completionHandler) {
  QueryTask queryTask;
  Class<T> resourceClass;
  if (ResourceType.CONTAINER_TYPE.getName().equals(state.resourceType)) {
    resourceClass = (Class<T>) ContainerState.class;
    queryTask = QueryUtil.buildPropertyQuery(resourceClass,
        ContainerState.FIELD_NAME_GROUP_RESOURCE_PLACEMENT_LINK,
        state.documentSelfLink);
  } else {
    throw new LocalizableValidationException("Unsupported placement resourceType "
        + state.resourceType,
        "compute.placements.invalid.resource.type");
  }
  QueryUtil.addCountOption(queryTask);
  new ServiceDocumentQuery<>(getHost(), resourceClass)
      .query(queryTask, completionHandler);
}

代码示例来源:origin: vmware/admiral

QueryUtil.addListValueClause(q, ContainerVolumeState.FIELD_NAME_DESCRIPTION_LINK,
    descLinksWithNames.keySet());
QueryUtil.addCountOption(q);

代码示例来源:origin: vmware/admiral

QueryTask containerQuery = QueryUtil.buildPropertyQuery(ContainerState.class,
    ContainerState.FIELD_NAME_PARENT_LINK, containerHostLink);
QueryUtil.addCountOption(containerQuery);
    ContainerState.FIELD_NAME_SYSTEM,
    Arrays.asList(Boolean.TRUE.toString()));
QueryUtil.addCountOption(systemContainerQuery);
new ServiceDocumentQuery<ContainerState>(getHost(), ContainerState.class)
    .query(systemContainerQuery, (result) -> {

代码示例来源:origin: vmware/admiral

Arrays.asList(resourceDescriptionLink));
QueryUtil.addCountOption(resourceStateQueryTask);

代码示例来源:origin: vmware/admiral

public static DeferredResult<Void> handleDelete(Service service, Operation op) {
    ResourcePoolState currentState = service.getState(op);

    QueryTask queryTask;
    if (currentState.query != null) {
      queryTask = QueryTask.Builder.createDirectTask().setQuery(currentState.query).build();
    } else if (currentState.documentSelfLink != null) {
      queryTask = QueryUtil.buildPropertyQuery(ComputeState.class,
          ComputeState.FIELD_NAME_RESOURCE_POOL_LINK, currentState.documentSelfLink);
    } else {
      return null;
    }

    QueryUtil.addCountOption(queryTask);

    return QueryUtils.startQueryTask(service, queryTask)
        .thenAccept(qt -> {
          ServiceDocumentQueryResult result = qt.results;
          if (result.documentCount != 0) {
            throw new LocalizableValidationException(
                PLACEMENT_ZONE_IN_USE_MESSAGE,
                PLACEMENT_ZONE_IN_USE_MESSAGE_CODE);
          }
        });
  }
}

代码示例来源:origin: vmware/admiral

private QueryTask buildRequestStatusQuery(List<String> tenantLinks) {
  QueryTask requestStatusQuery = QueryUtil.buildQuery(RequestStatus.class, true);
  QueryTask.Query runningTasksClause = new QueryTask.Query();
  if (!tenantLinks.isEmpty()) {
    requestStatusQuery.querySpec.query.addBooleanClause(QueryUtil
        .addTenantGroupAndUserClause(tenantLinks));
  }
  QueryTask.Query taskCreatedClause = new QueryTask.Query()
      .setTermPropertyName(TaskStatusState.FIELD_NAME_TASK_INFO + ".stage")
      .setTermMatchValue(TaskState.TaskStage.CREATED.toString());
  taskCreatedClause.occurance = Occurance.SHOULD_OCCUR;
  runningTasksClause.addBooleanClause(taskCreatedClause);
  QueryTask.Query taskStartedClause = new QueryTask.Query()
      .setTermPropertyName(TaskStatusState.FIELD_NAME_TASK_INFO + ".stage")
      .setTermMatchValue(TaskState.TaskStage.STARTED.toString());
  taskStartedClause.occurance = Occurance.SHOULD_OCCUR;
  runningTasksClause.addBooleanClause(taskStartedClause);
  requestStatusQuery.querySpec.query.addBooleanClause(runningTasksClause);
  QueryUtil.addCountOption(requestStatusQuery);
  return requestStatusQuery;
}

代码示例来源:origin: vmware/admiral

private QueryTask buildEventLogCountQuery(List<String> tenantLinks) {
  QueryTask qt = QueryUtil.buildQuery(EventLogState.class, true);
  if (!tenantLinks.isEmpty()) {
    qt.querySpec.query.addBooleanClause(QueryUtil.addTenantGroupAndUserClause(tenantLinks));
  }
  long nMinutesAgo = Utils.fromNowMicrosUtc(-EVENTS_TIME_INTERVAL_MICROS);
  QueryTask.Query numOfInstancesClause = new QueryTask.Query()
      .setTermPropertyName(ServiceDocument.FIELD_NAME_UPDATE_TIME_MICROS)
      .setNumericRange(NumericRange.createLongRange(nMinutesAgo,
          Long.MAX_VALUE, true, false))
      .setTermMatchType(MatchType.TERM);
  qt.querySpec.query.addBooleanClause(numOfInstancesClause);
  QueryTask.Query eventTypeClause = new QueryTask.Query()
      .setTermPropertyName(EventLogState.FIELD_NAME_EVENT_LOG_TYPE)
      .setTermMatchValue(EventLogState.EventLogType.INFO.toString())
      .setTermMatchType(MatchType.TERM);
  eventTypeClause.occurance = Occurance.MUST_NOT_OCCUR;
  qt.querySpec.query.addBooleanClause(eventTypeClause);
  QueryUtil.addCountOption(qt);
  return qt;
}

代码示例来源:origin: vmware/admiral

QueryUtil.addCountOption(queryTask);

代码示例来源:origin: vmware/admiral

ContainerHostService.CUSTOM_PROPERTY_DEPLOYMENT_POLICY),
    getSelfLink());
QueryUtil.addCountOption(computeTask);
QueryUtil.addCountOption(computeTask);

代码示例来源:origin: vmware/admiral

private void verifyEventsCount(int count) throws Throwable {
  Long[] resultCount = new Long[1];
  Throwable[] ex = new Throwable[1];
  waitFor(() -> {
    QueryTask query = QueryUtil.buildQuery(EventLogState.class, true);
    QueryUtil.addCountOption(query);
    new ServiceDocumentQuery<EventLogState>(host, EventLogState.class)
        .query(query, (r) -> {
          if (r.hasException()) {
            ex[0] = r.getException();
            return;
          }
          resultCount[0] = r.getCount();
        });
    return resultCount[0] != null;
  });
  if (ex[0] != null) {
    Assert.fail("Could not retrieve list of events after delete");
  }
  Assert.assertEquals(count, resultCount[0].longValue());
}

代码示例来源:origin: vmware/admiral

QueryUtil.addCountOption(query);
waitFor(() -> {
  QueryTask query = QueryUtil.buildQuery(EventLogState.class, true);
  QueryUtil.addCountOption(query);

代码示例来源:origin: vmware/admiral

private void countQueryContainers(int expectedCount) throws Throwable {
  List<Long> list = new ArrayList<>();
  QuerySpecification qs = new QuerySpecification();
  qs.query = Query.Builder.create().addKindFieldClause(ContainerState.class).build();
  QueryTask qt = QueryTask.create(qs);
  QueryUtil.addCountOption(qt);
  host.testStart(1);
  new ServiceDocumentQuery<>(
      host, null).query(qt,
          (r) -> {
            if (r.hasException()) {
              host.failIteration(r.getException());
              return;
            }
            list.add(r.getCount());
            host.completeIteration();
          });
  host.testWait();
  assertTrue(expectedCount == list.get(0));
}

代码示例来源:origin: vmware/admiral

public static DeferredResult<Void> handleDelete(Service service, Operation op) {
  DeferredResult<Void> dr = new DeferredResult<>();
  service.sendRequest(Operation.createPost(service, ServiceUriPaths.CORE_QUERY_TASKS)
      .setBody(QueryUtil.addCountOption(QueryUtil.buildPropertyQuery(ComputeState.class,
          QuerySpecification.buildCompositeFieldName(
              ComputeState.FIELD_NAME_CUSTOM_PROPERTIES,
              ComputeConstants.HOST_AUTH_CREDENTIALS_PROP_NAME),
          service.getSelfLink())))
      .setCompletion((o, e) -> {
        if (e != null) {
          service.getHost().log(Level.WARNING, Utils.toString(e));
          dr.fail(e);
        }
        ServiceDocumentQueryResult result = o.getBody(QueryTask.class).results;
        if (result.documentCount != 0) {
          op.fail(new LocalizableValidationException(CREDENTIALS_IN_USE_MESSAGE,
              CREDENTIALS_IN_USE_MESSAGE_CODE));
        }
        dr.complete(null);
      }));
  return dr;
}

代码示例来源:origin: vmware/admiral

qs.query = Query.Builder.create().addKindFieldClause(ContainerDescription.class).build();
qt = QueryTask.create(qs);
QueryUtil.addCountOption(qt);
qt.documentSelfLink = queryTaskDocumentSelfLink + 3;
host.testStart(1);

相关文章