/** * Retrieves the requested resource pools documents. */ private DeferredResult<Void> retrieveResourcePools() { Query.Builder queryBuilder = Query.Builder.create() .addKindFieldClause(ResourcePoolState.class); if (this.resourcePoolLinks != null && !this.resourcePoolLinks.isEmpty()) { queryBuilder.addInClause(ServiceDocument.FIELD_NAME_SELF_LINK, this.resourcePoolLinks); } else if (this.additionalResourcePoolQueryClausesProvider != null) { this.additionalResourcePoolQueryClausesProvider.accept(queryBuilder); } return new QueryByPages<>(this.host, queryBuilder.build(), ResourcePoolState.class, null) .setMaxPageSize(PAGE_SIZE) .queryDocuments(rp -> storeResourcePool(rp)); }
private DeferredResult<List<ContainerDescription>> retrieveContainerDescriptions() { logFine("Retrieve all container descriptions which have autoredeploy option enabled." + "System container is excluded."); Builder builder = Builder.create() .addKindFieldClause(ContainerDescription.class) .addFieldClause(ContainerDescription.FIELD_NAME_SELF_LINK, SystemContainerDescriptions.AGENT_CONTAINER_DESCRIPTION_LINK, Occurance.MUST_NOT_OCCUR) .addCompositeFieldClause(ContainerDescription.FIELD_NAME_HEALTH_CONFIG, HealthConfig.FIELD_NAME_AUTOREDEPLOY, Boolean.TRUE.toString(), Occurance .MUST_OCCUR); QueryByPages<ContainerDescription> query = new QueryByPages<>(getHost(), builder.build(), ContainerDescription.class, null); return query.collectDocuments(Collectors.toList()); }
/** * Retrieves the requested resource pools documents. */ private DeferredResult<Void> retrieveResourcePools() { Query.Builder queryBuilder = Query.Builder.create() .addKindFieldClause(ResourcePoolState.class); if (this.resourcePoolLinks != null && !this.resourcePoolLinks.isEmpty()) { queryBuilder.addInClause(ServiceDocument.FIELD_NAME_SELF_LINK, this.resourcePoolLinks); } else if (this.additionalResourcePoolQueryClausesProvider != null) { this.additionalResourcePoolQueryClausesProvider.accept(queryBuilder); } QueryByPages<ResourcePoolState> queryByPages = new QueryByPages<>( this.host, queryBuilder.build(), ResourcePoolState.class, this.tenantLinks); queryByPages.setClusterType(ServiceTypeCluster.INVENTORY_SERVICE); return queryByPages.setMaxPageSize(PAGE_SIZE).queryDocuments(rp -> storeResourcePool(rp)); }
private void queryComputesToAssign(EpzComputeEnumerationTaskState state) { Query mustBeIn = Utils.clone(state.resourcePoolQuery); Query areOut = Query.Builder.create() .addKindFieldClause(ComputeState.class) .addFieldClause( QuerySpecification.buildCompositeFieldName( ResourceState.FIELD_NAME_CUSTOM_PROPERTIES, EPZ_CUSTOM_PROP_NAME_PREFIX + extractRpId(state)), EPZ_CUSTOM_PROP_VALUE, MatchType.TERM, Occurance.MUST_NOT_OCCUR) .build(); Query combinedQuery = Query.Builder.create().addClauses(mustBeIn, areOut).build(); queryComputes(state, combinedQuery, EpzComputeEnumerationTaskState.SubStage.ASSIGN_COMPUTES, EpzComputeEnumerationTaskState.SubStage.COMPLETED); }
private Query.Builder endpointsByTypeQuery(SendImageEnumerationAdapterContext ctx) { Query.Builder endpointsByTypeQuery = Query.Builder.create() .addKindFieldClause(EndpointState.class) .addCaseInsensitiveFieldClause( EndpointState.FIELD_NAME_ENDPOINT_TYPE, ctx.taskState.endpointType, MatchType.TERM, Occurance.MUST_OCCUR); if (!isNullOrEmpty(ctx.taskState.regionId)) { endpointsByTypeQuery.addCompositeFieldClause( EndpointState.FIELD_NAME_ENDPOINT_PROPERTIES, EndpointConfigRequest.REGION_KEY, ctx.taskState.regionId); } return endpointsByTypeQuery; }
private Query.Builder publicImagesByEndpointTypeQuery(SendImageEnumerationAdapterContext ctx) { Query.Builder imagesByEndpointsTypeQuery = Query.Builder.create() .addKindFieldClause(ImageState.class) .addCaseInsensitiveFieldClause( ImageState.FIELD_NAME_ENDPOINT_TYPE, ctx.taskState.endpointType, MatchType.TERM, Occurance.MUST_OCCUR); if (!isNullOrEmpty(ctx.taskState.regionId)) { imagesByEndpointsTypeQuery.addFieldClause( ImageState.FIELD_NAME_REGION_ID, ctx.taskState.regionId); } return imagesByEndpointsTypeQuery; }
private Query.Builder publicImagesByEndpointTypeQuery(SendImageEnumerationAdapterContext ctx) { Query.Builder imagesByEndpointsTypeQuery = Query.Builder.create() .addKindFieldClause(ImageState.class) .addCaseInsensitiveFieldClause( ImageState.FIELD_NAME_ENDPOINT_TYPE, ctx.taskState.endpointType, MatchType.TERM, Occurance.MUST_OCCUR); if (!isNullOrEmpty(ctx.taskState.regionId)) { imagesByEndpointsTypeQuery.addFieldClause( ImageState.FIELD_NAME_REGION_ID, ctx.taskState.regionId); } return imagesByEndpointsTypeQuery; }
private static QueryTask getQueryTask() { Query computeQuery = Query.Builder.create() .addKindFieldClause(SslTrustCertificateState.class) .build(); QueryTask task = QueryTask.Builder .create() .addOption(QueryOption.CONTINUOUS) .addOption(QueryOption.EXPAND_CONTENT) .setQuery(computeQuery).build(); task.documentSelfLink = QUERY_TASK_SELF_LINK_PREFIX; task.documentExpirationTimeMicros = Utils.fromNowMicrosUtc( TimeUnit.DAYS.toMicros(QUERY_TASK_EXPIRATION_DAYS)); return task; }
private QueryTask makeQueryTask() { return QueryTask.Builder.createDirectTask() .setQuery(QueryTask.Query.Builder.create() .addKindFieldClause(ExampleServiceState.class) .addFieldClause(ExampleServiceState.FIELD_NAME_NAME, "a", MatchType.WILDCARD, Occurance.MUST_NOT_OCCUR) .addFieldClause(ExampleServiceState.FIELD_NAME_NAME, "c", MatchType.WILDCARD, Occurance.MUST_NOT_OCCUR) .addFieldClause(ExampleServiceState.FIELD_NAME_NAME, "5", MatchType.WILDCARD, Occurance.MUST_NOT_OCCUR) .build()) .setResultLimit(50) .build(); }
private QueryTask makeQueryTask() { return QueryTask.Builder.createDirectTask() .setQuery(QueryTask.Query.Builder.create() .addKindFieldClause(ExampleServiceState.class) .addFieldClause(ExampleServiceState.FIELD_NAME_NAME, "a", MatchType.WILDCARD, Occurance.MUST_NOT_OCCUR) .addFieldClause(ExampleServiceState.FIELD_NAME_NAME, "c", MatchType.WILDCARD, Occurance.MUST_NOT_OCCUR) .addFieldClause(ExampleServiceState.FIELD_NAME_NAME, "5", MatchType.WILDCARD, Occurance.MUST_NOT_OCCUR) .build()) .setResultLimit(50) .build(); }
private QueryTask createGraphQueryStage(int stageIndex) { QueryTask stage = QueryTask.Builder.create() .addOption(QueryOption.SELECT_LINKS) .addLinkTerm(QueryValidationServiceState.FIELD_NAME_SERVICE_LINKS) .setQuery(Query.Builder.create() .addRangeClause(QueryValidationServiceState.FIELD_NAME_LONG_VALUE, NumericRange.createLongRange((long) stageIndex, (long) stageIndex, true, true)) .addKindFieldClause(QueryValidationServiceState.class) .build()) .build(); return stage; }
public QueryTask createTagsQueryTask(boolean deletedTags) { Query.Builder query = Query.Builder.create() .addKindFieldClause(TagState.class); if (deletedTags) { query.addFieldClause(TagState.FIELD_NAME_DELETED, Boolean.TRUE); } else { query.addFieldClause(TagState.FIELD_NAME_DELETED, Boolean.FALSE); } return QueryTask.Builder.createDirectTask() .addOption(QueryOption.EXPAND_CONTENT) .setQuery(query.build()) .build(); }
private void queryComputesToUnassign(EpzComputeEnumerationTaskState state) { Query mustBeOut = Utils.clone(state.resourcePoolQuery) .setOccurance(Occurance.MUST_NOT_OCCUR); Query areIn = Query.Builder.create() .addKindFieldClause(ComputeState.class) .addCompositeFieldClause(ResourceState.FIELD_NAME_CUSTOM_PROPERTIES, EPZ_CUSTOM_PROP_NAME_PREFIX + extractRpId(state), EPZ_CUSTOM_PROP_VALUE) .build(); Query combinedQuery = Query.Builder.create().addClauses(mustBeOut, areIn).build(); queryComputes(state, combinedQuery, EpzComputeEnumerationTaskState.SubStage.UNASSIGN_COMPUTES, EpzComputeEnumerationTaskState.SubStage.QUERY_COMPUTES_TO_ASSIGN); }
private QueryTask createGraphQueryStage(int stageIndex) { QueryTask stage = QueryTask.Builder.create() .addOption(QueryOption.SELECT_LINKS) .addLinkTerm(QueryValidationServiceState.FIELD_NAME_SERVICE_LINKS) .setQuery(Query.Builder.create() .addRangeClause(QueryValidationServiceState.FIELD_NAME_LONG_VALUE, NumericRange.createLongRange((long) stageIndex, (long) stageIndex, true, true)) .addKindFieldClause(QueryValidationServiceState.class) .build()) .build(); return stage; }
/** * Generates a query that finds all computes which resource pool link points to this resource * pool. Applicable to non-elastic pools only. */ private Query generateResourcePoolQuery(ResourcePoolState initState) { Query query = Query.Builder.create() .addKindFieldClause(ComputeState.class) .addFieldClause(ComputeState.FIELD_NAME_RESOURCE_POOL_LINK, getSelfLink()) .build(); return query; } }
private Query.Builder endpointsByTypeQuery(SendImageEnumerationAdapterContext ctx) { Query.Builder endpointsByTypeQuery = Query.Builder.create() .addKindFieldClause(EndpointState.class) .addCaseInsensitiveFieldClause( EndpointState.FIELD_NAME_ENDPOINT_TYPE, ctx.taskState.endpointType, MatchType.TERM, Occurance.MUST_OCCUR); return endpointsByTypeQuery; }
private DeferredResult<List<ContainerState>> retrieveContainerStates( ContainerDescription cd) { logFine("Retrieving containers from container description: %s", cd.documentSelfLink); Builder builder = Builder.create() .addKindFieldClause(ContainerState.class) .addFieldClause(ContainerState.FIELD_NAME_DESCRIPTION_LINK, cd.documentSelfLink); QueryByPages<ContainerState> query = new QueryByPages<>(getHost(), builder.build(), ContainerState.class, null); return query.collectDocuments(Collectors.toList()); }
private DeferredResult<List<ContainerState>> retrieveContainerStates(String descriptionLink) { Builder builder = Builder.create() .addKindFieldClause(ContainerState.class) .addFieldClause(ContainerState.FIELD_NAME_DESCRIPTION_LINK, descriptionLink); QueryByPages<ContainerState> query = new QueryByPages<>(host, builder.build(), ContainerState.class, null); return query.collectDocuments(Collectors.toList()); }
/** * Generates a query that finds all computes which resource pool link points to this * resource pool. Applicable to non-elastic pools only. */ private Query generateResourcePoolQuery(ResourcePoolState initState) { Query query = Query.Builder.create() .addKindFieldClause(ComputeState.class) .addFieldClause(ComputeState.FIELD_NAME_RESOURCE_POOL_LINK, getSelfLink()) .build(); return query; } }
private DeferredResult<List<GroupResourcePlacementState>> getPlacements() { Query query = Query.Builder.create().addKindFieldClause(GroupResourcePlacementState.class) .build(); return new QueryByPages<>(this.getHost(), query, GroupResourcePlacementState.class, null) .collectDocuments(Collectors.toList()); }