List of usage examples for com.google.common.collect HashBasedTable create
public static <R, C, V> HashBasedTable<R, C, V> create(int expectedRows, int expectedCellsPerRow)
From source file:com.android.tools.idea.uibuilder.property.NlProperties.java
@NotNull private Table<String, String, NlPropertyItem> getPropertiesWithReadLock(@NotNull AndroidFacet facet, @NotNull List<NlComponent> components, @NotNull GradleDependencyManager dependencyManager) { ResourceManager localResourceManager = facet.getLocalResourceManager(); ResourceManager systemResourceManager = facet.getSystemResourceManager(); if (systemResourceManager == null) { Logger.getInstance(NlProperties.class) .error("No system resource manager for module: " + facet.getModule().getName()); return ImmutableTable.of(); }/*from w w w .j a va 2s.c o m*/ AttributeDefinitions localAttrDefs = localResourceManager.getAttributeDefinitions(); AttributeDefinitions systemAttrDefs = systemResourceManager.getAttributeDefinitions(); Table<String, String, NlPropertyItem> combinedProperties = null; for (NlComponent component : components) { XmlTag tag = component.getTag(); if (!tag.isValid()) { return ImmutableTable.of(); } XmlElementDescriptor elementDescriptor = myDescriptorProvider.getDescriptor(tag); if (elementDescriptor == null) { return ImmutableTable.of(); } XmlAttributeDescriptor[] descriptors = elementDescriptor.getAttributesDescriptors(tag); Table<String, String, NlPropertyItem> properties = HashBasedTable.create(3, descriptors.length); for (XmlAttributeDescriptor desc : descriptors) { String namespace = getNamespace(desc, tag); AttributeDefinitions attrDefs = NS_RESOURCES.equals(namespace) ? systemAttrDefs : localAttrDefs; AttributeDefinition attrDef = attrDefs == null ? null : attrDefs.getAttrDefByName(desc.getName()); NlPropertyItem property = NlPropertyItem.create(components, desc, namespace, attrDef); properties.put(StringUtil.notNullize(namespace), property.getName(), property); } // Exceptions: switch (tag.getName()) { case AUTO_COMPLETE_TEXT_VIEW: // An AutoCompleteTextView has a popup that is created at runtime. // Properties for this popup can be added to the AutoCompleteTextView tag. properties.put(ANDROID_URI, ATTR_POPUP_BACKGROUND, NlPropertyItem.create(components, new AndroidAnyAttributeDescriptor(ATTR_POPUP_BACKGROUND), ANDROID_URI, systemAttrDefs != null ? systemAttrDefs.getAttrDefByName(ATTR_POPUP_BACKGROUND) : null)); break; } combinedProperties = combine(properties, combinedProperties); } // The following properties are deprecated in the support library and can be ignored by tools: assert combinedProperties != null; combinedProperties.remove(AUTO_URI, ATTR_PADDING_START); combinedProperties.remove(AUTO_URI, ATTR_PADDING_END); combinedProperties.remove(AUTO_URI, ATTR_THEME); setUpDesignProperties(combinedProperties); setUpSrcCompat(combinedProperties, facet, components, dependencyManager); initStarState(combinedProperties); //noinspection ConstantConditions return combinedProperties; }
From source file:mtsar.processors.answer.KOSAggregator.java
private Table<Integer, Integer, Double> tasksUpdate(Table<Integer, Integer, Short> graph, Table<Integer, Integer, Double> ys) { final Table<Integer, Integer, Double> xs = HashBasedTable.create(graph.rowKeySet().size(), graph.columnKeySet().size()); for (final Table.Cell<Integer, Integer, Short> cell : graph.cellSet()) { double sumProduct = 0.0; final int taskId = cell.getRowKey(), workerId = cell.getColumnKey(); final Map<Integer, Short> workers = graph.row(taskId); for (final Map.Entry<Integer, Short> worker : workers.entrySet()) { if (worker.getKey() == workerId) continue; sumProduct += worker.getValue() * ys.get(taskId, worker.getKey()); }/*w w w . j a va 2 s.c o m*/ xs.put(taskId, workerId, sumProduct); } return xs; }
From source file:mtsar.processors.answer.KOSAggregator.java
private Table<Integer, Integer, Double> workersUpdate(Table<Integer, Integer, Short> graph, Table<Integer, Integer, Double> xs) { final Table<Integer, Integer, Double> ys = HashBasedTable.create(graph.rowKeySet().size(), graph.columnKeySet().size()); for (final Table.Cell<Integer, Integer, Short> cell : graph.cellSet()) { double sumProduct = 0.0; final int taskId = cell.getRowKey(), workerId = cell.getColumnKey(); final Map<Integer, Short> tasks = graph.column(workerId); for (final Map.Entry<Integer, Short> task : tasks.entrySet()) { if (task.getKey() == taskId) continue; sumProduct += task.getValue() * xs.get(task.getKey(), workerId); }/*from ww w . j a va2 s . c o m*/ ys.put(taskId, workerId, sumProduct); } return ys; }
From source file:org.sonar.server.measure.ws.ComponentTreeDataLoader.java
private Table<String, MetricDto, Measure> searchMeasuresByComponentUuidAndMetric(DbSession dbSession, ComponentDto baseComponent, ComponentTreeQuery componentTreeQuery, List<ComponentDto> components, List<MetricDto> metrics, @Nullable Long developerId) { Map<Integer, MetricDto> metricsById = Maps.uniqueIndex(metrics, MetricDto::getId); MeasureTreeQuery measureQuery = MeasureTreeQuery.builder() .setStrategy(MeasureTreeQuery.Strategy.valueOf(componentTreeQuery.getStrategy().name())) .setNameOrKeyQuery(componentTreeQuery.getNameOrKeyQuery()) .setQualifiers(componentTreeQuery.getQualifiers()).setPersonId(developerId) .setMetricIds(new ArrayList<>(metricsById.keySet())).build(); Table<String, MetricDto, Measure> measuresByComponentUuidAndMetric = HashBasedTable .create(components.size(), metrics.size()); dbClient.measureDao().selectTreeByQuery(dbSession, baseComponent, measureQuery, result -> { MeasureDto measureDto = (MeasureDto) result.getResultObject(); measuresByComponentUuidAndMetric.put(measureDto.getComponentUuid(), metricsById.get(measureDto.getMetricId()), Measure.createFromMeasureDto(measureDto)); });/*from w ww . j a v a2s .c om*/ addBestValuesToMeasures(measuresByComponentUuidAndMetric, components, metrics); return measuresByComponentUuidAndMetric; }
From source file:ca.wumbo.wdl.parser.Player.java
/** * Creates a new player from the data provided. * /*from w w w. jav a2 s .co m*/ * @param playerName * The name of the player. * * @param teamColor * The team enumeration color. * * @throws NullPointerException * If any argument is null. * * @throws IllegalArgumentException * If the player name is empty. */ public Player(String playerName, TeamColor teamColor) { checkNotNull(playerName); checkNotNull(teamColor); checkArgument(!playerName.isEmpty()); int expectedPlayers = RoundParser.DEFAULT_TEAM_PLAYER_SIZE; int expectedWeapons = 5; name = playerName; team = teamColor; // All the fields for player data that must be initialized. currentHealth = 100; unlockedAchievementIds = new HashSet<>(); pickupMap = new HashMap<>(); killedWhileHoldingDirectFlag = new HashSet<>(); damageOutputBetweenTouchAndCapture = new StatisticArray(); listHPWhenTouching = new StatisticArray(); listGreenArmorWhenTouching = new StatisticArray(); listBlueArmorWhenTouching = new StatisticArray(); listHealthTouchResultingInCapture = new StatisticArray(); listCaptureGametics = new StatisticArray(); listCaptureHP = new StatisticArray(); listCaptureGreenArmor = new StatisticArray(); listCaptureBlueArmor = new StatisticArray(); spreeTracker = new FragSpreeTracker(); killTable = HashBasedTable.create(expectedPlayers, expectedWeapons); carrierKillTable = HashBasedTable.create(expectedPlayers, expectedWeapons); damageTable = HashBasedTable.create(expectedPlayers, expectedPlayers); carrierDamageTable = HashBasedTable.create(expectedPlayers, expectedPlayers); playerAccuracyTable = HashBasedTable.create(expectedPlayers, expectedPlayers); playerAccuracyFlagOutTable = HashBasedTable.create(expectedPlayers, expectedPlayers); }
From source file:com.google.gerrit.server.change.ChangeJson.java
private void setAllApprovals(ChangeData cd, Map<String, LabelInfo> labels) throws OrmException { ChangeControl baseCtrl = control(cd); if (baseCtrl == null) { return;/*from ww w. jav a2 s .c o m*/ } // All users ever added, even if they can't vote on one or all labels. Set<Account.Id> allUsers = Sets.newHashSet(); ListMultimap<PatchSet.Id, PatchSetApproval> allApprovals = cd.allApprovalsMap(db); for (PatchSetApproval psa : allApprovals.values()) { allUsers.add(psa.getAccountId()); } List<PatchSetApproval> currentList = labelNormalizer.normalize(baseCtrl, allApprovals.get(baseCtrl.getChange().currentPatchSetId())); // Most recent, normalized vote on each label for the current patch set by // each user (may be 0). Table<Account.Id, String, PatchSetApproval> current = HashBasedTable.create(allUsers.size(), baseCtrl.getLabelTypes().getLabelTypes().size()); for (PatchSetApproval psa : currentList) { current.put(psa.getAccountId(), psa.getLabel(), psa); } for (Account.Id accountId : allUsers) { IdentifiedUser user = userFactory.create(accountId); ChangeControl ctl = baseCtrl.forUser(user); for (Map.Entry<String, LabelInfo> e : labels.entrySet()) { LabelType lt = ctl.getLabelTypes().byLabel(e.getKey()); if (lt == null) { // Ignore submit record for undefined label; likely the submit rule // author didn't intend for the label to show up in the table. continue; } Integer value; Timestamp date = null; PatchSetApproval psa = current.get(accountId, lt.getName()); if (psa != null) { value = Integer.valueOf(psa.getValue()); date = psa.getGranted(); } else { // Either the user cannot vote on this label, or there just wasn't a // dummy approval for this label. Explicitly check whether the user // can vote on this label. value = labelNormalizer.canVote(ctl, lt, accountId) ? 0 : null; } e.getValue().addApproval(approvalInfo(accountId, value, date)); } } }
From source file:org.eclipse.incquery.runtime.base.core.NavigationHelperImpl.java
/** * @return the instanceListeners/* w w w . jav a 2s . com*/ */ Table<Object, InstanceListener, Set<EClass>> getInstanceListeners() { if (instanceListeners == null) { instanceListeners = HashBasedTable.create(100, 1); for (Entry<InstanceListener, Set<EClass>> subscription : subscribedInstanceListeners.entrySet()) { final InstanceListener listener = subscription.getKey(); for (EClass subscriptionType : subscription.getValue()) { final Object superElementTypeKey = toKey(subscriptionType); addInstanceListenerInternal(listener, subscriptionType, superElementTypeKey); final Set<Object> subTypeKeys = contentAdapter.getSubTypeMap().get(superElementTypeKey); if (subTypeKeys != null) for (Object subTypeKey : subTypeKeys) { addInstanceListenerInternal(listener, subscriptionType, subTypeKey); } } } } return instanceListeners; }
From source file:org.eclipse.incquery.runtime.base.core.NavigationHelperImpl.java
/** * @return the featureListeners// w ww .j a v a 2s .com */ Table<Object, FeatureListener, Set<EStructuralFeature>> getFeatureListeners() { if (featureListeners == null) { featureListeners = HashBasedTable.create(100, 1); for (Entry<FeatureListener, Set<EStructuralFeature>> subscription : subscribedFeatureListeners .entrySet()) { final FeatureListener listener = subscription.getKey(); for (EStructuralFeature subscriptionType : subscription.getValue()) { final Object elementTypeKey = toKey(subscriptionType); addFeatureListenerInternal(listener, subscriptionType, elementTypeKey); } } } return featureListeners; }
From source file:org.eclipse.incquery.runtime.base.core.NavigationHelperImpl.java
/** * @return the dataTypeListeners//ww w . ja v a 2 s . c om */ Table<Object, DataTypeListener, Set<EDataType>> getDataTypeListeners() { if (dataTypeListeners == null) { dataTypeListeners = HashBasedTable.create(100, 1); for (Entry<DataTypeListener, Set<EDataType>> subscription : subscribedDataTypeListeners.entrySet()) { final DataTypeListener listener = subscription.getKey(); for (EDataType subscriptionType : subscription.getValue()) { final Object elementTypeKey = toKey(subscriptionType); addDatatypeListenerInternal(listener, subscriptionType, elementTypeKey); } } } return dataTypeListeners; }
From source file:org.eclipse.viatra.query.runtime.base.core.NavigationHelperImpl.java
/** * @return the instanceListeners/* w ww . j a v a2 s. com*/ */ Table<Object, InstanceListener, Set<EClass>> getInstanceListeners() { if (instanceListeners == null) { instanceListeners = HashBasedTable.create(100, 1); for (Entry<InstanceListener, Set<EClass>> subscription : subscribedInstanceListeners.entrySet()) { final InstanceListener listener = subscription.getKey(); for (EClass subscriptionType : subscription.getValue()) { final Object superElementTypeKey = toKey(subscriptionType); addInstanceListenerInternal(listener, subscriptionType, superElementTypeKey); final Set<Object> subTypeKeys = metaStore.getSubTypeMap().get(superElementTypeKey); if (subTypeKeys != null) for (Object subTypeKey : subTypeKeys) { addInstanceListenerInternal(listener, subscriptionType, subTypeKey); } } } } return instanceListeners; }