List of usage examples for com.google.common.base Predicates equalTo
public static <T> Predicate<T> equalTo(@Nullable T target)
From source file:com.eucalyptus.compute.common.internal.network.ExtantNetwork.java
void remove(final PrivateNetworkIndex index) { // Removal works around hibernate issue // https://hibernate.atlassian.net/browse/HHH-3799 int sizeBefore = indexes.size(); if (Iterables.removeIf(indexes, Predicates.equalTo(index)) && sizeBefore == indexes.size()) { List<PrivateNetworkIndex> temp = Lists.newArrayList(indexes); indexes.clear();/*from ww w . j a v a 2 s .c om*/ indexes.addAll(temp); indexes.remove(index); } }
From source file:additionalpipes.client.gui.GuiTeleportPipe.java
private void updateSlotStrings() { showingFreqs = Ints.toArray(Collections2.filter(Ints.asList(clientProps.propFreqMapFreqs.value), Predicates.not(Predicates.equalTo(currentFreq)))); slotFreqNames.setStrings(ImmutableList.copyOf( Iterables.filter(Arrays.asList(currentNames), Predicates.not(Predicates.equalTo(currentName))))); }
From source file:com.github.rinde.opt.localsearch.Swaps.java
static <C, T> Iterator<Swap<T>> oneItemSwapIterator(Schedule<C, T> schedule, IntList startIndices, T item, int fromRow) { final IntList indices = indices(schedule.routes.get(fromRow), item); final ImmutableList.Builder<Iterator<Swap<T>>> iteratorBuilder = ImmutableList.builder(); Range<Integer> range;//from w w w . ja v a2s . c o m if (indices.size() == 1) { range = Range.closedOpen(fromRow, fromRow + 1); } else { range = Range.closedOpen(0, schedule.routes.size()); } for (int i = range.lowerEndpoint(); i < range.upperEndpoint(); i++) { int rowSize = schedule.routes.get(i).size(); if (fromRow == i) { rowSize -= indices.size(); } Iterator<IntList> it = new InsertionIndexGenerator(indices.size(), rowSize, startIndices.getInt(i)); // filter out swaps that have existing result if (fromRow == i) { it = Iterators.filter(it, Predicates.not(Predicates.equalTo(indices))); } iteratorBuilder.add(Iterators.transform(it, new IndexToSwapTransform<T>(item, fromRow, i))); } return Iterators.concat(iteratorBuilder.build().iterator()); }
From source file:org.apache.brooklyn.rest.filter.CsrfTokenFilter.java
@Override public void filter(ContainerRequestContext requestContext) throws IOException { // if header supplied, check it is valid String requiredWhenS = request.getHeader(CSRF_TOKEN_REQUIRED_HEADER); if (Strings.isNonBlank(requiredWhenS) && getRequiredForRequests(requiredWhenS, null) == null) { fail(requestContext,/* ww w .ja v a2s. c o m*/ ApiError.builder().errorCode(Response.Status.BAD_REQUEST) .message(HEADER_OF_COOKIE(CSRF_TOKEN_REQUIRED_HEADER) + " header if supplied must be one of " + Arrays.asList(CsrfTokenRequiredForRequests.values())) .build()); return; } if (!request.isRequestedSessionIdValid()) { // no session; just return return; } @SuppressWarnings("unchecked") List<String> suppliedTokensDefault = EnumerationUtils.toList(request.getHeaders(CSRF_TOKEN_VALUE_HEADER)); @SuppressWarnings("unchecked") List<String> suppliedTokensAngular = EnumerationUtils .toList(request.getHeaders(CSRF_TOKEN_VALUE_HEADER_ANGULAR_NAME)); List<String> suppliedTokens = Lists.newArrayList(suppliedTokensDefault); suppliedTokens.addAll(suppliedTokensAngular); Object requiredToken = request.getSession().getAttribute(CSRF_TOKEN_VALUE_ATTR); CsrfTokenRequiredForRequests whenRequired = (CsrfTokenRequiredForRequests) request.getSession() .getAttribute(CSRF_TOKEN_REQUIRED_ATTR); boolean isRequired; if (whenRequired == null) { if (suppliedTokens.isEmpty()) { log.warn( "No CSRF token expected or supplied but a cookie-session is active: client should be updated" + " (in future CSRF tokens or instructions may be required for session-based clients)" + " - " + Entitlements.getEntitlementContext()); whenRequired = CsrfTokenRequiredForRequests.NONE; } else { // default whenRequired = DEFAULT_REQUIRED_FOR_REQUESTS; } // remember it to suppress warnings subsequently request.getSession().setAttribute(CSRF_TOKEN_REQUIRED_ATTR, whenRequired); } switch (whenRequired) { case NONE: isRequired = false; break; case WRITE: isRequired = !org.eclipse.jetty.http.HttpMethod.GET.toString().equals(requestContext.getMethod()); break; case ALL: isRequired = true; break; default: log.warn("Unexpected " + CSRF_TOKEN_REQUIRED_ATTR + " value " + whenRequired); isRequired = true; } if (Iterables.any(suppliedTokens, Predicates.equalTo(requiredToken))) { // matching token supplied, or not being used return; } if (!isRequired) { // csrf not required, but it doesn't match if (requiredToken != null) { log.trace( "CSRF optional token mismatch: client did not send valid token, but it isn't required so proceeding"); } return; } if (suppliedTokens.isEmpty()) { fail(requestContext, ApiError.builder().errorCode(Response.Status.UNAUTHORIZED) .message(HEADER_OF_COOKIE(CSRF_TOKEN_VALUE_COOKIE) + " header is required, containing token previously returned from server in cookie") .build()); } else { fail(requestContext, ApiError.builder().errorCode(Response.Status.UNAUTHORIZED).message( HEADER_OF_COOKIE(CSRF_TOKEN_VALUE_COOKIE) + " header did not match expected CSRF token") .build()); } }
From source file:org.apache.brooklyn.entity.brooklynnode.effector.BrooklynNodeUpgradeEffectorBody.java
private String dryRunUpdate(ConfigBag parameters) { // TODO require entity() node state master or hot standby AND require persistence enabled, or a new 'force_attempt_upgrade' parameter to be applied // TODO could have a 'skip_dry_run_upgrade' parameter // TODO could support 'dry_run_only' parameter, with optional resumption tasks (eg new dynamic effector) // 1 add new brooklyn version entity as child (so uses same machine), with same config apart from things in parameters final Entity dryRunChild = entity().addChild(createDryRunSpec().displayName("Upgraded Version Dry-Run Node") // install dir and label are recomputed because they are not inherited, and download_url will normally be different .configure(parameters.getAllConfig())); //force this to start as hot-standby // TODO alternatively could use REST API as in BrooklynClusterUpgradeEffectorBody // TODO Want better way to append to the config (so can do it all in the spec) String launchParameters = dryRunChild.getConfig(BrooklynNode.EXTRA_LAUNCH_PARAMETERS); if (Strings.isBlank(launchParameters)) launchParameters = ""; else/* w w w.jav a 2s . c o m*/ launchParameters += " "; launchParameters += "--highAvailability " + HighAvailabilityMode.HOT_STANDBY; ((EntityInternal) dryRunChild).config().set(BrooklynNode.EXTRA_LAUNCH_PARAMETERS, launchParameters); final String dryRunNodeUid = dryRunChild.getId(); ((EntityInternal) dryRunChild).setDisplayName("Dry-Run Upgraded Brooklyn Node (" + dryRunNodeUid + ")"); DynamicTasks.queue(Effectors.invocation(dryRunChild, BrooklynNode.START, ConfigBag.EMPTY)); // 2 confirm hot standby status DynamicTasks.queue(EntityTasks.requiringAttributeEventually(dryRunChild, BrooklynNode.MANAGEMENT_NODE_STATE, Predicates.equalTo(ManagementNodeState.HOT_STANDBY), Duration.FIVE_MINUTES)); // 3 stop new version DynamicTasks .queue(Tasks.builder().displayName("shutdown transient node") .add(Effectors.invocation(dryRunChild, BrooklynNode.STOP_NODE_BUT_LEAVE_APPS, ImmutableMap.of(StopSoftwareParameters.STOP_MACHINE_MODE, StopMode.NEVER))) .build()); DynamicTasks.queue(Tasks.<Void>builder().displayName("remove transient node").body(new Runnable() { @Override public void run() { Entities.unmanage(dryRunChild); } }).build()); return dryRunChild.getId(); }
From source file:org.xwiki.extension.repository.internal.core.DefaultCoreExtensionScanner.java
private void loadExtensionsFromClassloaders(Map<String, DefaultCoreExtension> extensions, DefaultCoreExtensionRepository repository) { Collection<URL> mavenURLs = ClasspathHelper.forPackage(MavenUtils.MAVENPACKAGE); ConfigurationBuilder configurationBuilder = new ConfigurationBuilder(); configurationBuilder.setScanners(new ResourcesScanner()); configurationBuilder.setUrls(mavenURLs); configurationBuilder/*from www. ja v a 2 s .co m*/ .filterInputsBy(new FilterBuilder.Include(FilterBuilder.prefix(MavenUtils.MAVENPACKAGE))); Reflections reflections = new Reflections(configurationBuilder); Set<String> descriptors = reflections.getResources(Predicates.equalTo("pom.xml")); for (String descriptor : descriptors) { URL descriptorURL = getClass().getClassLoader().getResource(descriptor); if (descriptorURL != null) { try { DefaultCoreExtension coreExtension = getCoreExension(descriptorURL, repository); DefaultCoreExtension existingCoreExtension = extensions.get(coreExtension.getId().getId()); if (existingCoreExtension == null) { extensions.put(coreExtension.getId().getId(), coreExtension); } else { this.logger.warn("Collision between core extension [{} ({})] and [{} ({})]", coreExtension.getId(), coreExtension.getDescriptorURL(), existingCoreExtension.getId(), existingCoreExtension.getDescriptorURL()); if (coreExtension.getId().getVersion() .compareTo(existingCoreExtension.getId().getVersion()) > 0) { extensions.put(coreExtension.getId().getId(), coreExtension); this.logger.warn("[{} ({})] is selected", coreExtension.getId(), coreExtension.getDescriptorURL()); } else { this.logger.warn("[{} ({})] is selected", existingCoreExtension.getId(), existingCoreExtension.getDescriptorURL()); } } } catch (Exception e) { this.logger.warn("Failed to parse extension descriptor [{}] ([{}])", descriptorURL, descriptor, e); } } else { this.logger.error("Could not find resource URL for descriptor [{}]", descriptor); } } // Try to find more guess(extensions, repository); }
From source file:org.eclipse.rcptt.launching.ext.Q7LaunchDelegateUtils.java
/** Adds a key value pair, if this key is not already present */ private static void addIfAbsent(Collection<String> arguments, String key, String value) { Preconditions.checkNotNull(key);/*from w w w . j ava 2 s . c o m*/ if (!Iterables.any(arguments, Predicates.equalTo(key))) { arguments.add(key); if (value != null) arguments.add(value); } }
From source file:dodola.anole.lib.FileUtils.java
/** * Find a file with the specified name in a given directory . *//*from ww w . java 2 s . c o m*/ public static Optional<File> find(File base, final String name) { checkArgument(base.isDirectory(), "'base' must be a directory."); return Files.fileTreeTraverser().preOrderTraversal(base) .filter(Predicates.compose(Predicates.equalTo(name), GET_NAME)).last(); }
From source file:clocker.docker.location.DockerContainerLocation.java
private void parseDockerCallback(String commandString) { List<String> tokens = DockerCallbacks.PARSER.splitToList(commandString); int callback = Iterables.indexOf(tokens, Predicates.equalTo(DockerCallbacks.DOCKER_HOST_CALLBACK)); if (callback == -1) { LOG.warn("Could not find callback token: {}", commandString); throw new IllegalStateException("Cannot find callback token in command line"); }// www. j a v a2 s . com String command = tokens.get(callback + 1); LOG.info("Executing callback for {}: {}", getOwner(), command); if (DockerCallbacks.COMMIT.equalsIgnoreCase(command)) { String containerId = getOwner().getContainerId(); String imageName = getOwner().sensors().get(DockerContainer.DOCKER_IMAGE_NAME); String output = getOwner().getDockerHost() .runDockerCommandTimeout(format("commit %s %s", containerId, imageName), Duration.minutes(20)); String imageId = DockerUtils.checkId(output); getOwner().getRunningEntity().sensors().set(DockerContainer.DOCKER_IMAGE_ID, imageId); getOwner().sensors().set(DockerContainer.DOCKER_IMAGE_ID, imageId); getOwner().getDockerHost().getDynamicLocation().markImage(imageName); } else if (DockerCallbacks.PUSH.equalsIgnoreCase(command)) { // FIXME this doesn't work yet String imageName = getOwner().sensors().get(DockerContainer.DOCKER_IMAGE_NAME); getOwner().getDockerHost().runDockerCommand(format("push %s", imageName)); } else { LOG.warn("Unknown Docker host command: {}", command); } }
From source file:com.android.utils.FileUtils.java
/** * Find a file with the specified name in a given directory . *///from w ww . j a v a 2s. com public static Optional<File> find(@NonNull File base, @NonNull final String name) { checkArgument(base.isDirectory(), "'base' must be a directory."); return Files.fileTreeTraverser().preOrderTraversal(base) .filter(Predicates.compose(Predicates.equalTo(name), GET_NAME)).last(); }