Example usage for com.google.common.collect Iterables size

List of usage examples for com.google.common.collect Iterables size

Introduction

In this page you can find the example usage for com.google.common.collect Iterables size.

Prototype

public static int size(Iterable<?> iterable) 

Source Link

Document

Returns the number of elements in iterable .

Usage

From source file:org.apache.giraph.graph.AddressesAndPartitionsWritable.java

/**
 * Convert Iterable of WorkerInfos to the map from task id to WorkerInfo.
 *
 * @param workerInfos Iterable of WorkerInfos
 * @return The map from task id to WorkerInfo
 *///w w w  .  j a  v  a 2s.  co  m
private static Map<Integer, WorkerInfo> getAsWorkerInfoMap(Iterable<WorkerInfo> workerInfos) {
    Map<Integer, WorkerInfo> workerInfoMap = Maps.newHashMapWithExpectedSize(Iterables.size(workerInfos));
    for (WorkerInfo workerInfo : workerInfos) {
        workerInfoMap.put(workerInfo.getTaskId(), workerInfo);
    }
    return workerInfoMap;
}

From source file:com.medvision360.medrecord.basex.BaseXLocatableStore.java

@Override
public Iterable<HierObjectID> list(EHR EHR) throws IOException, NotFoundException {
    checkNotNull(EHR, "EHR cannot be null");
    // this works because ListDocs looks for all leaf nodes under a certain path
    String path = fullPath(EHR);//from   w  w  w  . j  ava 2 s .  c o m
    Iterable<HierObjectID> result = list(path);
    if (Iterables.size(result) == 0) {
        throw new NotFoundException(String.format("EHR %s not found", EHR.getEhrID()));
    }
    return result;
}

From source file:org.eclipse.xtext.graphview.behavior.visibility.RevealEditPolicy.java

protected void showFeedback(RevealRequest revealRequest, RevealedEditPartMap revealedEditPartMap) {
    Iterable<IInstanceModelEditPart> layoutables = revealedEditPartMap.getLayoutables();
    if (!Iterables.isEmpty(layoutables)) {
        double angle = revealRequest.getMouseAngle();
        int numElements = Iterables.size(layoutables);
        double deltaAngle = 2 * Math.PI / numElements;
        IFigure hostFigure = ((GraphicalEditPart) getHost()).getFigure();
        Point center = hostFigure.getBounds().getCenter();
        if (hostFigure.getParent() != null)
            hostFigure.getParent().translateToAbsolute(center);
        double centerDist = revealRequest.getMouseDistance();
        for (IInstanceModelEditPart layoutable : layoutables) {
            if (!revealRequest.isSelected(layoutable)) {
                IFigure figure = layoutable.getFigure();
                Point newCenter = new Point(center);
                Dimension figureSize = figure.getSize();
                newCenter.translate((int) (Math.cos(angle) * centerDist), (int) (Math.sin(angle) * centerDist));
                newCenter.translate(-figureSize.width / 2, -figureSize.height / 2);
                if (figure.getParent() != null) {
                    figure.getParent().translateToRelative(newCenter);
                }//from   ww w  .java  2  s . c  om
                figure.setBounds(new Rectangle(newCenter.x, newCenter.y, figureSize.width, figureSize.height));
            }
            angle += deltaAngle;
        }
        for (IInstanceModelEditPart layoutable : layoutables) {
            boolean isSelected = revealRequest.isSelected(layoutable);
            layoutable.setTransparent(!isSelected);
            for (IInstanceModelEditPart secondary : revealedEditPartMap.getSecondaries(layoutable))
                secondary.setTransparent(!isSelected);
        }
    }
}

From source file:org.onosproject.mapping.impl.DistributedMappingStore.java

@Override
public int getMappingCount(Type type) {
    AtomicInteger sum = new AtomicInteger(0);
    deviceService.getDevices()/*from   w w  w .  ja va  2  s . co  m*/
            .forEach(device -> sum.addAndGet(Iterables.size(getMappingEntries(type, device.id()))));
    return sum.get();
}

From source file:de.cau.cs.kieler.klay.layered.p5edges.splines.SplinesMath.java

/**
 * Converts all given KVectors to a readable string with rounded results.
 * //from   ww  w  .  ja  v a 2  s. c  om
 * @param list
 *            The list of KVectors to create the string for.
 * @return The readable string.
 */
