Example usage for com.google.common.collect ImmutableSet.Builder addAll

List of usage examples for com.google.common.collect ImmutableSet.Builder addAll

Introduction

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

Prototype

boolean addAll(Collection<? extends E> c);

Source Link

Document

Adds all of the elements in the specified collection to this set if they're not already present (optional operation).

Usage

From source file:com.tngtech.archunit.core.domain.JavaPackage.java

/**
 * @return all sub-packages including nested sub-packages contained in this package,
 * e.g. {@code [java.lang, java.lang.annotation, java.util, java.util.concurrent, ...]} for package {@code java}
 * (compare {@link #getSubPackages()})/*from w w w  .j a v  a  2s  .co m*/
 */
@PublicAPI(usage = ACCESS)
public Set<JavaPackage> getAllSubPackages() {
    ImmutableSet.Builder<JavaPackage> result = ImmutableSet.builder();
    for (JavaPackage subPackage : getSubPackages()) {
        result.add(subPackage);
        result.addAll(subPackage.getAllSubPackages());
    }
    return result.build();
}

From source file:org.spongepowered.mod.item.data.SpongeEnchantmentItemData.java

@Override
public ItemDataTransactionResult set(Enchantment... mapped) {
    checkNotNull(mapped);//from   w w  w .  j  av a 2 s .  com
    ImmutableSet.Builder<ItemData<?>> builder = ImmutableSet.builder();
    for (Enchantment enchantment : mapped) {
        ItemDataTransactionResult result = set(enchantment, enchantment.getMinimumLevel());
        if (result.getType() == ItemDataTransactionResult.Type.SUCCESS) {
            if (result.getReplacedData().isPresent()) {
                builder.addAll(result.getReplacedData().get());
            }
        } else {
            rejected(result, builder.build());
        }
    }
    return succesReplaced(builder.build());
}

From source file:io.prestosql.sql.planner.iterative.rule.PruneWindowColumns.java

@Override
protected Optional<PlanNode> pushDownProjectOff(PlanNodeIdAllocator idAllocator, WindowNode windowNode,
        Set<Symbol> referencedOutputs) {
    Map<Symbol, WindowNode.Function> referencedFunctions = Maps.filterKeys(windowNode.getWindowFunctions(),
            referencedOutputs::contains);

    if (referencedFunctions.isEmpty()) {
        return Optional.of(windowNode.getSource());
    }//from   w ww . ja v  a 2  s.  co  m

    ImmutableSet.Builder<Symbol> referencedInputs = ImmutableSet.<Symbol>builder().addAll(
            windowNode.getSource().getOutputSymbols().stream().filter(referencedOutputs::contains).iterator())
            .addAll(windowNode.getPartitionBy());

    windowNode.getOrderingScheme()
            .ifPresent(orderingScheme -> orderingScheme.getOrderBy().forEach(referencedInputs::add));
    windowNode.getHashSymbol().ifPresent(referencedInputs::add);

    for (WindowNode.Function windowFunction : referencedFunctions.values()) {
        referencedInputs.addAll(SymbolsExtractor.extractUnique(windowFunction.getFunctionCall()));
        windowFunction.getFrame().getStartValue().ifPresent(referencedInputs::add);
        windowFunction.getFrame().getEndValue().ifPresent(referencedInputs::add);
    }

    PlanNode prunedWindowNode = new WindowNode(windowNode.getId(),
            restrictOutputs(idAllocator, windowNode.getSource(), referencedInputs.build())
                    .orElse(windowNode.getSource()),
            windowNode.getSpecification(), referencedFunctions, windowNode.getHashSymbol(),
            windowNode.getPrePartitionedInputs(), windowNode.getPreSortedOrderPrefix());

    if (prunedWindowNode.getOutputSymbols().size() == windowNode.getOutputSymbols().size()) {
        // Neither function pruning nor input pruning was successful.
        return Optional.empty();
    }

    return Optional.of(prunedWindowNode);
}

From source file:com.facebook.buck.apple.AppleTestDescription.java

@Override
public Iterable<BuildTarget> findDepsForTargetFromConstructorArgs(BuildTarget buildTarget,
        CellPathResolver cellRoots, AppleTestDescription.Arg constructorArg) {
    // TODO(bhamiltoncx, Coneko): This should technically only be a runtime dependency;
    // doing this adds it to the extra deps in BuildRuleParams passed to
    // the bundle and test rule.
    ImmutableSet.Builder<BuildTarget> deps = ImmutableSet.builder();
    Optional<BuildTarget> xctoolZipTarget = appleConfig.getXctoolZipTarget();
    if (xctoolZipTarget.isPresent()) {
        deps.add(xctoolZipTarget.get());
    }//  w w w .ja  v a  2  s. co  m
    deps.addAll(appleLibraryDescription.findDepsForTargetFromConstructorArgs(buildTarget, cellRoots,
            constructorArg));
    return deps.build();
}

