@Override public Set<? extends NodeMetadata> listDetailsOnNodesMatching(Predicate<ComputeMetadata> filter) { Iterable<? extends RunningInstance> instances = pollRunningInstances(); Iterable<? extends NodeMetadata> nodes = filter(transform(filter(instances, notNull()), runningInstanceToNodeMetadata), and(notNull(), filter)); return ImmutableSet.copyOf(nodes); }
@Override public Set<? extends NodeMetadata> listNodesByIds(Iterable<String> ids) { Multimap<String, String> idsByHandles = index(ids, splitHandle(1)); Multimap<String, String> idsByRegions = transformValues(idsByHandles, splitHandle(0)); Multimap<String, String> idsByConfiguredRegions = filterKeys(idsByRegions, in(regions.get())); if (idsByConfiguredRegions.isEmpty()) { return ImmutableSet.of(); } Iterable<? extends RunningInstance> instances = pollRunningInstancesByRegionsAndIds(idsByConfiguredRegions); Iterable<? extends NodeMetadata> nodes = transform(filter(instances, notNull()), runningInstanceToNodeMetadata); return ImmutableSet.copyOf(nodes); }
protected Iterable<? extends RunningInstance> pollRunningInstances() { Iterable<? extends Set<? extends Reservation<? extends RunningInstance>>> reservations = transform(regions.get(), allInstancesInRegion()); return concat(concat(reservations)); }
@Override protected Iterable<? extends RunningInstance> pollRunningInstancesByRegionsAndIds(final Multimap<String, String> idsByRegions) { Iterable<? extends AWSRunningInstance> spots = filter(transform(concat(transform(idsByRegions.keySet(), spotInstancesByIdInRegion(idsByRegions))), spotConverter), notNull()); Iterable<? extends RunningInstance> superInsts = super.pollRunningInstancesByRegionsAndIds(idsByRegions); return concat(superInsts, spots); }
protected Iterable<? extends RunningInstance> pollRunningInstancesByRegionsAndIds(final Multimap<String,String> idsByRegions) { Iterable<? extends Set<? extends Reservation<? extends RunningInstance>>> reservations = transform(idsByRegions.keySet(), instancesByIdInRegion(idsByRegions)); return concat(concat(reservations)); }
@Override public Set<? extends ComputeMetadata> listNodes() { return listDetailsOnNodesMatching(NodePredicates.all()); }
@Override protected Iterable<? extends RunningInstance> pollRunningInstancesByRegionsAndIds(final Multimap<String, String> idsByRegions) { Iterable<? extends AWSRunningInstance> spots = filter(transform(concat(transform(idsByRegions.keySet(), spotInstancesByIdInRegion(idsByRegions))), spotConverter), notNull()); Iterable<? extends RunningInstance> superInsts = super.pollRunningInstancesByRegionsAndIds(idsByRegions); return concat(superInsts, spots); }
protected Iterable<? extends RunningInstance> pollRunningInstancesByRegionsAndIds(final Multimap<String,String> idsByRegions) { Iterable<? extends Set<? extends Reservation<? extends RunningInstance>>> reservations = transform(idsByRegions.keySet(), instancesByIdInRegion(idsByRegions)); return concat(concat(reservations)); }
@Override public Set<? extends ComputeMetadata> listNodes() { return listDetailsOnNodesMatching(NodePredicates.all()); }
@Override public Set<? extends NodeMetadata> listNodesByIds(Iterable<String> ids) { Multimap<String, String> idsByHandles = index(ids, splitHandle(1)); Multimap<String, String> idsByRegions = transformValues(idsByHandles, splitHandle(0)); Multimap<String, String> idsByConfiguredRegions = filterKeys(idsByRegions, in(regions.get())); if (idsByConfiguredRegions.isEmpty()) { return ImmutableSet.of(); } Iterable<? extends RunningInstance> instances = pollRunningInstancesByRegionsAndIds(idsByConfiguredRegions); Iterable<? extends NodeMetadata> nodes = transform(filter(instances, notNull()), runningInstanceToNodeMetadata); return ImmutableSet.copyOf(nodes); }
@Override public Set<? extends NodeMetadata> listDetailsOnNodesMatching(Predicate<? super NodeMetadata> filter) { Iterable<? extends RunningInstance> instances = pollRunningInstances(); Iterable<? extends NodeMetadata> nodes = filter(transform(filter(instances, notNull()), runningInstanceToNodeMetadata), and(notNull(), filter)); return ImmutableSet.copyOf(nodes); }
@Override protected Iterable<? extends RunningInstance> pollRunningInstancesByRegionsAndIds(final Multimap<String,String> idsByRegions) { Iterable<? extends AWSRunningInstance> spots = filter(transform(concat(transform(idsByRegions.keySet(), spotInstancesByIdInRegion(idsByRegions))), spotConverter), notNull()); Iterable<? extends RunningInstance> superInsts = super.pollRunningInstancesByRegionsAndIds(idsByRegions); return concat(superInsts, spots); }
protected Iterable<? extends RunningInstance> pollRunningInstances() { Iterable<? extends Set<? extends Reservation<? extends RunningInstance>>> reservations = transform(regions.get(), allInstancesInRegion()); return concat(concat(reservations)); }
protected Iterable<? extends RunningInstance> pollRunningInstancesByRegionsAndIds(final Multimap<String, String> idsByRegions) { Iterable<? extends Set<? extends Reservation<? extends RunningInstance>>> reservations = transform(idsByRegions.keySet(), instancesByIdInRegion(idsByRegions)); return concat(concat(reservations)); }
@Override public Set<? extends ComputeMetadata> listNodes() { return listDetailsOnNodesMatching(NodePredicates.all()); }
@Override public Set<? extends NodeMetadata> listNodesByIds(Iterable<String> ids) { Multimap<String, String> idsByHandles = index(ids, splitHandle(1)); Multimap<String, String> idsByRegions = transformValues(idsByHandles, splitHandle(0)); Multimap<String, String> idsByConfiguredRegions = filterKeys(idsByRegions, in(regions.get())); if (idsByConfiguredRegions.isEmpty()) { return ImmutableSet.of(); } Iterable<? extends RunningInstance> instances = pollRunningInstancesByRegionsAndIds(idsByConfiguredRegions); Iterable<? extends NodeMetadata> nodes = transform(filter(instances, notNull()), runningInstanceToNodeMetadata); return ImmutableSet.copyOf(nodes); }
@Override public Set<? extends NodeMetadata> listDetailsOnNodesMatching(Predicate<ComputeMetadata> filter) { Iterable<? extends RunningInstance> instances = pollRunningInstances(); Iterable<? extends NodeMetadata> nodes = filter(transform(filter(instances, notNull()), runningInstanceToNodeMetadata), and(notNull(), filter)); return ImmutableSet.copyOf(nodes); }
protected Iterable<? extends RunningInstance> pollRunningInstances() { Iterable<? extends Set<? extends Reservation<? extends RunningInstance>>> reservations = transform(regions.get(), allInstancesInRegion()); return concat(concat(reservations)); }
protected Iterable<? extends RunningInstance> pollRunningInstancesByRegionsAndIds(final Multimap<String, String> idsByRegions) { Iterable<? extends Set<? extends Reservation<? extends RunningInstance>>> reservations = transform(idsByRegions.keySet(), instancesByIdInRegion(idsByRegions)); return concat(concat(reservations)); }
@Override public Set<? extends ComputeMetadata> listNodes() { return listDetailsOnNodesMatching(NodePredicates.all()); }