public static String convertKVectorToString(final Iterable<KVector> list) {
    if ((list == null) || (Iterables.size(list) == 0)) {
        return NULL_STRING;
    }
    final StringBuilder retVal = new StringBuilder();

    for (final KVector vector : list) {
        retVal.append(convertKVectorToString(vector)).append(", ");
    }

    return retVal.substring(0, retVal.length() - 2);
}

From source file:org.apache.bookkeeper.bookie.storage.ldb.EntryLocationIndex.java

public void updateLocations(Iterable<EntryLocation> newLocations) throws IOException {
    if (log.isDebugEnabled()) {
        log.debug("Update locations -- {}", Iterables.size(newLocations));
    }/*w  w w.  java 2  s . c om*/

    Batch batch = newBatch();
    // Update all the ledger index pages with the new locations
    for (EntryLocation e : newLocations) {
        if (log.isDebugEnabled()) {
            log.debug("Update location - ledger: {} -- entry: {}", e.ledger, e.entry);
        }

        addLocation(batch, e.ledger, e.entry, e.location);
    }

    batch.flush();
    batch.close();
}

From source file:brooklyn.event.basic.PortAttributeSensorAndConfigKey.java

@Override
protected Integer convertConfigToSensor(PortRange value, Entity entity) {
    if (value == null)
        return null;
    Collection<? extends Location> locations = entity.getLocations();
    if (!locations.isEmpty()) {
        Maybe<? extends Location> lo = Locations.findUniqueMachineLocation(locations);
        if (!lo.isPresent()) {
            // Try a unique location which isn't a machine provisioner
            Iterator<? extends Location> li = Iterables
                    .filter(locations, Predicates.not(Predicates.instanceOf(MachineProvisioningLocation.class)))
                    .iterator();/*from   w  ww. j a v a2s.  c  om*/
            if (li.hasNext())
                lo = Maybe.of(li.next());
            if (li.hasNext())
                lo = Maybe.absent();
        }
        // Fall back to selecting the single location
        if (!lo.isPresent() && locations.size() == 1) {
            lo = Maybe.of(locations.iterator().next());
        }
        if (LOG.isTraceEnabled()) {
            LOG.trace("Convert config to sensor for {} found locations: {}. Selected: {}",
                    new Object[] { entity, locations, lo });
        }
        if (lo.isPresent()) {
            Location l = lo.get();
            Optional<Boolean> locationRunning = Optional
                    .fromNullable(l.getConfig(BrooklynConfigKeys.SKIP_ENTITY_START_IF_RUNNING));
            Optional<Boolean> entityRunning = Optional
                    .fromNullable(entity.getConfig(BrooklynConfigKeys.SKIP_ENTITY_START_IF_RUNNING));
            Optional<Boolean> locationInstalled = Optional
                    .fromNullable(l.getConfig(BrooklynConfigKeys.SKIP_ENTITY_INSTALLATION));
            Optional<Boolean> entityInstalled = Optional
                    .fromNullable(entity.getConfig(BrooklynConfigKeys.SKIP_ENTITY_INSTALLATION));
            Optional<Boolean> entityStarted = Optional
                    .fromNullable(entity.getConfig(BrooklynConfigKeys.SKIP_ENTITY_START));
            boolean skipCheck = locationRunning.or(entityRunning).or(locationInstalled).or(entityInstalled)
                    .or(entityStarted).or(false);
            if (l instanceof PortSupplier) {
                int p = ((PortSupplier) l).obtainPort(value);
                if (p != -1) {
                    LOG.debug("{}: choosing port {} for {}", new Object[] { entity, p, getName() });
                    return p;
                }
                // If we are not skipping install or already started, fail now
                if (!skipCheck) {
                    int rangeSize = Iterables.size(value);
                    if (rangeSize == 0) {
                        LOG.warn("{}: no port available for {} (empty range {})",
                                new Object[] { entity, getName(), value });
                    } else if (rangeSize == 1) {
                        Integer pp = value.iterator().next();
                        if (pp > 1024) {
                            LOG.warn("{}: port {} not available for {}",
                                    new Object[] { entity, pp, getName() });
                        } else {
                            LOG.warn("{}: port {} not available for {} (root may be required?)",
                                    new Object[] { entity, pp, getName() });
                        }
                    } else {
                        LOG.warn("{}: no port available for {} (tried range {})",
                                new Object[] { entity, getName(), value });
                    }
                    return null; // Definitively, no ports available
                }
            }
            // Ports may be available, we just can't tell from the location
            Integer v = (value.isEmpty() ? null : value.iterator().next());
            LOG.debug("{}: choosing port {} (unconfirmed) for {}", new Object[] { entity, v, getName() });
            return v;
        } else {
            LOG.warn(
                    "{}: ports not applicable, or not yet applicable, because has multiple locations {}; ignoring ",
                    new Object[] { entity, locations, getName() });
        }
    } else {
        LOG.warn("{}: ports not applicable, or not yet applicable, bacause has no locations; ignoring {}",
                entity, getName());
    }
    return null;
}

