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

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

Introduction

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

Prototype

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

Source Link

Usage

From source file:com.spotify.heroic.metric.ShardedResultGroup.java

public static MultiSummary summarize(List<ShardedResultGroup> resultGroups) {
    final ImmutableSet.Builder<Map<String, String>> shardSummary = ImmutableSet.builder();
    final Histogram.Builder keySize = Histogram.builder();
    final SeriesSetsSummarizer seriesSummarizer = new SeriesSetsSummarizer();
    final Histogram.Builder dataSize = Histogram.builder();
    Optional<Long> cadence = Optional.empty();

    for (ShardedResultGroup rg : resultGroups) {
        shardSummary.add(rg.getShard());
        keySize.add(rg.getKey().size());
        seriesSummarizer.add(rg.getSeries());
        dataSize.add(rg.getMetrics().size());
        cadence = Optional.of(rg.getCadence());
    }//from w  ww . j av  a 2s  .c o m

    return new MultiSummary(shardSummary.build(), keySize.build(), seriesSummarizer.end(), dataSize.build(),
            cadence);
}

From source file:org.sosy_lab.cpachecker.cfa.blocks.BlockPartitioning.java

public BlockPartitioning(Collection<Block> subtrees, CFANode mainFunction) {
    Block mainBlock = null;/*  www  . jav  a  2s  .  c  o  m*/
    final ImmutableMap.Builder<CFANode, Block> callNodeToSubtree = new ImmutableMap.Builder<>();
    final ImmutableMap.Builder<CFANode, Block> returnNodeToBlock = new ImmutableMap.Builder<>();
    final ImmutableSet.Builder<Block> blocks = new ImmutableSet.Builder<>();

    // this set is needed for special cases, when different blocks have the same returnNode.
    // TODO can we avoid this?
    final Set<CFANode> returnNodes = new HashSet<>();

    for (Block subtree : subtrees) {
        blocks.add(subtree);
        for (CFANode callNode : subtree.getCallNodes()) {
            if (callNode instanceof FunctionEntryNode
                    && callNode.getFunctionName().equalsIgnoreCase(mainFunction.getFunctionName())) {
                assert mainBlock == null;
                mainBlock = subtree;
            }
            callNodeToSubtree.put(callNode, subtree);
        }

        for (CFANode returnNode : subtree.getReturnNodes()) {
            if (returnNodes.add(returnNode)) {
                returnNodeToBlock.put(returnNode, subtree);
            }
        }
    }

    assert mainBlock != null;
    this.mainBlock = mainBlock;

    this.callNodeToBlock = callNodeToSubtree.build();
    this.returnNodeToBlock = returnNodeToBlock.build();
    this.blocks = blocks.build();
}

From source file:org.gradle.initialization.GradleApiSpecAggregator.java

private Spec mergeSpecsOf(List<Class<? extends GradleApiSpecProvider>> providers) {
    final ImmutableSet.Builder<String> exportedPackages = ImmutableSet.builder();
    final ImmutableSet.Builder<String> exportedResourcePrefixes = ImmutableSet.builder();
    for (Class<? extends GradleApiSpecProvider> provider : providers) {
        Spec spec = specFrom(provider);//w ww .  j a v  a  2  s . c o m
        exportedPackages.addAll(spec.getExportedPackages());
        exportedResourcePrefixes.addAll(spec.getExportedResourcePrefixes());
    }
    return new DefaultSpec(exportedPackages.build(), exportedResourcePrefixes.build());
}

From source file:com.brighttag.agathon.dao.zerg.ZergCassandraRingDao.java

@Override
public ImmutableSet<CassandraRing> findAll() throws BackingStoreException {
    ImmutableSet.Builder<CassandraRing> ringBuilder = ImmutableSet.builder();
    ZergHosts hosts = ZergHosts.from(zergConnector.getHosts());
    for (String ring : hosts.rings()) {
        ringBuilder.add(buildRingFromHosts(ring, hosts));
    }//w  w  w  .j  a  v  a2  s .  c o m
    return ringBuilder.build();
}

From source file:com.facebook.buck.ide.intellij.DefaultIjLibraryFactoryResolver.java

DefaultIjLibraryFactoryResolver(ProjectFilesystem projectFilesystem, SourcePathResolver sourcePathResolver,
        BuildRuleResolver buildRuleResolver, SourcePathRuleFinder ruleFinder,
        ImmutableSet.Builder<BuildTarget> requiredBuildTargets) {
    this.projectFilesystem = projectFilesystem;
    this.sourcePathResolver = sourcePathResolver;
    this.buildRuleResolver = buildRuleResolver;
    this.ruleFinder = ruleFinder;
    this.requiredBuildTargets = requiredBuildTargets;
}

From source file:org.onehippo.cms7.essentials.dashboard.packaging.TemplateSupportInstructionPackage.java

