Example usage for com.google.common.collect Table cellSet

List of usage examples for com.google.common.collect Table cellSet

Introduction

In this page you can find the example usage for com.google.common.collect Table cellSet.

Prototype

Set<Cell<R, C, V>> cellSet();

Source Link

Document

Returns a set of all row key / column key / value triplets.

Usage

From source file:dimensionguard.handlers.DisabledHandler.java

public static void init() {
    ConfigHandler.init(DimensionGuard.config);

    Table<String, String, ItemStack> customStacks = ReflectionHelper.getPrivateValue(GameData.class, null,
            "customItemStacks");
    Map<String, ItemStack> customItemStacks = new LinkedHashMap<String, ItemStack>();

    for (Table.Cell<String, String, ItemStack> cell : customStacks.cellSet()) {
        customItemStacks.put(cell.getRowKey() + ":" + cell.getColumnKey(), cell.getValue());
    }//from w  ww. j  a  v  a2  s. c om

    addDisabledItems(true, customItemStacks);
    addDisabledItems(false, customItemStacks);
    addDisabledEntity(true);
    addDisabledEntity(false);
}

From source file:org.opendaylight.groupbasedpolicy.util.PolicyInfoUtils.java

public static List<ResolvedPolicy> buildResolvedPolicy(Table<EgKey, EgKey, Policy> policyMap,
        ConcurrentMap<TenantId, IndexedTenant> resolvedTenants) {
    List<ResolvedPolicy> resolvedPolicies = new ArrayList<>();
    for (Cell<EgKey, EgKey, Policy> policyCell : policyMap.cellSet()) {
        ResolvedPolicyBuilder resolvedPolicyBuilder = new ResolvedPolicyBuilder();
        resolvedPolicyBuilder.setConsumerEpgId(policyCell.getRowKey().getEgId());
        resolvedPolicyBuilder.setConsumerTenantId(policyCell.getRowKey().getTenantId());
        resolvedPolicyBuilder.setProviderEpgId(policyCell.getColumnKey().getEgId());
        resolvedPolicyBuilder.setProviderTenantId(policyCell.getColumnKey().getTenantId());
        resolvedPolicyBuilder.setPolicyRuleGroupWithEndpointConstraints(
                buildPolicyRuleGroupWithEndpointConstraints(policyCell.getValue()));
        Tenant consTenant = resolvedTenants.get(policyCell.getRowKey().getTenantId()).getTenant();
        Tenant provTenant = resolvedTenants.get(policyCell.getColumnKey().getTenantId()).getTenant();
        if (isExternalImplicitGroup(consTenant, policyCell.getRowKey().getEgId())) {
            resolvedPolicyBuilder.setExternalImplicitGroup(ExternalImplicitGroup.ConsumerEpg);
        } else if (isExternalImplicitGroup(provTenant, policyCell.getColumnKey().getEgId())) {
            resolvedPolicyBuilder.setExternalImplicitGroup(ExternalImplicitGroup.ProviderEpg);
        }//w  ww. j  ava2  s  . c  o m
        resolvedPolicies.add(resolvedPolicyBuilder.build());
    }
    return resolvedPolicies;
}

From source file:org.opendaylight.groupbasedpolicy.util.SubjectResolverUtils.java

private static Policy resolvePolicy(Tenant contractTenant, Contract contract, Policy merge,
        Table<EndpointConstraint, EndpointConstraint, List<Subject>> subjectMap) {
    Table<EndpointConstraint, EndpointConstraint, List<RuleGroup>> ruleMap = HashBasedTable.create();
    if (merge != null) {
        ruleMap.putAll(merge.getRuleMap());
    }// ww  w  .ja v a2s  .c om
    for (Cell<EndpointConstraint, EndpointConstraint, List<Subject>> entry : subjectMap.cellSet()) {
        List<RuleGroup> rules = new ArrayList<>();
        EndpointConstraint consEpConstraint = entry.getRowKey();
        EndpointConstraint provEpConstraint = entry.getColumnKey();
        List<RuleGroup> oldrules = ruleMap.get(consEpConstraint, provEpConstraint);
        if (oldrules != null) {
            rules.addAll(oldrules);
        }
        for (Subject s : entry.getValue()) {
            if (s.getRule() == null)
                continue;

            RuleGroup rg = new RuleGroup(s.getRule(), s.getOrder(), contractTenant, contract, s.getName());
            rules.add(rg);
        }
        Collections.sort(rules);
        ruleMap.put(consEpConstraint, provEpConstraint, Collections.unmodifiableList(rules));
    }
    return new Policy(ruleMap);
}