From source file:eu.numberfour.n4js.scoping.utils.ProjectImportEnablingScope.java

@Override
public IEObjectDescription getSingleElement(QualifiedName name) {
    final Iterable<IEObjectDescription> result = getElements(name);
    int size = Iterables.size(result);
    if (size == 1) {
        return result.iterator().next();
    }/*  w  w w .  j  a  v  a  2 s .com*/

    // Special case handling when we have a definition and a pure JS file in the score.
    // In such cases we return with the description that corresponds to the definition file.
    if (size == 2) {

        final IEObjectDescription first = Iterables.get(result, 0);
        final IEObjectDescription second = Iterables.get(result, 1);

        final String firstExtension = first.getEObjectURI().fileExtension();
        final String secondExtension = second.getEObjectURI().fileExtension();

        if (JS_FILE_EXTENSION.equals(firstExtension) && N4JSD_FILE_EXTENSION.equals(secondExtension)) {
            return second;
        }

        if (N4JSD_FILE_EXTENSION.equals(firstExtension) && JS_FILE_EXTENSION.equals(secondExtension)) {
            return first;
        }

    }

    // handle error cases to help user fix the issue
    StringBuilder sbErrrorMessage = new StringBuilder("Cannot resolve import target ::");

    ImportType importType = computeImportType(name, this.contextProject);
    switch (importType) {
    case PROJECT_IMPORT:
        sbErrrorMessage.append(" resolving project import :");
        break;
    case COMPLETE_IMPORT:
        sbErrrorMessage.append(" resolving full module import :");
        break;
    case SIMPLE_IMPORT:
        sbErrrorMessage.append(" resolving simple module import :");
        break;
    case PROJECT_IMPORT_NO_MAIN:
        sbErrrorMessage.append(" no main module in target project");
        break;
    default:
        sbErrrorMessage.append(" unrecognized import structure :");
        break;
    }

    if (!importType.equals(ImportType.PROJECT_IMPORT_NO_MAIN)) {
        if (size == 0) {
            sbErrrorMessage.append(" found no matching modules");
        } else {
            sbErrrorMessage.append(" found multiple matching modules ");
            sbErrrorMessage.append(IterableExtensions.join(result, ","));
        }
    }

    return new InvalidImportTargetModuleDescription(
            EObjectDescription.create("impDecl", this.importDeclaration), sbErrrorMessage.toString(),
            IssueCodes.IMP_UNRESOLVED);

}

From source file:com.google.devtools.build.lib.query2.DepsUnboundedVisitor.java

private void checkIfMissingTargets(Iterable<SkyKey> keys, Map<SkyKey, Iterable<SkyKey>> depMap) {
    if (depMap.size() != Iterables.size(keys)) {
        Iterable<Label> missingTargets = Iterables.transform(
                Iterables.filter(keys, Predicates.not(Predicates.in(depMap.keySet()))), SKYKEY_TO_LABEL);
        env.getEventHandler().handle(Event.warn("Targets were missing from graph: " + missingTargets));
    }/*from   w w w  . j  a v  a  2s  .c o m*/
}

From source file:com.google.template.soy.jbcsrc.restricted.Expression.java

/** Checks that the given expressions are compatible with the given types. */
static void checkTypes(ImmutableList<Type> types, Iterable<? extends Expression> exprs) {
    if (Flags.DEBUG) {
        int size = Iterables.size(exprs);
        checkArgument(size == types.size(), "Supplied the wrong number of parameters. Expected %s, got %s",
                types.size(), size);//from   www  .ja va  2  s  . c  om
        int i = 0;
        for (Expression expr : exprs) {
            expr.checkAssignableTo(types.get(i), "Parameter %s", i);
            i++;
        }
    }
}