@Override
public Set<String> groupNames() {
    final Boolean sampleData = Boolean.valueOf((String) getProperties().get(EssentialConst.PROP_SAMPLE_DATA));
    final String templateName = (String) getProperties().get(EssentialConst.PROP_TEMPLATE_NAME);
    final String templateGroup = Strings.isNullOrEmpty(templateName) ? "jsp" : templateName;
    if (sampleData) {
        return new ImmutableSet.Builder<String>().add(EssentialConst.INSTRUCTION_GROUP_DEFAULT)
                .add(EssentialConst.PROP_SAMPLE_DATA).add(templateGroup).build();
    }/*w  w w .ja va  2 s.  c  o  m*/
    return new ImmutableSet.Builder<String>().add(EssentialConst.INSTRUCTION_GROUP_DEFAULT).add(templateGroup)
            .build();
}

From source file:org.gradle.api.plugins.buildcomparison.outcome.internal.archive.entry.FileToArchiveEntrySetTransformer.java

private ImmutableSet<ArchiveEntry> walk(InputStream archiveInputStream,
        ImmutableSet.Builder<ArchiveEntry> allEntries, ImmutableList<String> parentPaths) {
    ImmutableSet.Builder<ArchiveEntry> entries = ImmutableSet.builder();
    ZipInputStream zipStream = new ZipInputStream(archiveInputStream);

    try {//from w w w.j a  v a 2  s .  c o m
        ZipEntry entry = zipStream.getNextEntry();
        while (entry != null) {
            ArchiveEntry.Builder builder = new ArchiveEntry.Builder();
            builder.setParentPaths(parentPaths);
            builder.setPath(entry.getName());
            builder.setCrc(entry.getCrc());
            builder.setDirectory(entry.isDirectory());
            builder.setSize(entry.getSize());
            if (!builder.isDirectory() && (zipStream.available() == 1)) {
                boolean zipEntry;
                final BufferedInputStream bis = new BufferedInputStream(zipStream) {
                    @Override
                    public void close() throws IOException {
                    }
                };
                bis.mark(Integer.MAX_VALUE);
                zipEntry = new ZipInputStream(bis).getNextEntry() != null;
                bis.reset();
                if (zipEntry) {
                    ImmutableList<String> nextParentPaths = ImmutableList.<String>builder().addAll(parentPaths)
                            .add(entry.getName()).build();
                    ImmutableSet<ArchiveEntry> subEntries = walk(bis, allEntries, nextParentPaths);
                    builder.setSubEntries(subEntries);
                }
            }

            ArchiveEntry archiveEntry = builder.build();
            entries.add(archiveEntry);
            allEntries.add(archiveEntry);
            zipStream.closeEntry();
            entry = zipStream.getNextEntry();
        }
    } catch (IOException e) {
        throw new UncheckedIOException(e);
    } finally {
        IOUtils.closeQuietly(zipStream);
    }

    return entries.build();
}

From source file:com.spotify.heroic.aggregation.Group.java

@Override
public GroupInstance apply(final AggregationContext context) {
    final AggregationInstance instance = each.flatMap(AggregationOrList::toAggregation).orElse(Empty.INSTANCE)
            .apply(context);//from  w  ww.j av  a2s  .  c  o  m

    final Optional<List<String>> of = this.of.map(o -> {
        final ImmutableSet.Builder<String> b = ImmutableSet.builder();
        b.addAll(o).addAll(context.requiredTags());
        return ImmutableList.copyOf(b.build());
    });

    return new GroupInstance(of, instance);
}

From source file:net.femtoparsec.remote.Views.java

/**
 * <p>Compute and return the difference between two views (members in both view, members in the first view only, and members in the second view only).
 * It is called difference since it assumes that the first view if chronologically before the second view.</p>
 *
 * @param first the first view//from  w w w .  j ava  2s  .com
 * @param second the second view
 * @return the view difference
 */
public static ViewDifference getDifference(View first, View second) {
    Objects.requireNonNull(second, "to");

    final DefaultViewDifference.Builder builder = DefaultViewDifference.builder();

    builder.setFrom(first).setTo(second);

    Set<Address> leftMembers = new HashSet<>();

    if (first != null) {
        //assume that all members have left the view
        leftMembers.addAll(first.getMembers());
    }

    ImmutableSet.Builder<Address> newMembersBuilder = ImmutableSet.builder();
    ImmutableSet.Builder<Address> unchangedMembersBuilder = ImmutableSet.builder();

    for (Address member : second) {
        if (leftMembers.remove(member)) {
            unchangedMembersBuilder.add(member);
        } else {
            newMembersBuilder.add(member);
        }
    }

    builder.setLeftMembers(ImmutableSet.copyOf(leftMembers)).setNewMembers(newMembersBuilder.build())
            .setUnchangedMembers(unchangedMembersBuilder.build());

    return builder.build();
}

From source file:com.cloudera.validation.DescriptorValidatorImpl.java

@Override
public Set<String> validate(T descriptor) {
    Set<ConstraintViolation<T>> constraintViolations;
    constraintViolations = getViolations(descriptor);

    ImmutableSet.Builder<String> violations = ImmutableSet.builder();
    for (ConstraintViolation<T> violation : constraintViolations) {
        String message = violation.getMessage();
        String relativePath = violation.getPropertyPath().toString();
        violations.add(String.format(ERROR_FORMAT, errorPrefix, relativePath, message));
    }//from w ww.j  a v a 2 s .co  m
    return violations.build();
}