本文整理了Java中com.vmware.admiral.common.util.QueryUtil
类的一些代码示例,展示了QueryUtil
类的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。QueryUtil
类的具体详情如下:
包路径:com.vmware.admiral.common.util.QueryUtil
类名称:QueryUtil
暂无
代码示例来源:origin: vmware/admiral
private void queryExternalNetworks(List<String> networks, Consumer<Boolean> resultCallback) {
if (!networks.isEmpty()) {
QueryTask networkQuery = QueryUtil.buildQuery(ContainerNetworkState.class, false);
QueryUtil.addListValueClause(networkQuery, ServiceDocument.FIELD_NAME_SELF_LINK,
networks);
QueryUtil.addBroadcastOption(networkQuery);
QueryUtil.addExpandOption(networkQuery);
代码示例来源:origin: vmware/admiral
private void queryExistingContainerStates(ContainerListCallback body) {
String containerHostLink = body.containerHostLink;
QueryTask queryTask = QueryUtil.buildPropertyQuery(ContainerState.class,
ContainerState.FIELD_NAME_PARENT_LINK, containerHostLink);
QueryUtil.addExpandOption(queryTask);
QueryUtil.addBroadcastOption(queryTask);
new ServiceDocumentQuery<ContainerState>(getHost(), ContainerState.class)
.query(queryTask, processContainerStatesQueryResults(body));
}
代码示例来源: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
private QueryTask createResourcesQuery(Class<? extends ServiceDocument> type,
Collection<String> resourceLinks) {
QueryTask query = QueryUtil.buildQuery(type, false);
QueryUtil.addListValueClause(query, ServiceDocument.FIELD_NAME_SELF_LINK, resourceLinks);
return query;
}
代码示例来源:origin: vmware/admiral
protected QueryTask getDescQuery() {
final QueryTask q = QueryUtil.buildQuery(ContainerDescription.class, false);
QueryUtil.addCaseInsensitiveListValueClause(q, ContainerDescription.FIELD_NAME_NAME, getAffinity());
QueryUtil.addExpandOption(q);
return q;
}
代码示例来源:origin: vmware/admiral
protected QueryTask getDescQuery(List<String> descriptionLinks) {
// get container descriptions for descriptionLinks having a service link to
// the container description which is being clustered
QueryTask q = QueryUtil.buildQuery(ContainerDescription.class, false);
String linksItemField = QueryTask.QuerySpecification.buildCollectionItemName(
ContainerDescription.FIELD_NAME_LINKS);
QueryUtil.addListValueClause(q, linksItemField,
Arrays.asList(containerDescriptionName + ":*", containerDescriptionName),
MatchType.WILDCARD);
QueryUtil.addListValueClause(q, ContainerDescription.FIELD_NAME_SELF_LINK,
descriptionLinks);
QueryUtil.addExpandOption(q);
return q;
}
代码示例来源:origin: vmware/admiral
public static <R extends MultiTenantDocument> void getDocuments(Class<R> type,
Consumer<List<MultiTenantDocument>> consumer, ServiceHost host, Operation post) {
QueryTask queryTask = QueryUtil.buildQuery(type, true);
QueryUtil.addExpandOption(queryTask);
List<MultiTenantDocument> documents = new ArrayList<>();
new ServiceDocumentQuery<R>(host, type)
.query(queryTask, (r) -> {
if (r.hasException()) {
host.log(Level.SEVERE, "Failed to query for project states");
post.fail(r.getException());
} else if (r.hasResult()) {
documents.add((MultiTenantDocument) r.getResult());
} else {
host.log(Level.INFO, "projects found: %d", documents.size());
consumer.accept(documents);
}
});
}
}
代码示例来源:origin: vmware/admiral
QueryTask queryTask = QueryUtil.buildQuery(ContainerVolumeState.class, true);
QueryUtil.addExpandOption(queryTask);
QueryUtil.addBroadcastOption(queryTask);
代码示例来源:origin: vmware/admiral
private void queryNetworksByHost(AdapterRequest state,
Consumer<List<ContainerNetworkState>> callback) {
String hostLink = state.resourceReference.getPath();
QueryTask q = QueryUtil.buildPropertyQuery(MockDockerNetworkToHostState.class,
MockDockerNetworkToHostState.FIELD_NAME_HOST_LINK, hostLink);
QueryUtil.addExpandOption(q);
List<ContainerNetworkState> networkStates = new ArrayList< >();
new ServiceDocumentQuery<>(getHost(), MockDockerNetworkToHostState.class).query(q,
(r) -> {
if (r.hasException()) {
patchTaskStage(state, r.getException());
} else if (r.hasResult()) {
networkStates.add(buildContainerNetwork(r.getResult()));
} else {
callback.accept(networkStates);
}
});
}
代码示例来源:origin: vmware/admiral
QueryTask q = QueryUtil.buildQuery(GroupResourcePlacementState.class, false);
+ " count: [%s]..", state.resourceDescriptionLink, state.resourceCount);
Query tenantLinksQuery = QueryUtil.addTenantAndGroupClause(null);
q.querySpec.query.addBooleanClause(tenantLinksQuery);
} else {
state.tenantLinks, state.resourceDescriptionLink, state.resourceCount);
Query tenantLinksQuery = QueryUtil.addTenantAndGroupClause(state.tenantLinks);
q.querySpec.query.addBooleanClause(tenantLinksQuery);
QueryUtil.addExpandOption(q);
代码示例来源:origin: vmware/admiral
QueryTask q = QueryUtil.buildQuery(ContainerVolumeState.class, false, driverClause);
QueryUtil.addListValueClause(q, compositeComponentLinksItemField, cclValues);
QueryUtil.addListValueClause(q, ContainerVolumeState.FIELD_NAME_DESCRIPTION_LINK,
descLinksWithNames.keySet());
QueryUtil.addCountOption(q);
代码示例来源: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 void queryPortProfiles(ContainerHostRemovalTaskState state) {
QueryTask q = QueryUtil
.buildQuery(HostPortProfileService.HostPortProfileState.class, false);
QueryUtil.addListValueClause(q, HostPortProfileService.HostPortProfileState.FIELD_HOST_LINK,
state.resourceLinks);
ServiceDocumentQuery<HostPortProfileService.HostPortProfileState> query = new ServiceDocumentQuery<>(
getHost(), HostPortProfileService.HostPortProfileState.class);
QueryUtil.addBroadcastOption(q);
ArrayList<String> hostPortProfileLinks = new ArrayList<>();
query.query(q, (r) -> {
if (r.hasException()) {
failTask("Failure retrieving query results", r.getException());
return;
} else if (r.hasResult()) {
hostPortProfileLinks.add(r.getDocumentSelfLink());
} else {
// if there are no host port profiles, go to the next stage
if (hostPortProfileLinks.isEmpty()) {
proceedTo(SubStage.REMOVED_PORT_PROFILES);
return;
}
removePortProfiles(state, hostPortProfileLinks, null);
proceedTo(SubStage.REMOVING_PORT_PROFILES);
}
});
}
代码示例来源:origin: vmware/admiral
private void queryContainerNetworkResources(ContainerNetworkRemovalTaskState state) {
QueryTask networkQuery = createResourcesQuery(ContainerNetworkState.class,
state.resourceLinks);
ServiceDocumentQuery<ContainerNetworkState> query = new ServiceDocumentQuery<>(getHost(),
ContainerNetworkState.class);
List<String> networkLinks = new ArrayList<>();
QueryUtil.addBroadcastOption(networkQuery);
QueryUtil.addExpandOption(networkQuery);
query.query(networkQuery, (r) -> {
if (r.hasException()) {
failTask("Failure retrieving query results", r.getException());
} else if (r.hasResult()) {
networkLinks.add(r.getDocumentSelfLink());
} else {
if (networkLinks.isEmpty()) {
logWarning("No available resources found to be removed with links: %s",
state.resourceLinks);
proceedTo(SubStage.COMPLETED);
} else {
deleteResourceInstances(state, networkLinks, null);
}
}
});
}
代码示例来源:origin: vmware/admiral
QueryTask queryTask = QueryUtil.buildQuery(RegistryState.class, true);
RegistryState registry = post.getBody(RegistryState.class);
AssertUtil.assertNotNullOrEmpty(registry.address, "registry.address");
.addTenantGroupAndUserClause(registry.tenantLinks));
QueryUtil.addExpandOption(queryTask);
代码示例来源:origin: vmware/admiral
public static QueryTask buildQuery(Class<? extends ServiceDocument> stateClass,
boolean direct, QueryTask.Query... clauses) {
String kind = Utils.buildKind(stateClass);
return buildQuery(kind, direct, clauses);
}
代码示例来源:origin: vmware/admiral
@SuppressWarnings("unchecked")
@Override
public void handlePost(Operation post) {
logInfo("Population of favorite images for specific tenants triggered.");
List<String> tenantLinks = post.getBody(List.class);
List<FavoriteImage> globalFavorites = new LinkedList<>();
QueryTask queryTask = QueryUtil.buildQuery(FavoriteImage.class, true,
QueryUtil.addTenantClause(null));
QueryUtil.addExpandOption(queryTask);
new ServiceDocumentQuery<>(getHost(), FavoriteImage.class)
.query(queryTask, r -> {
if (r.hasException()) {
post.fail(r.getException());
} else if (r.hasResult()) {
globalFavorites.add(r.getResult());
} else {
createFavoriteImagesBasedOnFlagStatus(post, tenantLinks, globalFavorites);
}
});
}
代码示例来源:origin: vmware/admiral
QueryTask queryTask = QueryUtil.buildQuery(ContainerState.class, true);
QueryUtil.addCountOption(queryTask);
ManagementUriParts.CONTAINER_DESC,
Service.getId(currentState.descriptionLink));
QueryUtil.addListValueClause(queryTask,
ContainerState.FIELD_NAME_DESCRIPTION_LINK,
Arrays.asList(containerDescriptionLink));
QueryUtil.addListValueExcludeClause(queryTask,
ContainerState.FIELD_NAME_SELF_LINK,
Arrays.asList(currentState.documentSelfLink));
代码示例来源: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
@Override
protected QueryTask getDescQuery() {
return QueryUtil.buildPropertyQuery(ContainerDescription.class,
ContainerDescription.FIELD_NAME_POD, pod);
}
内容来源于网络,如有侵权,请联系作者删除!