List of usage examples for com.google.common.base Predicates or
public static <T> Predicate<T> or(Predicate<? super T>... components)
From source file:com.cimr.boot.swagger.SwaggerAutoConfiguration.java
@Bean @ConditionalOnMissingBean//w ww . j a v a 2 s. c o m @ConditionalOnBean(UiConfiguration.class) @ConditionalOnProperty(name = "swagger.enabled", matchIfMissing = true) public List<Docket> createRestApi(SwaggerProperties swaggerProperties) { ConfigurableBeanFactory configurableBeanFactory = (ConfigurableBeanFactory) beanFactory; List<Docket> docketList = new LinkedList<>(); // if (swaggerProperties.getDocket().size() == 0) { ApiInfo apiInfo = new ApiInfoBuilder().title(swaggerProperties.getTitle()) .description(swaggerProperties.getDescription()).version(swaggerProperties.getVersion()) .license(swaggerProperties.getLicense()).licenseUrl(swaggerProperties.getLicenseUrl()) .contact(new Contact(swaggerProperties.getContact().getName(), swaggerProperties.getContact().getUrl(), swaggerProperties.getContact().getEmail())) .termsOfServiceUrl(swaggerProperties.getTermsOfServiceUrl()).build(); // base-path? // ?path?/** if (swaggerProperties.getBasePath().isEmpty()) { swaggerProperties.getBasePath().add("/**"); } List<Predicate<String>> basePath = new ArrayList(); for (String path : swaggerProperties.getBasePath()) { basePath.add(PathSelectors.ant(path)); } // exclude-path? List<Predicate<String>> excludePath = new ArrayList(); for (String path : swaggerProperties.getExcludePath()) { excludePath.add(PathSelectors.ant(path)); } Docket docketForBuilder = new Docket(DocumentationType.SWAGGER_2).host(swaggerProperties.getHost()) .apiInfo(apiInfo) .securitySchemes(buildSecuritySchemeFromSwaggerProperties( swaggerProperties.getSecuritySchemesParameters())) .globalOperationParameters(buildGlobalOperationParametersFromSwaggerProperties( swaggerProperties.getGlobalOperationParameters())); // ?? if (!swaggerProperties.getApplyDefaultResponseMessages()) { buildGlobalResponseMessage(swaggerProperties, docketForBuilder); } Docket docket = docketForBuilder.select() .apis(RequestHandlerSelectors.basePackage(swaggerProperties.getBasePackage())) .paths(Predicates.and(Predicates.not(Predicates.or(excludePath)), Predicates.or(basePath))) .build(); /** ignoredParameterTypes **/ Class[] array = new Class[swaggerProperties.getIgnoredParameterTypes().size()]; Class[] ignoredParameterTypes = swaggerProperties.getIgnoredParameterTypes().toArray(array); docket.ignoredParameterTypes(ignoredParameterTypes); configurableBeanFactory.registerSingleton("defaultDocket", docket); docketList.add(docket); return docketList; } // for (String groupName : swaggerProperties.getDocket().keySet()) { SwaggerProperties.DocketInfo docketInfo = swaggerProperties.getDocket().get(groupName); ApiInfo apiInfo = new ApiInfoBuilder() .title(docketInfo.getTitle().isEmpty() ? swaggerProperties.getTitle() : docketInfo.getTitle()) .description(docketInfo.getDescription().isEmpty() ? swaggerProperties.getDescription() : docketInfo.getDescription()) .version(docketInfo.getVersion().isEmpty() ? swaggerProperties.getVersion() : docketInfo.getVersion()) .license(docketInfo.getLicense().isEmpty() ? swaggerProperties.getLicense() : docketInfo.getLicense()) .licenseUrl(docketInfo.getLicenseUrl().isEmpty() ? swaggerProperties.getLicenseUrl() : docketInfo.getLicenseUrl()) .contact(new Contact( docketInfo.getContact().getName().isEmpty() ? swaggerProperties.getContact().getName() : docketInfo.getContact().getName(), docketInfo.getContact().getUrl().isEmpty() ? swaggerProperties.getContact().getUrl() : docketInfo.getContact().getUrl(), docketInfo.getContact().getEmail().isEmpty() ? swaggerProperties.getContact().getEmail() : docketInfo.getContact().getEmail())) .termsOfServiceUrl( docketInfo.getTermsOfServiceUrl().isEmpty() ? swaggerProperties.getTermsOfServiceUrl() : docketInfo.getTermsOfServiceUrl()) .build(); // base-path? // ?path?/** if (docketInfo.getBasePath().isEmpty()) { docketInfo.getBasePath().add("/**"); } List<Predicate<String>> basePath = new ArrayList(); for (String path : docketInfo.getBasePath()) { basePath.add(PathSelectors.ant(path)); } // exclude-path? List<Predicate<String>> excludePath = new ArrayList(); for (String path : docketInfo.getExcludePath()) { excludePath.add(PathSelectors.ant(path)); } Docket docketForBuilder = new Docket(DocumentationType.SWAGGER_2).host(swaggerProperties.getHost()) .apiInfo(apiInfo).globalOperationParameters( assemblyGlobalOperationParameters(swaggerProperties.getGlobalOperationParameters(), docketInfo.getGlobalOperationParameters())); // ?? if (!swaggerProperties.getApplyDefaultResponseMessages()) { buildGlobalResponseMessage(swaggerProperties, docketForBuilder); } Docket docket = docketForBuilder.groupName(groupName).select() .apis(RequestHandlerSelectors.basePackage(docketInfo.getBasePackage())) .paths(Predicates.and(Predicates.not(Predicates.or(excludePath)), Predicates.or(basePath))) .build(); /** ignoredParameterTypes **/ Class[] array = new Class[docketInfo.getIgnoredParameterTypes().size()]; Class[] ignoredParameterTypes = docketInfo.getIgnoredParameterTypes().toArray(array); docket.ignoredParameterTypes(ignoredParameterTypes); configurableBeanFactory.registerSingleton(groupName, docket); docketList.add(docket); } return docketList; }
From source file:clocker.mesos.entity.MesosClusterImpl.java
@Override public void init() { LOG.info("Starting Mesos cluster id {}", getId()); registerLocationResolver();/*w ww .j a v a 2 s. co m*/ super.init(); Group slaves = addChild(EntitySpec.create(BasicGroup.class).displayName("Mesos Slaves")); Group frameworks = addChild(EntitySpec.create(BasicGroup.class).displayName("Mesos Frameworks")); DynamicGroup tasks = addChild(EntitySpec.create(DynamicGroup.class) .configure(DynamicGroup.ENTITY_FILTER, Predicates.and(Predicates.instanceOf(MesosTask.class), EntityPredicates.attributeEqualTo(MesosAttributes.MESOS_CLUSTER, this))) .displayName("Mesos Tasks")); DynamicMultiGroup applications = addChild(EntitySpec.create(DynamicMultiGroup.class) .configure(DynamicMultiGroup.ENTITY_FILTER, Predicates.and(MesosUtils.sameCluster(this), Predicates.not(EntityPredicates.applicationIdEqualTo(getApplicationId())))) .configure(DynamicMultiGroup.RESCAN_INTERVAL, 15L) .configure(DynamicMultiGroup.BUCKET_FUNCTION, new Function<Entity, String>() { @Override public String apply(@Nullable Entity input) { return input.getApplication().getDisplayName() + ":" + input.getApplicationId(); } }).configure(DynamicMultiGroup.BUCKET_SPEC, EntitySpec.create(BasicGroup.class)) .displayName("Mesos Applications")); if (config().get(SDN_ENABLE) && config().get(SDN_PROVIDER_SPEC) != null) { EntitySpec entitySpec = EntitySpec.create(config().get(SDN_PROVIDER_SPEC)); entitySpec.configure(MesosAttributes.MESOS_CLUSTER, this); Entity sdn = addChild(entitySpec); sensors().set(SDN_PROVIDER, sdn); } sensors().set(MESOS_SLAVES, slaves); sensors().set(MESOS_FRAMEWORKS, frameworks); sensors().set(MESOS_TASKS, tasks); sensors().set(MESOS_APPLICATIONS, applications); // Override the health-check: just interested in the slaves, frameworks and sdn (rather than // the groups that show the tasks or apps). Entity sdn = sensors().get(SDN_PROVIDER); enrichers().add(EnricherSpec.create(ComputeServiceIndicatorsFromChildrenAndMembers.class) .uniqueTag(ComputeServiceIndicatorsFromChildrenAndMembers.DEFAULT_UNIQUE_TAG) .configure(ComputeServiceIndicatorsFromChildrenAndMembers.FROM_CHILDREN, true) .configure(ComputeServiceIndicatorsFromChildrenAndMembers.ENTITY_FILTER, Predicates.or(ImmutableList.of(Predicates.<Entity>equalTo(slaves), Predicates.<Entity>equalTo(frameworks), (sdn == null ? Predicates.<Entity>alwaysFalse() : Predicates.equalTo(sdn)))))); }
From source file:alien4cloud.webconfiguration.RestDocumentationConfig.java
private Predicate<String> otherApiPredicate() { Predicate<String> notAlreadyTreated = Predicates.not(Predicates.or(predicates)); Predicate<String> isCurrentVersionApi = PathSelectors .regex("/rest/" + PREFIXED_CURRENT_API_VERSION + "/.*"); return Predicates.and(notAlreadyTreated, isCurrentVersionApi); }
From source file:org.sonatype.nexus.plugins.capabilities.internal.rest.StoresResource.java
private Predicate<Repository> hasAnyOfFacets(@Nullable final List<String> facets) { if (facets != null && !facets.isEmpty()) { List<Predicate<Repository>> predicates = Lists.newArrayList(); for (String facet : facets) { if (StringUtils.isNotEmpty(facet) && !facet.startsWith("!")) { try { final Class<?> facetClass = getClass().getClassLoader().loadClass(facet); predicates.add(new Predicate<Repository>() { @Override public boolean apply(@Nullable final Repository input) { return input != null && input.getRepositoryKind().isFacetAvailable(facetClass); }/*from w w w .j a v a2 s. c o m*/ }); } catch (ClassNotFoundException e) { log.warn("Repositories will not be filtered by facet {} as it could not be loaded", facet); } } } if (!predicates.isEmpty()) { if (predicates.size() == 1) { return predicates.get(0); } return Predicates.or(predicates); } } return null; }
From source file:org.appverse.web.framework.backend.frontfacade.mvc.swagger.autoconfigure.SwaggerDefaultSetup.java
@SuppressWarnings("unchecked") private Predicate<String> defaultGroup() { String[] includePatterns = getIncludePatterns(); List<Predicate<String>> predicateList = new ArrayList<Predicate<String>>(); if (includePatterns != null) { for (String pattern : includePatterns) { predicateList.add(PathSelectors.regex(pattern)); }//from w w w . j a va 2 s . c o m return Predicates.or(predicateList); } else { return Predicates.or(PathSelectors.regex("/*")); } }
From source file:com.eucalyptus.cloud.ws.DNSControl.java
private static <T extends Thread> void initializeListeners(final AtomicReference<Collection<T>> listenerRef, final String description, final ListenerBuilder<T> builder) { try (final LockResource lock = LockResource.lock(listenerLock)) { if (listenerRef.get().isEmpty()) { final int listenPort = DNSProperties.PORT; final Set<InetAddress> listenAddresses = Sets.newLinkedHashSet(); listenAddresses.add(Internets.localHostInetAddress()); Iterables.addAll(listenAddresses, Iterables.filter(Internets.getAllInetAddresses(), Predicates.or(addressMatchers.get()))); LOG.info("Starting DNS " + description + " listeners on " + listenAddresses + ":" + listenPort); // Configured listeners final List<T> listeners = Lists.newArrayList(); for (final InetAddress listenAddress : listenAddresses) { try { final T listener = Capabilities.runWithCapabilities(new Callable<T>() { @Override public T call() throws Exception { final T listener = builder.build(listenAddress, listenPort); listener.start(); return listener; }// w w w. j ava2 s .c o m }); listeners.add(listener); } catch (final Exception ex) { LOG.error("Error starting DNS " + description + " listener on " + listenAddress + ":" + listenPort, ex); } } listenerRef.set(ImmutableList.copyOf(listeners)); } } }
From source file:org.apache.brooklyn.core.objs.ConstraintSerialization.java
@SuppressWarnings({ "unchecked", "rawtypes" }) private void init() { PredicateSerializationRuleAdder.predicateListConstructor((o) -> ConfigConstraints.required()) .equivalentPredicates(StringPredicates.isNonBlank()).add(this); PredicateSerializationRuleAdder.predicateListConstructor((o) -> Predicates.or((Iterable) o)) .preferredName("any").equivalentNames("or").add(this); PredicateSerializationRuleAdder//from w w w .j a va 2 s . c o m .predicateListConstructor( (o) -> /* and predicate is default when given list */ toPredicateFromJson(o)) .preferredName("all").sample(Predicates.and(Collections.emptyList())).equivalentNames("and") .add(this); PredicateSerializationRuleAdder.noArgConstructor(Predicates::alwaysFalse).add(this); PredicateSerializationRuleAdder.noArgConstructor(Predicates::alwaysTrue).add(this); PredicateSerializationRuleAdder.noArgConstructor(Predicates::notNull).add(this); PredicateSerializationRuleAdder.noArgConstructor(ResourcePredicates::urlExists).preferredName("urlExists") .add(this); PredicateSerializationRuleAdder.noArgConstructor(StringPredicates::isBlank).add(this); PredicateSerializationRuleAdder.stringConstructor(StringPredicates::matchesRegex).preferredName("regex") .add(this); PredicateSerializationRuleAdder.stringConstructor(StringPredicates::matchesGlob).preferredName("glob") .add(this); PredicateSerializationRuleAdder.stringConstructor(ConfigConstraints::forbiddenIf).add(this); PredicateSerializationRuleAdder.stringConstructor(ConfigConstraints::forbiddenUnless).add(this); PredicateSerializationRuleAdder.stringConstructor(ConfigConstraints::requiredIf).add(this); PredicateSerializationRuleAdder.stringConstructor(ConfigConstraints::requiredUnless).add(this); PredicateSerializationRuleAdder.listConstructor(ConfigConstraints::requiredUnlessAnyOf).add(this); PredicateSerializationRuleAdder.listConstructor(ConfigConstraints::forbiddenUnlessAnyOf).add(this); }
From source file:org.sonatype.nexus.plugins.capabilities.internal.rest.StoresResource.java
private Predicate<Repository> hasAnyOfContentClasses(final List<String> contentClasses) { if (contentClasses != null && !contentClasses.isEmpty()) { List<Predicate<Repository>> predicates = Lists.newArrayList(); for (final String contentClass : contentClasses) { if (StringUtils.isNotEmpty(contentClass) && !contentClass.startsWith("!")) { predicates.add(new Predicate<Repository>() { @Override/*from w ww . j a v a2 s.com*/ public boolean apply(@Nullable final Repository input) { return input != null && input.getRepositoryContentClass().getId().equals(contentClass); } }); } } if (!predicates.isEmpty()) { if (predicates.size() == 1) { return predicates.get(0); } return Predicates.or(predicates); } } return null; }
From source file:com.eucalyptus.auth.euare.identity.region.RegionConfigurationManager.java
private boolean isValidAddress(final InetAddress inetAddress, final NonNullFunction<RegionInfo, Set<Cidr>> cidrTransform) { final Optional<RegionInfo> regionInfoOptional = getRegionInfo(); final Predicate<InetAddress> addressPredicate = Predicates .or(Iterables.concat(regionInfoOptional.transform(cidrTransform).asSet())); return addressPredicate.apply(inetAddress); }
From source file:org.eclipse.xtext.formatting2.regionaccess.internal.AbstractSemanticRegionsFinder.java
@Override public List<ISemanticRegion> features(EStructuralFeature... features) { Set<Predicate<ISemanticRegion>> predicates = Sets.newHashSet(); for (int i = 0; i < features.length; i++) { EStructuralFeature feat = features[i]; assertNoContainment(feat);/* w ww. j av a2 s . c o m*/ predicates.add(new FeaturePredicate(feat)); } return findAll(Predicates.or(predicates)); }