From source file:com.googlecode.blaisemath.graph.GraphUtils.java

/**
 * Generates connected components from an adjacency map.
 * @param <V> graph node type//from w  w w .j  a  v  a  2 s.  c  om
 * @param adj an adjacency map
 * @return set of components, as a set of sets
 */
public static <V> Collection<Set<V>> components(Table<V, V, ?> adj) {
    Multimap<V, V> multimap = LinkedHashMultimap.create();
    for (Cell<V, V, ?> cell : adj.cellSet()) {
        multimap.put(cell.getRowKey(), cell.getColumnKey());
    }
    return components(multimap);
}

From source file:org.shaf.core.util.TextMatrix.java

/**
 * Creates a new text matrix from the specified {@link Table table}.
 * /*  w  w  w .  j  av a  2s  . c o m*/
 * <p>
 * <b>Usage example:</b>
 * 
 * <pre>
 *      d   e   f                         0   1   2
 *    +---+---+---+                     +---+---+---+
 *  a |   | A |   |                   0 |   | A |   |
 *    +---+---+---+                     +---+---+---+
 *  b | B |   | C |  transforming to  1 | B |   | C | 
 *    +---+---+---+                     +---+---+---+
 *  c |   | D |   |                   2 |   | D |   |
 *    +---+---+---+                     +---+---+---+
 * 
 * Table&lt;String, String, String&gt; table = HashBasedTable.create();
 * table.put(&quot;a&quot;, &quot;e&quot;, &quot;A&quot;);
 * table.put(&quot;b&quot;, &quot;d&quot;, &quot;B&quot;);
 * table.put(&quot;b&quot;, &quot;f&quot;, &quot;C&quot;);
 * table.put(&quot;c&quot;, &quot;e&quot;, &quot;D&quot;);
 * System.out.println(&quot;table=&quot; + table);
 * 
 * TextMatrix matrix = TextMatrix.&lt;String, String, String&gt; create(table);
 * System.out.println(&quot;matrix=&quot; + matrix);
 * </pre>
 * 
 * </p>
 * 
 * <p>
 * <b>Output:</b>
 * 
 * <pre>
 * table={b={f=C, d=B}, c={e=D}, a={e=A}}
 * matrix=TextMatrix{[TextCell{(0, 1)=A}, TextCell{(1, 0)=B}, TextCell{(1, 2)=C}, TextCell{(2, 1)=D}]}
 * </pre>
 * 
 * </p>
 * 
 * @param tbl
 *            the converting table.
 * @return the created text matrix.
 */
public static final <R, C, V> TextMatrix create(final Table<R, C, V> tbl) {
    TextMatrix matrix = TextMatrix.create();

    Map<R, Integer> rows = new TreeMap<>();
    Map<C, Integer> cols = new TreeMap<>();
    for (Table.Cell<R, C, V> entry : tbl.cellSet()) {
        rows.put(entry.getRowKey(), 0);
        cols.put(entry.getColumnKey(), 0);
    }

    int row = 0;
    for (R r : rows.keySet()) {
        rows.put(r, row++);
    }

    int col = 0;
    for (C c : cols.keySet()) {
        cols.put(c, col++);
    }

    for (R r : rows.keySet()) {
        for (C c : cols.keySet()) {
            if (tbl.contains(r, c)) {
                matrix.putValue(rows.get(r), cols.get(c), tbl.get(r, c).toString());
            }
        }
    }

    return matrix;
}

From source file:org.joda.beans.ser.GuavaSerIteratorFactory.java

/**
 * Gets an iterator wrapper for {@code Table}.
 * /*from  ww w  .  j  a va 2  s  .  c  o m*/
 * @param table  the collection, not null
 * @param declaredType  the declared type, not null
 * @param rowType  the row type, not null
 * @param colType  the col type, not null
 * @param valueType  the value type, not null
 * @param valueTypeTypes  the generic parameters of the value type
 * @return the iterator, not null
 */
