public DefaultActiveRules(Collection<NewActiveRule> newActiveRules) { ImmutableListMultimap.Builder<String, ActiveRule> repoBuilder = ImmutableListMultimap.builder(); ImmutableListMultimap.Builder<String, ActiveRule> langBuilder = ImmutableListMultimap.builder(); for (NewActiveRule newAR : newActiveRules) { DefaultActiveRule ar = new DefaultActiveRule(newAR); String repo = ar.ruleKey().repository(); repoBuilder.put(repo, ar); if (ar.language() != null) { langBuilder.put(ar.language(), ar); } activeRulesByRepositoryAndKey.computeIfAbsent(repo, r -> new HashMap<>()).put(ar.ruleKey().rule(), ar); String internalKey = ar.internalKey(); if (internalKey != null) { activeRulesByRepositoryAndInternalKey.computeIfAbsent(repo, r -> new HashMap<>()).put(internalKey, ar); } } activeRulesByRepository = repoBuilder.build(); activeRulesByLanguage = langBuilder.build(); }
public DefaultActiveRules(Collection<NewActiveRule> newActiveRules) { ImmutableListMultimap.Builder<String, ActiveRule> repoBuilder = ImmutableListMultimap.builder(); ImmutableListMultimap.Builder<String, ActiveRule> langBuilder = ImmutableListMultimap.builder(); for (NewActiveRule newAR : newActiveRules) { DefaultActiveRule ar = new DefaultActiveRule(newAR); String repo = ar.ruleKey().repository(); repoBuilder.put(repo, ar); if (ar.language() != null) { langBuilder.put(ar.language(), ar); } activeRulesByRepositoryAndKey.computeIfAbsent(repo, r -> new HashMap<>()).put(ar.ruleKey().rule(), ar); String internalKey = ar.internalKey(); if (internalKey != null) { activeRulesByRepositoryAndInternalKey.computeIfAbsent(repo, r -> new HashMap<>()).put(internalKey, ar); } } activeRulesByRepository = repoBuilder.build(); activeRulesByLanguage = langBuilder.build(); }
public DefaultActiveRules(Collection<NewActiveRule> newActiveRules) { ImmutableListMultimap.Builder<String, ActiveRule> repoBuilder = ImmutableListMultimap.builder(); ImmutableListMultimap.Builder<String, ActiveRule> langBuilder = ImmutableListMultimap.builder(); for (NewActiveRule newAR : newActiveRules) { DefaultActiveRule ar = new DefaultActiveRule(newAR); repoBuilder.put(ar.ruleKey().repository(), ar); if (ar.language() != null) { langBuilder.put(ar.language(), ar); } if (!activeRulesByRepositoryAndKey.containsKey(ar.ruleKey().repository())) { activeRulesByRepositoryAndKey.put(ar.ruleKey().repository(), new HashMap<String, ActiveRule>()); activeRulesByRepositoryAndInternalKey.put(ar.ruleKey().repository(), new HashMap<String, ActiveRule>()); } activeRulesByRepositoryAndKey.get(ar.ruleKey().repository()).put(ar.ruleKey().rule(), ar); String internalKey = ar.internalKey(); if (internalKey != null) { activeRulesByRepositoryAndInternalKey.get(ar.ruleKey().repository()).put(internalKey, ar); } } activeRulesByRepository = repoBuilder.build(); activeRulesByLanguage = langBuilder.build(); }