List of usage examples for com.google.common.base Predicates alwaysTrue
@GwtCompatible(serializable = true) public static <T> Predicate<T> alwaysTrue()
From source file:com.eucalyptus.autoscaling.activities.ActivityManager.java
private ScalingProcessTask<?, ?> perhapsTerminateInstances(final AutoScalingGroupScalingView group, final int terminateCount) { final List<String> instancesToTerminate = Lists.newArrayList(); boolean anyRegisteredInstances = false; int currentCapacity = 0; try {//w ww . j a va 2 s . c o m final List<AutoScalingInstanceCoreView> currentInstances = autoScalingInstances.listByGroup(group, Predicates.alwaysTrue(), TypeMappers.lookup(AutoScalingInstance.class, AutoScalingInstanceCoreView.class)); currentCapacity = currentInstances.size(); if (currentInstances.size() == terminateCount) { Iterables.addAll(instancesToTerminate, Iterables.transform(currentInstances, RestrictedTypes.toDisplayName())); anyRegisteredInstances = Iterables.any(currentInstances, ConfigurationState.Registered.forView()); } else { // First terminate instances in zones that are no longer in use final Set<String> groupZones = Sets.newLinkedHashSet(group.getAvailabilityZones()); groupZones.removeAll( zoneMonitor.getUnavailableZones(AutoScalingConfiguration.getZoneFailureThresholdMillis())); final Set<String> unwantedZones = Sets .newHashSet(Iterables.transform(currentInstances, availabilityZone())); unwantedZones.removeAll(groupZones); final Set<String> targetZones; final List<AutoScalingInstanceCoreView> remainingInstances = Lists.newArrayList(currentInstances); if (!unwantedZones.isEmpty()) { int unwantedInstanceCount = CollectionUtils.reduce(currentInstances, 0, CollectionUtils.count(withAvailabilityZone(unwantedZones))); if (unwantedInstanceCount < terminateCount) { Iterable<AutoScalingInstanceCoreView> unwantedInstances = Iterables.filter(currentInstances, withAvailabilityZone(unwantedZones)); Iterables.addAll(instancesToTerminate, Iterables.transform(unwantedInstances, RestrictedTypes.toDisplayName())); Iterables.removeAll(remainingInstances, Lists.newArrayList(unwantedInstances)); anyRegisteredInstances = Iterables.any(unwantedInstances, ConfigurationState.Registered.forView()); targetZones = groupZones; } else { targetZones = unwantedZones; } } else { targetZones = groupZones; } final Map<String, Integer> zoneCounts = buildAvailabilityZoneInstanceCounts(currentInstances, targetZones); for (int i = instancesToTerminate.size(); i < terminateCount && remainingInstances.size() >= 1; i++) { final Map.Entry<String, Integer> entry = selectEntry(zoneCounts, Ordering.natural().reverse()); final AutoScalingInstanceCoreView instanceForTermination = TerminationPolicyType .selectForTermination(group.getTerminationPolicies(), Lists.newArrayList( Iterables.filter(remainingInstances, withAvailabilityZone(entry.getKey())))); remainingInstances.remove(instanceForTermination); entry.setValue(entry.getValue() - 1); instancesToTerminate.add(instanceForTermination.getInstanceId()); anyRegisteredInstances |= ConfigurationState.Registered.forView().apply(instanceForTermination); } } } catch (final Exception e) { logger.error(e, e); } final List<ActivityCause> causes = Lists.newArrayList(); causes.add(new ActivityCause(String.format( "an instance was taken out of service in response to a difference between desired and actual capacity, shrinking the capacity from %1$d to %2$d", group.getCapacity(), group.getCapacity() - instancesToTerminate.size()))); for (final String instanceId : instancesToTerminate) { causes.add(new ActivityCause(String.format("instance %1$s was selected for termination", instanceId))); } return removeFromLoadBalancerOrTerminate(group, currentCapacity, anyRegisteredInstances, instancesToTerminate, causes, false); }
From source file:io.usethesource.criterion.CalculateFootprintsHeterogeneous.java
private static String measureAndReport(final Object objectToMeasure, final String className, DataType dataType, Archetype archetype, boolean supportsStagedMutability, int size, int run, MemoryFootprintPreset preset) {/* w w w .j a v a2 s . c o m*/ final Predicate<Object> predicate; switch (preset) { case DATA_STRUCTURE_OVERHEAD: // TODO: create JmhLeaf // predicate = Predicates // .not(Predicates.or(Predicates.instanceOf(Integer.class), // Predicates.instanceOf(BigInteger.class), // Predicates.instanceOf(JmhValue.class), Predicates.instanceOf(PureInteger.class))); predicate = Predicates.not(Predicates.or(Predicates.instanceOf(PureInteger.class), Predicates.instanceOf(PureIntegerWithCustomHashCode.class))); break; case RETAINED_SIZE: predicate = Predicates.alwaysTrue(); break; case RETAINED_SIZE_WITH_BOXED_INTEGER_FILTER: predicate = Predicates.not(Predicates.instanceOf(Integer.class)); break; default: throw new IllegalStateException(); } return measureAndReport(objectToMeasure, className, dataType, archetype, supportsStagedMutability, size, run, predicate); }
From source file:org.obeonetwork.dsl.uml2.design.api.wizards.ModelElementsSelectionDialog.java
/** * Get valid elements for a diagram.// w w w.ja v a2 s .c om * * @param element * Element * @param containerView * Container view * @return List of valid elements for the current representation */ private Predicate<Object> isValidForDiagram() { Predicate<Object> results = Predicates.alwaysTrue(); if (diagram instanceof DSemanticDiagram) { final DiagramDescription description = ((DSemanticDiagram) diagram).getDescription(); if ("Class Diagram".equals(description.getName()) //$NON-NLS-1$ || "Profile Diagram".equals(description.getName())) { //$NON-NLS-1$ results = getValidsForClassDiagram(); } else if ("Component Diagram".equals(description.getName())) { //$NON-NLS-1$ results = getValidsForComponentDiagram(); } else if ("Composite Diagram".equals(description.getName())) { //$NON-NLS-1$ results = getValidsForCompositeDiagram(); } else if ("Composite Structure Diagram".equals(description.getName())) { //$NON-NLS-1$ results = getValidsForCompositeStructureDiagram(((DSemanticDiagram) diagram).getTarget()); } else if ("Deployment Diagram".equals(description.getName())) { //$NON-NLS-1$ results = getValidsForDeploymentDiagram(); } else if ("Package Hierarchy".equals(description.getName())) { //$NON-NLS-1$ results = getValidsForPackageDiagram(); } else if ("Use Case Diagram".equals(description.getName())) { //$NON-NLS-1$ results = getValidsForUseCaseDiagram(); } } return results; }
From source file:com.eucalyptus.autoscaling.activities.ActivityManager.java
private ScalingProcessTask<?, ?> perhapsScale(final AutoScalingGroupScalingView group) { final List<AutoScalingInstanceCoreView> currentInstances; try {/* w w w .j a v a 2 s . c o m*/ currentInstances = autoScalingInstances.listByGroup(group, Predicates.alwaysTrue(), TypeMappers.lookup(AutoScalingInstance.class, AutoScalingInstanceCoreView.class)); } catch (final Exception e) { logger.error(e, e); return new LaunchInstancesScalingProcessTask(group, 0, ""); } if (group.getCapacity() > group.getDesiredCapacity()) { if (!Iterables.all(currentInstances, Predicates.and(LifecycleState.InService.forView(), ConfigurationState.Registered.forView(), HealthStatus.Healthy.forView()))) { // Wait for terminations / launches to complete before further scaling. if (logger.isTraceEnabled()) { logger.trace("Group over desired capacity (" + group.getCapacity() + "/" + group.getDesiredCapacity() + "), waiting for scaling operations to complete."); } return new LaunchInstancesScalingProcessTask(group, 0, ""); } return perhapsTerminateInstances(group, group.getCapacity() - group.getDesiredCapacity()); } else { final List<String> zones = Lists.transform(currentInstances, AutoScalingInstances.availabilityZone()); final Set<String> groupZones = Sets.newLinkedHashSet(group.getAvailabilityZones()); final Set<String> unavailableZones = zoneMonitor .getUnavailableZones(AutoScalingConfiguration.getZoneFailureThresholdMillis()); groupZones.removeAll(unavailableZones); final int expectedInstancesPerZone = group.getCapacity() / Math.max(1, groupZones.size()); int requiredInstances = 0; for (final String zone : groupZones) { int instanceCount = CollectionUtils.reduce(zones, 0, CollectionUtils.count(Predicates.equalTo(zone))); if (instanceCount < expectedInstancesPerZone) { requiredInstances += expectedInstancesPerZone - instanceCount; } } final int hardInstanceLimit = group.getDesiredCapacity() + Math.max(1, group.getDesiredCapacity() / 10); if (requiredInstances + group.getCapacity() > hardInstanceLimit) { requiredInstances = hardInstanceLimit - group.getCapacity(); } else if (requiredInstances + group.getCapacity() < group.getDesiredCapacity()) { requiredInstances = group.getDesiredCapacity() - group.getCapacity(); } if (requiredInstances == 0) { setScalingNotRequired(group); } else if (!scalingProcessEnabled(ScalingProcessType.AZRebalance, group) && group.getCapacity().equals(group.getDesiredCapacity())) { if (logger.isTraceEnabled()) { logger.trace( "AZ rebalancing disabled, suppressing launch of " + requiredInstances + " instance(s)"); } requiredInstances = 0; // rebalancing disabled } String cause; if (group.getCapacity() < group.getDesiredCapacity()) { cause = String.format( "an instance was started in response to a difference between desired and actual capacity, increasing the capacity from %1$d to %2$d", group.getCapacity(), group.getCapacity() + requiredInstances); } else { final Set<String> groupZoneSet = Sets.newHashSet(group.getAvailabilityZones()); final Set<String> invalidZoneSet = Sets.newTreeSet(); Iterables.addAll(invalidZoneSet, Sets.intersection(groupZoneSet, unavailableZones)); Iterables.addAll(invalidZoneSet, Sets.difference(Sets.newHashSet(zones), groupZoneSet)); final List<Integer> invalidZoneCounts = Lists.newArrayList(); for (final String zone : invalidZoneSet) { invalidZoneCounts .add(CollectionUtils.reduce(zones, 0, CollectionUtils.count(Predicates.equalTo(zone)))); } final String invalidZones = Joiner.on(", ").join(invalidZoneSet); final String invalidZoneInstanceCounts = Joiner.on(", ").join(invalidZoneCounts); cause = String.format( "invalid availability zones %1$s had %2$s instances respectively. An instance was launched to aid in migrating instances from these zones to valid ones", invalidZones, invalidZoneInstanceCounts); } return new LaunchInstancesScalingProcessTask(group, requiredInstances, cause); } }
From source file:com.eucalyptus.simpleworkflow.SimpleWorkflowService.java
public Run startWorkflowExecution(final StartWorkflowExecutionRequest request) throws SimpleWorkflowException { final Context ctx = Contexts.lookup(); final UserFullName userFullName = ctx.getUserFullName(); final AccountFullName accountFullName = userFullName.asAccountFullName(); final Predicate<? super WorkflowType> accessible = SimpleWorkflowMetadatas.filteringFor(WorkflowType.class) .byPrivileges().buildPredicate(); final WorkflowExecution workflowExecution = allocate(new Supplier<WorkflowExecution>() { @Override/*from w ww. j a v a 2 s.c o m*/ public WorkflowExecution get() { try { if (!workflowExecutions.listByExample(WorkflowExecution.exampleForOpenWorkflow(accountFullName, request.getDomain(), request.getWorkflowId()), Predicates.alwaysTrue(), Functions.identity()).isEmpty()) { throw new SimpleWorkflowClientException("WorkflowExecutionAlreadyStartedFault", "Workflow open with ID " + request.getWorkflowId()); } final Domain domain; try { domain = domains.lookupByName(accountFullName, request.getDomain(), Registered, Functions.<Domain>identity()); } catch (SwfMetadataNotFoundException e) { throw upClient("UnknownResourceFault", "Unknown domain: " + request.getDomain()); } if (workflowExecutions.countOpenByDomain(accountFullName, domain.getDisplayName()) >= SimpleWorkflowProperties .getOpenWorkflowExecutionsPerDomain()) { throw upClient("LimitExceededFault", "Request would exceed limit for open workflow executions"); } final WorkflowType workflowType; try { workflowType = workflowTypes.lookupByExample( WorkflowType.exampleWithUniqueName(accountFullName, request.getDomain(), request.getWorkflowType().getName(), request.getWorkflowType().getVersion()), accountFullName, request.getWorkflowType().getName(), Predicates.and(accessible, WorkflowType.Status.Registered), Functions.<WorkflowType>identity()); } catch (SwfMetadataNotFoundException e) { throw upClient("UnknownResourceFault", "Unknown workflow type: " + request.getWorkflowType().getName()); } if (request.getChildPolicy() == null && workflowType.getDefaultChildPolicy() == null) { throw upClient("DefaultUndefinedFault", "Default child policy undefined"); } if (request.getTaskList() == null && workflowType.getDefaultTaskList() == null) { throw upClient("DefaultUndefinedFault", "Default task list undefined"); } final String childPolicy = Objects.firstNonNull(request.getChildPolicy(), workflowType.getDefaultChildPolicy()); final String taskList = request.getTaskList() == null ? workflowType.getDefaultTaskList() : request.getTaskList().getName(); final Integer executionStartToCloseTimeout = requireDefault( parsePeriod(request.getExecutionStartToCloseTimeout(), -1), workflowType.getDefaultExecutionStartToCloseTimeout(), "ExecutionStartToCloseTimeout"); final Integer taskStartToCloseTimeout = requireDefault( parsePeriod(request.getTaskStartToCloseTimeout(), -1), workflowType.getDefaultTaskStartToCloseTimeout(), "TaskStartToCloseTimeout"); final String taskStartToCloseTimeoutStr = taskStartToCloseTimeout < 0 ? "NONE" : String.valueOf(taskStartToCloseTimeout); final WorkflowExecution workflowExecution = WorkflowExecution.create(userFullName, UUID.randomUUID().toString(), domain, workflowType, request.getWorkflowId(), childPolicy, taskList, executionStartToCloseTimeout, taskStartToCloseTimeout < 0 ? null : taskStartToCloseTimeout, request.getTagList(), Lists.newArrayList( new WorkflowExecutionStartedEventAttributes().withChildPolicy(childPolicy) .withExecutionStartToCloseTimeout( String.valueOf(executionStartToCloseTimeout)) .withInput(request.getInput()).withParentInitiatedEventId(0L) .withTaskList(new TaskList().withName(taskList)) .withTagList(request.getTagList()) .withTaskStartToCloseTimeout(taskStartToCloseTimeoutStr) .withWorkflowType(request.getWorkflowType()), new DecisionTaskScheduledEventAttributes() .withStartToCloseTimeout(taskStartToCloseTimeoutStr) .withTaskList(request.getTaskList()))); return workflowExecutions.save(workflowExecution); } catch (Exception ex) { throw new RuntimeException(ex); } } }, WorkflowExecution.class, request.getWorkflowId()); notifyTaskList(accountFullName, workflowExecution.getDomainName(), "decision", workflowExecution.getTaskList()); final Run run = new Run(); run.setRunId(workflowExecution.getDisplayName()); return request.reply(run); }
From source file:org.apache.brooklyn.test.Asserts.java
public static void assertFails(Runnable r) { assertFailsWith(toCallable(r), Predicates.alwaysTrue()); }
From source file:org.apache.brooklyn.test.Asserts.java
public static void assertFails(Callable<?> c) { assertFailsWith(c, Predicates.alwaysTrue()); }
From source file:com.tinspx.util.net.Request.java
/** * Returns modifiable {@code ListMultimap} of all query parameters. All * modifications made will be immediately visible to any subsequent call to * {@link #query()} or {@link #uri()}./*from w w w . j av a2 s . c o m*/ */ public ListMultimap<String, String> queryParams() { if (paramsView == null) { paramsView = Predicated.listMultimap(Listenable.listMultimap(params(), new Listenable.Modification() { @Override public void onModify(Object src, Listenable.Event type) { invalidate(); } //don't track entries as values can be null }), Predicates.notNull(), Predicates.alwaysTrue(), false); } return paramsView; }
From source file:com.tinspx.util.collect.CollectUtils.java
/** * Returns the element at the given index in source. index may be negative * in which it represents the number of indices from the end of the source. *///from ww w .ja v a 2s.c o m @SuppressWarnings("rawtypes") private static @Nullable Object find(Iterable source, int index) { if (source instanceof List) { List list = (List) source; if (index < 0) { index += list.size(); } return index >= 0 && index < list.size() ? list.get(index) : ABSENT; } else { return find(source, Predicates.alwaysTrue(), index); } }
From source file:org.elasticsearch.test.InternalTestCluster.java
/** * Returns a reference to the given nodes instances of the given class >T< *//* w ww. ja v a 2 s . c o m*/ public synchronized <T> T getInstance(Class<T> clazz, final String node) { final Predicate<InternalTestCluster.NodeAndClient> predicate; if (node != null) { predicate = new Predicate<InternalTestCluster.NodeAndClient>() { public boolean apply(NodeAndClient nodeAndClient) { return node.equals(nodeAndClient.name); } }; } else { predicate = Predicates.alwaysTrue(); } return getInstance(clazz, predicate); }