Example usage for com.google.common.collect ImmutableList builder

List of usage examples for com.google.common.collect ImmutableList builder

Introduction

In this page you can find the example usage for com.google.common.collect ImmutableList builder.

Prototype

public static <E> Builder<E> builder() 

Source Link

Usage

From source file:com.spectralogic.ds3client.helpers.strategy.transferstrategy.RangeHelper.java

protected static ImmutableCollection<Range> replaceRange(final ImmutableCollection<Range> existingRanges,
        final long numBytesTransferred, final long intendedNumBytesToTransfer) {
    Preconditions.checkState(numBytesTransferred >= 0, "numBytesTransferred must be >= 0.");
    Preconditions.checkState(intendedNumBytesToTransfer > 0, "intendedNumBytesToTransfer must be > 0.");
    Preconditions.checkState(intendedNumBytesToTransfer > numBytesTransferred,
            "intendedNumBytesToTransfer must be > numBytesTransferred");

    if (Guard.isNullOrEmpty(existingRanges)) {
        return ImmutableList
                .of(Range.byLength(numBytesTransferred, intendedNumBytesToTransfer - numBytesTransferred));
    }//from   w  w w.  j  a  v a  2s  .  co m

    final ImmutableList.Builder<Range> newRangesbuilder = ImmutableList.builder();

    final UnmodifiableIterator<Range> existingRangesIterator = existingRanges.iterator();

    long previousAccumulatedBytesInRanges = 0;
    long currentAccumulatedBytesInRanges = existingRanges.iterator().next().getLength();

    while (existingRangesIterator.hasNext()) {
        final Range existingRange = existingRangesIterator.next();

        if (numBytesTransferred < currentAccumulatedBytesInRanges) {
            final Range firstNewRange = Range.byPosition(
                    existingRange.getStart() - previousAccumulatedBytesInRanges + numBytesTransferred,
                    existingRange.getEnd());
            newRangesbuilder.add(firstNewRange);

            addRemainingRanges(existingRangesIterator, newRangesbuilder);
            break;
        }

        previousAccumulatedBytesInRanges += existingRange.getLength();
        currentAccumulatedBytesInRanges += existingRange.getLength();
    }

    return newRangesbuilder.build();
}

From source file:com.google.devtools.build.android.SerializedAndroidData.java

protected static ImmutableList<Path> splitPaths(String pathsString, FileSystem fileSystem) {
    if (pathsString.trim().isEmpty()) {
        return ImmutableList.of();
    }//from www.  j  a  v  a  2 s .  co m
    ImmutableList.Builder<Path> paths = new ImmutableList.Builder<>();
    for (String pathString : pathsString.split("#")) {
        Preconditions.checkArgument(!pathString.trim().isEmpty());
        paths.add(exists(fileSystem.getPath(pathString)));
    }
    return paths.build();
}

From source file:blusunrize.immersiveengineering.common.util.compat.jei.IEGhostItemHandler.java

@Override
public <I> List<Target<I>> getTargets(GuiIEContainerBase gui, I ingredient, boolean doStart) {
    if (ingredient instanceof ItemStack) {
        ImmutableList.Builder<Target<I>> builder = ImmutableList.builder();
        for (Slot s : gui.inventorySlots.inventorySlots)
            if (s instanceof Ghost)
                builder.add((Target<I>) new GhostSlotTarget((Ghost) s, gui));
        return builder.build();
    }//from   www . j  a  v  a 2 s  .co m
    return ImmutableList.of();
}

From source file:com.teradata.tpcds.distribution.ItemCurrentPriceDistribution.java

