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:org.eclipse.buildship.ui.launch.JavaElementResolver.java

/**
 * Resolves the items returned by {@link #findJavaElements()} to {@link IMethod} instances.
 * <p/>/*  w  w w .  j a  v  a2s  .  co  m*/
 * If an item can't be resolved then it is skipped from from the result list.
 *
 * @return the resolved {@link IMethod} instances
 */
public final List<IMethod> resolveMethods() {
    ImmutableList.Builder<IMethod> result = ImmutableList.builder();
    for (IJavaElement javaElement : findJavaElements()) {
        Optional<IMethod> method = resolveMethod(javaElement);
        if (method.isPresent()) {
            result.add(method.get());
        }
    }
    return result.build();
}

From source file:google.registry.mapreduce.inputs.EppResourceBaseInput.java

@Override
public List<InputReader<I>> createReaders() {
    ImmutableList.Builder<InputReader<I>> readers = new ImmutableList.Builder<>();
    for (Key<EppResourceIndexBucket> bucketKey : EppResourceIndexBucket.getAllBuckets()) {
        readers.add(bucketToReader(bucketKey));
    }//from   www . j ava  2s  . c  o  m
    return readers.build();
}

From source file:com.google.api.tools.framework.model.FieldSelector.java

/**
 * Construct a field selector by resolving a field path (as in 'a.b.c') against a message. Returns
 * null if resolution fails.//  www.  j a  v  a2s.c o m
 */
public static FieldSelector resolve(MessageType message, String fieldPath) {
    Iterator<String> path = FIELD_PATH_SPLITTER.split(fieldPath).iterator();
    ImmutableList.Builder<Field> fieldsBuilder = ImmutableList.builder();

    MessageType currMessage = message;
    while (path.hasNext()) {
        String fieldName = path.next();
        Field field = currMessage.lookupField(fieldName);
        if (field == null) {
            return null;
        }
        fieldsBuilder.add(field);
        if (path.hasNext()) {
            if (!field.getType().isMessage()) {
                return null;
            }
            currMessage = field.getType().getMessageType();
        }
    }

    return new FieldSelector(fieldsBuilder.build());
}

From source file:com.google.devtools.build.lib.rules.objc.OnlyNeedsSourcesRuleType.java

@Override
Iterable<String> requiredAttributes(Scratch scratch, String packageDir, Set<String> alreadyAdded)
        throws IOException {
    ImmutableList.Builder<String> attributes = new ImmutableList.Builder<>();
    if (!alreadyAdded.contains("srcs") && !alreadyAdded.contains("non_arc_srcs")) {
        scratch.file(packageDir + "/a.m");
        scratch.file(packageDir + "/private.h");
        attributes.add("srcs = ['a.m', 'private.h']");
    }/*from   www .j  av  a 2  s .  c  o  m*/
    return attributes.build();
}

From source file:com.facebook.buck.android.ClassNameFilter.java

/**
 * Convenience factory to produce a filter from a very simple pattern language.
 *
 * <p>patterns are substrings by default, but {@code ^} at the start or end of a pattern
 * anchors it to the start or end of the class name.
 *
 * @param patterns  Patterns to include in the filter.
 * @return  A new filter.//w  ww . java  2 s .  c o m
 */
public static ClassNameFilter fromConfiguration(Iterable<String> patterns) {
    ImmutableList.Builder<String> prefixes = ImmutableList.builder();
    ImmutableList.Builder<String> suffixes = ImmutableList.builder();
    ImmutableList.Builder<String> substrings = ImmutableList.builder();
    ImmutableSet.Builder<String> exactMatches = ImmutableSet.builder();

    for (String pattern : patterns) {
        boolean isPrefix = pattern.charAt(0) == '^';
        boolean isSuffix = pattern.charAt(pattern.length() - 1) == '^';
        if (isPrefix && isSuffix) {
            exactMatches.add(pattern.substring(1, pattern.length() - 1));
        } else if (isPrefix) {
            prefixes.add(pattern.substring(1));
        } else if (isSuffix) {
            suffixes.add(pattern.substring(0, pattern.length() - 1));
        } else {
            substrings.add(pattern);
        }
    }

    return new ClassNameFilter(prefixes.build(), suffixes.build(), substrings.build(), exactMatches.build());
}

From source file:com.tibco.businessworks6.sonar.plugin.colorizer.BusinessWorksProcessColorizerFormat.java

