Example usage for com.google.common.collect Sets intersection

List of usage examples for com.google.common.collect Sets intersection

Introduction

In this page you can find the example usage for com.google.common.collect Sets intersection.

Prototype

public static <E> SetView<E> intersection(final Set<E> set1, final Set<?> set2) 

Source Link

Document

Returns an unmodifiable view of the intersection of two sets.

Usage

From source file:springfox.documentation.spring.web.plugins.PathAndParametersEquivalence.java

@Override
protected boolean doEquivalent(RequestHandler a, RequestHandler b) {
    return a.getPatternsCondition().equals(b.getPatternsCondition())
            && !Sets.intersection(a.supportedMethods(), b.supportedMethods()).isEmpty()
            && a.params().equals(b.params())
            && Sets.difference(wrapped(a.getParameters()), wrapped(b.getParameters())).isEmpty();
}

From source file:com.netflix.exhibitor.core.config.RollingHostNamesBuilder.java

RollingHostNamesBuilder(InstanceConfig rootConfig, InstanceConfig rollingConfig, String leaderHostname) {
    ServerList rootServers = new ServerList(rootConfig.getString(StringConfigs.SERVERS_SPEC));
    ServerList rollingServers = new ServerList(rollingConfig.getString(StringConfigs.SERVERS_SPEC));

    Set<String> newServers = Sets.difference(Sets.newTreeSet(rollingServers.getHostnames()),
            Sets.newTreeSet(rootServers.getHostnames()));
    Set<String> unchangedServers = Sets.intersection(Sets.newTreeSet(rollingServers.getHostnames()),
            Sets.newTreeSet(rootServers.getHostnames()));

    ImmutableList.Builder<String> builder = ImmutableList.builder();
    builder.addAll(newServers); // new servers need to be started first as the others will try to communicate with them. You may have issues if there is more than 1 new server
    if ((leaderHostname != null) && unchangedServers.contains(leaderHostname)) {
        Set<String> allButLeader = Sets.difference(unchangedServers, Sets.newHashSet(leaderHostname));
        builder.addAll(allButLeader); // the servers that are staying in the cluster can be restarted next.
        builder.add(leaderHostname); // restart the leader last in the hopes of keeping quorum as long as possible
    } else {/*from w  w  w .ja  va  2  s  . co m*/
        builder.addAll(unchangedServers); // the servers that are staying in the cluster can be restarted next.
    }
    rollingHostNames = builder.build(); // servers coming out of the cluster can be restarted all at once at the end (assuming they still exist)
}

From source file:PageComparison.Shingle.java

public float jaccard_similarity_coeff(Set<String> shinglesA, Set<String> shinglesB) {
    float neumerator = Sets.intersection(shinglesA, shinglesB).size();
    float denominator = Sets.union(shinglesA, shinglesB).size();
    float result = (neumerator / denominator);
    return result;
}

From source file:mod.steamnsteel.world.ore.NiterOreGenerator.java

private static boolean isQualifiedBiome(BiomeGenBase biome) {
    return Sets.intersection(EnumSet.copyOf(Arrays.asList(BiomeDictionary.getTypesForBiome(biome))),
            BLACKLISTED_BIOME_TYPES).isEmpty();
}

From source file:org.stackwire.fca.utils.Utils.java

public static Set<Integer> intersect(Set<Set<Integer>> set) {
    Iterator<Set<Integer>> it = set.iterator();
    Set<Integer> result = it.next();
    while (it.hasNext()) {
        result = Sets.intersection(result, Sets.newHashSet(it.next()));
    }/*from  w  w w .jav  a2 s .  c  o  m*/
    return result;
}

From source file:com.google.gerrit.server.account.ListGroupMembership.java

@Override
public Set<AccountGroup.UUID> intersection(Iterable<AccountGroup.UUID> groupIds) {
    return Sets.intersection(ImmutableSet.copyOf(groupIds), groups);
}

From source file:es.usc.citius.composit.core.matcher.logic.ExactSetMatchFunction.java

@Override
public MatchTable<E, LogicMatchType> fullMatch(Set<E> source, Set<E> target) {
    // Perform a set intersection
    Sets.SetView<E> intersection = Sets.intersection(source, target);
    MatchTable<E, LogicMatchType> result = new MatchTable<E, LogicMatchType>();
    for (E e : intersection) {
        result.addMatch(e, e, LogicMatchType.EXACT);
    }//from  w w w  . jav a2 s .  c om
    return result;
}

From source file:org.polarsys.reqcycle.commands.utils.RelationCommandUtils.java

public static Set<RelationCreationDescriptor> getAllRelationCommands(List<Reachable> sourceReachables,
        List<Reachable> targetReachables) {

    Set<RelationCreationDescriptor> set = Sets.newHashSet();
    Configuration defaultConfiguration = typeConfigProvider.getContainer().getDefaultConfiguration();
    if (defaultConfiguration != null) {
        for (Reachable sourceReachable : sourceReachables) {
            for (Reachable targetReachable : targetReachables) {
                Set<RelationCreationDescriptor> matches = getMatches(sourceReachable, targetReachable,
                        defaultConfiguration);
                if (set.isEmpty()) {
                    set = matches;/*  w  w w .ja  va 2s.  c  om*/
                } else {
                    set = Sets.intersection(set, matches);
                }
            }
        }
    } else {
        Activator.getDefault().getLog().log(
                new Status(Status.WARNING, Activator.PLUGIN_ID, "No default Reqcycle configuration was found"));
    }

    return set;
}

From source file:ai.grakn.graql.internal.reasoner.query.QueryAnswerStream.java

static boolean knownFilterWithInverse(Answer answer, Map<Pair<Var, Concept>, Set<Answer>> stream2InverseMap) {
    Iterator<Map.Entry<Var, Concept>> eit = answer.entrySet().iterator();
    Map.Entry<Var, Concept> entry = eit.next();
    Set<Answer> matchAnswers = findMatchingAnswers(entry.getKey(), entry.getValue(), stream2InverseMap);
    while (eit.hasNext()) {
        entry = eit.next();//www .ja  v  a  2 s  . c o  m
        matchAnswers = Sets.intersection(matchAnswers,
                findMatchingAnswers(entry.getKey(), entry.getValue(), stream2InverseMap));
    }
    for (Answer knownAnswer : matchAnswers) {
        if (knownAnswer.entrySet().containsAll(answer.entrySet())) {
            return false;
        }
    }
    return true;
}

From source file:com.jivesoftware.os.tasmo.view.reader.service.CountTreeNode.java

@Override
public JsonNode merge(JsonViewMerger merger, Set<Id> permittedIds) throws IOException {
    ObjectNode objectNode = merger.createObjectNode();
    objectNode.put(JSON_FIELD, Sets.intersection(idsSeen, permittedIds).size());
    return objectNode;
}