@SuppressWarnings("rawtypes")
public static final SerIterator table(final Table<?, ?, ?> table, final Class<?> declaredType,
        final Class<?> rowType, final Class<?> colType, final Class<?> valueType,
        final List<Class<?>> valueTypeTypes) {
    return new SerIterator() {
        private final Iterator it = table.cellSet().iterator();
        private Cell current;

        @Override
        public String metaTypeName() {
            return "Table";
        }

        @Override
        public boolean metaTypeRequired() {
            return Table.class.isAssignableFrom(declaredType) == false;
        }

        @Override
        public SerCategory category() {
            return SerCategory.TABLE;
        }

        @Override
        public int size() {
            return table.size();
        }

        @Override
        public boolean hasNext() {
            return it.hasNext();
        }

        @Override
        public void next() {
            current = (Cell) it.next();
        }

        @Override
        public Class<?> keyType() {
            return rowType;
        }

        @Override
        public Object key() {
            return current.getRowKey();
        }

        @Override
        public Class<?> columnType() {
            return colType;
        }

        @Override
        public Object column() {
            return current.getColumnKey();
        }

        @Override
        public Class<?> valueType() {
            return valueType;
        }

        @Override
        public List<Class<?>> valueTypeTypes() {
            return valueTypeTypes;
        }

        @Override
        public Object value() {
            return current.getValue();
        }
    };
}

From source file:org.icgc.dcc.release.job.export.stats.StatsAccumulator.java

@Override
public Table<String, ExportType, Long> addInPlace(Table<String, ExportType, Long> left,
        Table<String, ExportType, Long> right) {
    for (val rightCell : right.cellSet()) {
        val rowKey = rightCell.getRowKey();
        val columnKey = rightCell.getColumnKey();

        val currentValue = firstNonNull(left.get(rowKey, columnKey), valueOf(0L));
        val mergedValue = currentValue + rightCell.getValue();
        left.put(rowKey, columnKey, mergedValue);
    }/*from  w  w w.  j a v  a 2 s.  c  o  m*/

    return left;
}

From source file:fr.ymanvieu.trading.rate.HistoricalService.java

@VisibleForTesting
protected void addHistoricalRates(List<Quote> quotes) {

    log.debug("{} quotes as parameter", quotes.size());

    Table<String, String, List<Quote>> sortedQuotes = sort(quotes);

    sortedQuotes.cellSet().stream().forEach(e -> {

        if (!symbolRepo.exists(e.getColumnKey())) {
            addCurrency(e.getColumnKey());
        }//from   w  w  w .  j a  v a2  s.c  o  m

        if (!symbolRepo.exists(e.getRowKey())) {
            addCurrency(e.getRowKey());
        }

        log.debug("===== {}/{} =====", e.getRowKey(), e.getColumnKey());
        log.debug("rates to add: {}", e.getValue().size());

        rateService.addHistoricalRates(e.getValue());
    });
}

From source file:es.usc.citius.composit.iserve.match.iServeSetMatchFunction.java

@Override
public MatchTable<URI, LogicConceptMatchType> fullMatch(Set<URI> source, Set<URI> target) {
    Metrics.get().increment("iServeSetMatchFunction.fullMatch");
    Table<URI, URI, MatchResult> result = this.matcher.match(source, target);
    Table<URI, URI, LogicConceptMatchType> transformed = HashBasedTable.create();
    for (Table.Cell<URI, URI, MatchResult> cell : result.cellSet()) {
        transformed.put(cell.getRowKey(), cell.getColumnKey(),
                (LogicConceptMatchType) cell.getValue().getMatchType());
    }/*ww w . j a  v a  2  s .  co  m*/
    return new MatchTable<URI, LogicConceptMatchType>(transformed);
}

From source file:org.icgc.dcc.release.job.export.task.GenericExportTask.java

@SneakyThrows
protected void saveStats(TaskContext taskContext, Table<String, ExportType, Long> stats) {
    @Cleanup/*from   w  w w. j a va  2  s.c  o m*/
    val out = getStatsOutputStream(taskContext);
    for (val cell : stats.cellSet()) {
        val donorId = cell.getRowKey();
        val type = cell.getColumnKey();
        val value = cell.getValue();
        out.write(Joiners.TAB.join(donorId, type, value));
        out.write(NEWLINE);
    }
}