From source file:org.spongepowered.common.item.inventory.SpongeItemStackSnapshot.java

public SpongeItemStackSnapshot(ItemType itemType, int count, int damageValue,
        ImmutableList<ImmutableDataManipulator<?, ?>> manipulators, @Nullable NBTTagCompound compound) {
    this.itemType = checkNotNull(itemType);
    this.count = count;
    this.manipulators = checkNotNull(manipulators);
    this.damageValue = damageValue;
    this.privateStack = (ItemStack) new net.minecraft.item.ItemStack((Item) this.itemType, this.count,
            this.damageValue);
    ImmutableSet.Builder<Key<?>> keyBuilder = ImmutableSet.builder();
    ImmutableSet.Builder<ImmutableValue<?>> valueBuilder = ImmutableSet.builder();
    for (ImmutableDataManipulator<?, ?> manipulator : this.manipulators) {
        this.privateStack.offer(manipulator.asMutable());
        keyBuilder.addAll(manipulator.getKeys());
        valueBuilder.addAll(manipulator.getValues());
    }//from www .  j  a v  a  2  s  .com
    this.keys = keyBuilder.build();
    this.values = valueBuilder.build();
    this.compound = compound == null ? null : (NBTTagCompound) compound.copy();
}

From source file:org.spongepowered.common.item.inventory.SpongeItemStackSnapshot.java

public SpongeItemStackSnapshot(ItemStack itemStack) {
    checkNotNull(itemStack);/*from w  ww  .  j a  v a 2 s  .c om*/
    this.itemType = itemStack.getItem();
    this.count = itemStack.getQuantity();
    ImmutableList.Builder<ImmutableDataManipulator<?, ?>> builder = ImmutableList.builder();
    ImmutableSet.Builder<Key<?>> keyBuilder = ImmutableSet.builder();
    ImmutableSet.Builder<ImmutableValue<?>> valueBuilder = ImmutableSet.builder();
    for (DataManipulator<?, ?> manipulator : itemStack.getContainers()) {
        builder.add(manipulator.asImmutable());
        keyBuilder.addAll(manipulator.getKeys());
        valueBuilder.addAll(manipulator.getValues());
    }
    this.damageValue = ((net.minecraft.item.ItemStack) itemStack).getItemDamage();
    this.manipulators = builder.build();
    this.privateStack = itemStack.copy();
    this.keys = keyBuilder.build();
    this.values = valueBuilder.build();
    @Nullable
    NBTTagCompound compound = ((net.minecraft.item.ItemStack) this.privateStack).getTagCompound();
    if (compound != null) {
        compound = (NBTTagCompound) compound.copy();
    }
    if (compound != null) {
        NbtDataUtil.filterSpongeCustomData(compound);
        if (!compound.hasNoTags()) {
            this.compound = compound;
        } else {
            this.compound = null;
        }
    } else {
        this.compound = null;
    }
}

From source file:com.b2international.snowowl.snomed.datastore.id.memory.DefaultSnomedIdentifierService.java

private Set<String> isReserved(Set<String> ids, Set<String> currentGeneratedIds) {
    Set<String> remainingIdsToCheck = newHashSet(ids);
    final ImmutableSet.Builder<String> reservedIds = ImmutableSet.builder();

    // check already generated set of IDs first
    Set<String> reservedByCurrentSet = Sets.intersection(remainingIdsToCheck, currentGeneratedIds);
    if (!reservedByCurrentSet.isEmpty()) {
        reservedIds.addAll(reservedByCurrentSet);
        remainingIdsToCheck.removeAll(reservedByCurrentSet);
    }/*  w w w.j  a  v  a  2 s .com*/

    // check local reservation service
    Set<String> reservedByService = getReservationService().isReserved(remainingIdsToCheck);
    if (!reservedByService.isEmpty()) {
        reservedIds.addAll(reservedByService);
        remainingIdsToCheck.removeAll(reservedByService);
    }

    // check the ID index to verify state of remaining IDs
    if (!remainingIdsToCheck.isEmpty()) {
        getSctIds(remainingIdsToCheck).forEach((id, sctId) -> {
            if (!sctId.isAvailable()) {
                reservedIds.add(id);
            }
        });
    }

    return reservedIds.build();
}