private static ItemCurrentPriceDistribution buildICurrentPriceDistribution() {
    ImmutableList.Builder<Decimal> minsBuilder = ImmutableList.builder();
    ImmutableList.Builder<Decimal> maxesBuilder = ImmutableList.builder();

    List<WeightsBuilder> weightsBuilders = new ArrayList<>(NUM_WEIGHT_FIELDS);
    for (int i = 0; i < NUM_WEIGHT_FIELDS; i++) {
        weightsBuilders.add(new WeightsBuilder());
    }/*from www  .  j a  v  a 2  s. c  o  m*/

    Iterator<List<String>> iterator = getDistributionIterator(VALUES_AND_WEIGHTS_FILENAME);
    while (iterator.hasNext()) {
        List<String> fields = iterator.next();
        checkState(fields.size() == 2, "Expected line to contain 2 parts but it contains %s: %s", fields.size(),
                fields);

        List<String> values = getListFromCommaSeparatedValues(fields.get(0));
        checkState(values.size() == NUM_VALUE_FIELDS,
                "Expected line to contain %s values, but it contained %s, %s", NUM_VALUE_FIELDS, values.size(),
                values);

        // indices are never used
        minsBuilder.add(parseDecimal(values.get(1)));
        maxesBuilder.add(parseDecimal(values.get(2)));

        List<String> weights = getListFromCommaSeparatedValues(fields.get(1));
        checkState(weights.size() == NUM_WEIGHT_FIELDS,
                "Expected line to contain %s weights, but it contained %s, %s", NUM_WEIGHT_FIELDS,
                weights.size(), weights);
        for (int i = 0; i < weights.size(); i++) {
            weightsBuilders.get(i).computeAndAddNextWeight(parseInt(weights.get(i)));
        }
    }

    ImmutableList.Builder<ImmutableList<Integer>> weightsListBuilder = ImmutableList
            .<ImmutableList<Integer>>builder();
    for (WeightsBuilder weightsBuilder : weightsBuilders) {
        weightsListBuilder.add(weightsBuilder.build());
    }

    return new ItemCurrentPriceDistribution(minsBuilder.build(), maxesBuilder.build(),
            weightsListBuilder.build());
}

From source file:ru.org.linux.site.Tags.java

public static ImmutableList<String> getMessageTags(Connection con, int msgid) throws SQLException {
    ImmutableList.Builder<String> tags = ImmutableList.builder();

    PreparedStatement st = con.prepareStatement(
            "SELECT tags_values.value FROM tags, tags_values WHERE tags.msgid=? AND tags_values.id=tags.tagid ORDER BY value");
    st.setInt(1, msgid);//w  w  w .  j a  v a2 s.  c  o m

    ResultSet rs = st.executeQuery();

    while (rs.next()) {
        tags.add(rs.getString("value"));
    }

    st.close();

    return tags.build();
}

From source file:org.sonar.plugins.crowd.CrowdPlugin.java

@Override
public List<Class<? extends Extension>> getExtensions() {
    Builder<Class<? extends Extension>> builder = ImmutableList.builder();

    builder.add(CrowdRealm.class);
    builder.add(CrowdConfiguration.class);

    return builder.build();
}

From source file:com.netflix.exhibitor.core.analyze.Analysis.java

Analysis(String error, Collection<PathComplete> completeData, List<Set<String>> possibleCycles) {
    this.error = error;
    this.completeData = ImmutableList.copyOf(completeData);

    ImmutableList.Builder<Set<String>> builder = ImmutableList.builder();
    for (Set<String> pc : possibleCycles) {
        builder.add(ImmutableSet.copyOf(pc));
    }//from  w ww . ja va2 s  . co m
    this.possibleCycles = builder.build();
}

From source file:com.google.firebase.auth.UserImportResult.java

UserImportResult(int users, UploadAccountResponse response) {
    ImmutableList.Builder<ErrorInfo> errorsBuilder = ImmutableList.builder();
    List<UploadAccountResponse.ErrorInfo> errors = response.getErrors();
    if (errors != null) {
        checkArgument(users >= errors.size());
        for (UploadAccountResponse.ErrorInfo error : errors) {
            errorsBuilder.add(new ErrorInfo(error.getIndex(), error.getMessage()));
        }//from  w w w.j a  v  a  2  s  .c  o  m
    }
    this.users = users;
    this.errors = errorsBuilder.build();
}

From source file:com.facebook.presto.sql.parser.TreePrinter.java

private static List<Tree> children(Tree tree) {
    ImmutableList.Builder<Tree> list = ImmutableList.builder();
    for (int i = 0; i < tree.getChildCount(); i++) {
        list.add(tree.getChild(i));/*  ww w. j  a va 2s  .c o  m*/
    }
    return list.build();
}

From source file:com.google.javascript.jscomp.PolymerPassFindExterns.java

PolymerPassFindExterns() {
    polymerElementProps = ImmutableList.builder();
}