@Override
public List<Tokenizer> getTokenizers() {
    ImmutableList.Builder<Tokenizer> builder = ImmutableList.builder();

    //builder.addAll(XmlColorizer.createTokenizers());
    /*builder.add(new CDataDocTokenizer(span("k"), END_TAG));
    builder.add(new RegexpTokenizer(span("j"), END_TAG, "<!DOCTYPE.*>"));
    builder.add(new MultilinesDocTokenizer("<!--", "-->", span("j"),
    END_TAG));/*from w w  w .  jav a2  s .com*/
    builder.add(new MultilinesDocTokenizer("</", ">", span("k"), END_TAG));
    builder.add(new CustomXmlStartElementTokenizer(span("k"), END_TAG, span("c"),
    END_TAG, span("s"), END_TAG));*/
    return builder.build();
}

From source file:com.facebook.buck.intellij.ideabuck.ui.utils.ErrorExtractor.java

public ErrorExtractor(String errorMessage) {
    Matcher matcher = MAIN_PATTERN.matcher(errorMessage);
    ImmutableList.Builder<CompilerErrorItem> builder = new ImmutableList.Builder<CompilerErrorItem>();

    CompilerErrorItem currentError = null;
    int lastMatchEnd = -1;

    while (matcher.find()) {
        if (currentError != null) {
            // add the last one
            String currentErrorMessage = errorMessage.substring(lastMatchEnd, matcher.start()).trim();
            currentError.setError(currentErrorMessage);
            currentError.setColumn(findColumn(currentErrorMessage));
            builder.add(currentError);/*from   w w  w . j  a va 2 s.com*/
        }
        currentError = new CompilerErrorItem(matcher.group(1), Integer.parseInt(matcher.group(2)),
                matcher.group(3).equalsIgnoreCase("error") ? CompilerErrorItem.Type.ERROR
                        : CompilerErrorItem.Type.WARNING);
        lastMatchEnd = matcher.end();
    }
    if (currentError != null) {
        Matcher matchEnd = EOM_PATTERN.matcher(errorMessage);
        String currentErrorMessage = "";

        if (matchEnd.find(lastMatchEnd)) {
            // Add the rest
            currentErrorMessage = errorMessage.substring(lastMatchEnd, matchEnd.start()).trim();
        } else {
            // Not found the end, add everything as an error message.
            currentErrorMessage = errorMessage.substring(lastMatchEnd).trim();
        }
        currentError.setError(currentErrorMessage);
        currentError.setColumn(findColumn(currentErrorMessage));
        builder.add(currentError);
    }
    mErrors = builder.build();
}

From source file:com.spectralogic.ds3autogen.utils.ArgumentsUtil.java

/**
 * Changes the type of all arguments with the specified type
 *///  w w w  .j  ava2 s.co  m
public static ImmutableList<Arguments> modifyType(final ImmutableList<Arguments> args, final String curType,
        final String newType) {
    if (isEmpty(args)) {
        return ImmutableList.of();
    }
    final ImmutableList.Builder<Arguments> builder = ImmutableList.builder();
    for (final Arguments arg : args) {
        if (arg.getType().equals(curType)) {
            builder.add(new Arguments(newType, arg.getName()));
        } else {
            builder.add(arg);
        }
    }
    return builder.build();
}

From source file:com.facebook.presto.execution.SimpleDomain.java

private static List<SimpleRange> getSimpleRangeList(Domain domain) {
    checkNotNull(domain, "domain is null");
    if (domain.isAll()) {
        return null;
    }/* ww  w.ja v a  2s  . co m*/
    if (domain.isNone()) {
        return ImmutableList.<SimpleRange>of();
    }
    ImmutableList.Builder<SimpleRange> rangeBuilder = ImmutableList.builder();
    for (Range range : domain.getRanges()) {
        rangeBuilder.add(SimpleRange.fromRange(range));
    }
    return rangeBuilder.build();
}

From source file:org.apache.beam.sdk.values.RowType.java

private static RowType fromFields(List<Field> fields) {
    ImmutableList.Builder<String> names = ImmutableList.builder();
    ImmutableList.Builder<Coder> coders = ImmutableList.builder();

    for (Field field : fields) {
        names.add(field.name());/*from   w  w  w. j a  v a  2s  . c  o m*/
        coders.add(field.coder());
    }

    return fromNamesAndCoders(names.build(), coders.build());
}