From source file:com.google.javascript.jscomp.newtypes.RawNominalType.java

ImmutableSet<String> getAllPropsOfClass() {
    Preconditions.checkState(!isInterface);
    Preconditions.checkState(this.isRawTypeFinalized);
    if (allProps == null) {
        ImmutableSet.Builder<String> builder = ImmutableSet.builder();
        if (superClass != null) {
            builder.addAll(superClass.getAllPropsOfClass());
        }/*from w  w  w.j a va2s . co m*/
        allProps = builder.addAll(classProps.keySet()).addAll(protoProps.keySet()).build();
    }
    return allProps;
}

From source file:org.onosproject.onosjar.ProjectJavadocDescription.java

@Override
public <A extends Arg> BuildRule createBuildRule(TargetGraph targetGraph, BuildRuleParams params,
        BuildRuleResolver resolver, A args) throws NoSuchBuildTargetException {

    ImmutableSet.Builder<SourcePath> srcs = ImmutableSet.builder();
    ImmutableSet.Builder<BuildRule> deps = ImmutableSet.builder();
    ImmutableSortedMap.Builder<SourcePath, Path> docfiles = ImmutableSortedMap.naturalOrder();
    for (BuildTarget dep : args.deps) {
        BuildRule rule = resolver.requireRule(dep.withFlavors(JavaLibrary.JAVADOC_JAR));
        if (rule instanceof JavadocJar) {
            JavadocJar jarRule = (JavadocJar) rule;
            srcs.addAll(jarRule.getSources());
            deps.addAll(jarRule.getDeps());
            docfiles.putAll(jarRule.getDocFiles());
        } else {/*from w  w w  . j a  v a2  s .  c  om*/
            throw new RuntimeException("rule is not a javalib"); //FIXME
        }
    }

    BuildRuleParams newParams = params.copyWithDeps(
            Suppliers.ofInstance(FluentIterable.from(deps.build()).toSortedSet(Ordering.<BuildRule>natural())),
            Suppliers.ofInstance(ImmutableSortedSet.<BuildRule>of()));

    SourcePathResolver sourceResolver = new SourcePathResolver(resolver);
    ImmutableList.Builder<SourcePath> auxSources = ImmutableList.builder();

    JavadocJar.JavadocArgs.Builder javadocArgs = JavadocJar.JavadocArgs.builder()
            .addArg("-windowtitle", args.projectTitle).addArg("-doctitle", args.projectTitle)
            .addArg("-link", "http://docs.oracle.com/javase/8/docs/api")
            .addArg("-tag", "onos.rsModel:a:\"onos model\""); //FIXME from buckconfig + rule

    if (args.groups.isPresent()) {
        for (Pair<String, ImmutableList<String>> pair : args.groups.get()) {
            javadocArgs.addArg("-group", pair.getFirst(), pair.getSecond());
        }
    }

    if (args.excludePackages.isPresent() && !args.excludePackages.get().isEmpty()) {
        javadocArgs.addArg("-exclude", args.excludePackages.get());
    }

    if (args.overview.isPresent()) {
        javadocArgs.addArg("-overview", sourceResolver.getAbsolutePath(args.overview.get()).toString());

    }

    if (args.javadocFiles.isPresent()) {
        for (SourcePath path : args.javadocFiles.get()) {
            docfiles.put(path,
                    JavadocJar.getDocfileWithPath(sourceResolver, path, args.javadocFilesRoot.orNull()));
        }
    }

    JavadocJar javadocJar = new JavadocJar(newParams, sourceResolver, ImmutableSortedSet.copyOf(srcs.build()),
            docfiles.build(), javadocArgs.build(), /* mavenCoords */ Optional.absent());
    return javadocJar;

}

From source file:org.spongepowered.mod.item.data.SpongeEnchantmentItemData.java

@Override
public ItemDataTransactionResult set(Map<Enchantment, Integer> mapped) {
    checkNotNull(mapped);/*from w  ww  . ja v a  2s.  c  o m*/
    ImmutableSet.Builder<ItemData<?>> builder = ImmutableSet.builder();
    for (Map.Entry<Enchantment, Integer> entry : mapped.entrySet()) {
        ItemDataTransactionResult result = set(entry.getKey(), entry.getValue());
        if (result.getType() == ItemDataTransactionResult.Type.SUCCESS) {
            if (result.getReplacedData().isPresent()) {
                builder.addAll(result.getReplacedData().get());
            }
        } else {
            rejected(result, builder.build());
        }
    }
    return succesReplaced(builder.build());
}