Skip to content

Commit c547841

Browse files
committed
Use MultiSet instead of Bag
1 parent a9ec1c7 commit c547841

5 files changed

Lines changed: 33 additions & 32 deletions

File tree

core/test/src/org/labkey/test/tests/AttachmentsTest.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -15,8 +15,8 @@
1515
*/
1616
package org.labkey.test.tests;
1717

18-
import org.apache.commons.collections4.Bag;
19-
import org.apache.commons.collections4.bag.HashBag;
18+
import org.apache.commons.collections4.MultiSet;
19+
import org.apache.commons.collections4.multiset.HashMultiSet;
2020
import org.junit.Assert;
2121
import org.junit.BeforeClass;
2222
import org.junit.Test;
@@ -116,7 +116,7 @@ public void testParentTypesInAuditLog() throws IOException, CommandException
116116
{
117117
SelectRowsResponse auditResponse = new SelectRowsCommand("auditLog", AuditLogHelper.AuditEvent.ATTACHMENT_AUDIT_EVENT.getName()).execute(createDefaultConnection(), getProjectName());
118118
Assert.assertEquals(10, auditResponse.getRowCount());
119-
Bag<String> parentTypes = new HashBag<>();
119+
MultiSet<String> parentTypes = new HashMultiSet<>();
120120
auditResponse.getRowset().forEach(row -> parentTypes.add((String)row.getValue("ParentType")));
121121
Assert.assertEquals(ISSUE_ATTACHMENTS, parentTypes.getCount("IssueComment"));
122122
Assert.assertEquals(WIKI_ATTACHMENTS, parentTypes.getCount("Wiki"));

query/src/org/labkey/query/persist/QueryManager.java

Lines changed: 14 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -16,8 +16,8 @@
1616

1717
package org.labkey.query.persist;
1818

19-
import org.apache.commons.collections4.Bag;
20-
import org.apache.commons.collections4.bag.HashBag;
19+
import org.apache.commons.collections4.MultiSet;
20+
import org.apache.commons.collections4.multiset.HashMultiSet;
2121
import org.apache.commons.lang3.StringUtils;
2222
import org.apache.logging.log4j.LogManager;
2323
import org.apache.logging.log4j.Logger;
@@ -1058,23 +1058,23 @@ public static void registerUsageMetrics(String moduleName)
10581058
if (null != svc)
10591059
{
10601060
svc.registerUsageMetrics(moduleName, () -> {
1061-
Bag<String> bag = DbScope.getDbScopes().stream()
1062-
.filter(scope -> !scope.isLabKeyScope()).map(DbScope::getDatabaseProductName)
1063-
.collect(Collectors.toCollection(HashBag::new));
1061+
MultiSet<String> multiSet = DbScope.getDbScopes().stream()
1062+
.filter(scope -> !scope.isLabKeyScope()).map(DbScope::getDatabaseProductName)
1063+
.collect(Collectors.toCollection(HashMultiSet::new));
10641064

1065-
Map<String, Object> statsMap = bag.uniqueSet().stream()
1066-
.collect(Collectors.toMap(Function.identity(), bag::getCount));
1065+
Map<String, Object> statsMap = multiSet.uniqueSet().stream()
1066+
.collect(Collectors.toMap(Function.identity(), multiSet::getCount));
10671067

10681068
Map<String, Object> metrics = new HashMap<>();
10691069
metrics.put("externalDatasources", statsMap);
10701070
metrics.put(
1071-
"customViewCounts",
1072-
Map.of(
1073-
"DataClasses", getSchemaCustomViewCounts("exp.data"),
1074-
"SampleTypes", getSchemaCustomViewCounts("samples"),
1075-
"Assays", getSchemaCustomViewCounts("assay"),
1076-
"Inventory", getSchemaCustomViewCounts("inventory")
1077-
)
1071+
"customViewCounts",
1072+
Map.of(
1073+
"DataClasses", getSchemaCustomViewCounts("exp.data"),
1074+
"SampleTypes", getSchemaCustomViewCounts("samples"),
1075+
"Assays", getSchemaCustomViewCounts("assay"),
1076+
"Inventory", getSchemaCustomViewCounts("inventory")
1077+
)
10781078
);
10791079
metrics.put("customViewWithLineageColumn", getLineageCustomViewMetrics());
10801080
metrics.put("queryDefWithCalculatedFieldsCounts", getCalculatedFieldsCountsMetric());

specimen/src/org/labkey/specimen/SpecimenModule.java

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,8 @@
1616

1717
package org.labkey.specimen;
1818

19-
import org.apache.commons.collections4.bag.HashBag;
19+
import org.apache.commons.collections4.MultiSet;
20+
import org.apache.commons.collections4.multiset.HashMultiSet;
2021
import org.apache.commons.lang3.mutable.MutableInt;
2122
import org.apache.logging.log4j.Logger;
2223
import org.jetbrains.annotations.NotNull;
@@ -74,12 +75,12 @@
7475
import org.labkey.specimen.importer.SpecimenSettingsImporter;
7576
import org.labkey.specimen.model.SpecimenRequestEventType;
7677
import org.labkey.specimen.pipeline.SpecimenPipeline;
77-
import org.labkey.specimen.requirements.SpecimenRequestRequirementProvider;
7878
import org.labkey.specimen.query.SpecimenPivotByDerivativeType;
7979
import org.labkey.specimen.query.SpecimenPivotByPrimaryType;
8080
import org.labkey.specimen.query.SpecimenPivotByRequestingLocation;
8181
import org.labkey.specimen.query.SpecimenQueryView;
8282
import org.labkey.specimen.query.SpecimenUpdateService;
83+
import org.labkey.specimen.requirements.SpecimenRequestRequirementProvider;
8384
import org.labkey.specimen.security.roles.SpecimenCoordinatorRole;
8485
import org.labkey.specimen.security.roles.SpecimenRequesterRole;
8586
import org.labkey.specimen.settings.RepositorySettings;
@@ -272,7 +273,7 @@ protected void startupAfterSpringConfig(ModuleContext moduleContext)
272273
{
273274
svc.registerUsageMetrics(NAME, () -> {
274275
// Collect and add specimen repository statistics: simple vs. advanced study count, event/vial/specimen count, count of studies with requests enabled, request count by status
275-
HashBag<String> specimenBag = new HashBag<>();
276+
MultiSet<String> specimenBag = new HashMultiSet<>();
276277
MutableInt requestsEnabled = new MutableInt(0);
277278
MutableInt hasLocations = new MutableInt(0);
278279

study/test/src/org/labkey/test/tests/study/StudyDataspaceTest.java

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -15,8 +15,8 @@
1515
*/
1616
package org.labkey.test.tests.study;
1717

18-
import org.apache.commons.collections4.Bag;
19-
import org.apache.commons.collections4.bag.HashBag;
18+
import org.apache.commons.collections4.MultiSet;
19+
import org.apache.commons.collections4.multiset.HashMultiSet;
2020
import org.apache.commons.lang3.tuple.Pair;
2121
import org.junit.Assert;
2222
import org.junit.experimental.categories.Category;
@@ -346,14 +346,14 @@ private void verifyVisitTags()
346346
"1/3 - Heterologous boost regimen", "2/4 - Heterologous boost regimen",
347347
"2/4 - Heterologous boost regimen", "1/3 - Heterologous boost regimen");
348348

349-
Bag<List<String>> expectedRows = new HashBag<>(DataRegionTable.collateColumnsIntoRows(VISIT_TAG_MAP_TAGS, VISIT_TAG_MAP_VISITS, VISIT_TAG_MAP_COHORTS));
349+
MultiSet<List<String>> expectedRows = new HashMultiSet<>(DataRegionTable.collateColumnsIntoRows(VISIT_TAG_MAP_TAGS, VISIT_TAG_MAP_VISITS, VISIT_TAG_MAP_COHORTS));
350350

351351
// Check visit tags
352352
clickProject(getProjectName());
353353
goToModule("Query");
354354
viewQueryData("study", "VisitTagMap");
355355
DataRegionTable visitTagMaps = new DataRegionTable("query", this);
356-
Bag<List<String>> actualRows = new HashBag<>(visitTagMaps.getRows("VisitTag", "Visit", "Cohort"));
356+
MultiSet<List<String>> actualRows = new HashMultiSet<>(visitTagMaps.getRows("VisitTag", "Visit", "Cohort"));
357357

358358
assertEquals("Wrong Rows", expectedRows, actualRows);
359359

@@ -364,13 +364,13 @@ private void verifyVisitTags()
364364
final List<String> STUDY5_VISIT_TAG_MAP_TAGS = Arrays.asList("First Vaccination", "Second Vaccination", "Follow Up", "Follow Up");
365365
final List<String> STUDY5_VISIT_TAG_MAP_VISITS = Arrays.asList("Day -1001", "Day -1316", "Day -1351", "Day -1377");
366366
final List<String> STUDY5_VISIT_TAG_MAP_COHORTS = Arrays.asList(" ", " ", " ", " ");
367-
expectedRows = new HashBag<>(DataRegionTable.collateColumnsIntoRows(STUDY5_VISIT_TAG_MAP_TAGS, STUDY5_VISIT_TAG_MAP_VISITS, STUDY5_VISIT_TAG_MAP_COHORTS));
367+
expectedRows = new HashMultiSet<>(DataRegionTable.collateColumnsIntoRows(STUDY5_VISIT_TAG_MAP_TAGS, STUDY5_VISIT_TAG_MAP_VISITS, STUDY5_VISIT_TAG_MAP_COHORTS));
368368

369369
clickFolder(FOLDER_STUDY5);
370370
goToModule("Query");
371371
viewQueryData("study", "VisitTagMap");
372372
visitTagMaps = new DataRegionTable("query", this);
373-
actualRows = new HashBag<>(visitTagMaps.getRows("VisitTag", "Visit", "Cohort"));
373+
actualRows = new HashMultiSet<>(visitTagMaps.getRows("VisitTag", "Visit", "Cohort"));
374374

375375
assertEquals("Wrong Visit Tag Map Rows in study folder", expectedRows, actualRows);
376376

study/test/src/org/labkey/test/tests/study/StudyVisitTagTest.java

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -15,8 +15,8 @@
1515
*/
1616
package org.labkey.test.tests.study;
1717

18-
import org.apache.commons.collections4.Bag;
19-
import org.apache.commons.collections4.bag.HashBag;
18+
import org.apache.commons.collections4.MultiSet;
19+
import org.apache.commons.collections4.multiset.HashMultiSet;
2020
import org.junit.experimental.categories.Category;
2121
import org.labkey.api.util.FileUtil;
2222
import org.labkey.test.BaseWebDriverTest;
@@ -129,24 +129,24 @@ protected void doVerifySteps()
129129
{
130130
final List<String> VISIT_TAG_NAMES = Arrays.asList("day0", "finalvaccination", "finalvisit", "firstvaccination", "notsingleuse", "peakimmunogenicity");
131131
final List<String> VISIT_TAG_CAPTIONS = Arrays.asList("Day 0 (meaning varies)", "Final Vaccination", "Final visit", "First Vaccination", "Not Single Use Tag", "Predicted peak immunogenicity visit");
132-
Bag<List<String>> expectedRows = new HashBag<>(DataRegionTable.collateColumnsIntoRows(VISIT_TAG_NAMES, VISIT_TAG_CAPTIONS));
132+
MultiSet<List<String>> expectedRows = new HashMultiSet<>(DataRegionTable.collateColumnsIntoRows(VISIT_TAG_NAMES, VISIT_TAG_CAPTIONS));
133133

134134
goToProjectHome();
135135
goToModule("Query");
136136
viewQueryData("study", "VisitTag");
137137
DataRegionTable visitTags = new DataRegionTable("query", this);
138-
Bag<List<String>> actualRows = new HashBag<>(visitTags.getRows("Name", "Caption"));
138+
MultiSet<List<String>> actualRows = new HashMultiSet<>(visitTags.getRows("Name", "Caption"));
139139
assertEquals("Wrong Visit Tag Data", expectedRows, actualRows);
140140

141141
final List<String> VISIT_TAG_MAP_TAGS = Arrays.asList("Day 0 (meaning varies)", "First Vaccination", "Final Vaccination", "First Vaccination", "Final Vaccination", "Final visit");
142142
final List<String> VISIT_TAG_MAP_VISITS = Arrays.asList("Visit1", "Visit2", "Visit3", "Visit3", "Visit4", "Visit5");
143143
final List<String> VISIT_TAG_MAP_COHORTS = Arrays.asList(" ", "Positive", "Negative", "Negative", "Positive", " ");
144-
expectedRows = new HashBag<>(DataRegionTable.collateColumnsIntoRows(VISIT_TAG_MAP_TAGS, VISIT_TAG_MAP_VISITS, VISIT_TAG_MAP_COHORTS));
144+
expectedRows = new HashMultiSet<>(DataRegionTable.collateColumnsIntoRows(VISIT_TAG_MAP_TAGS, VISIT_TAG_MAP_VISITS, VISIT_TAG_MAP_COHORTS));
145145

146146
goToModule("Query");
147147
viewQueryData("study", "VisitTagMap");
148148
DataRegionTable visitTagMaps = new DataRegionTable("query", this);
149-
actualRows = new HashBag<>(visitTagMaps.getRows("VisitTag", "Visit", "Cohort"));
149+
actualRows = new HashMultiSet<>(visitTagMaps.getRows("VisitTag", "Visit", "Cohort"));
150150
assertEquals("Wrong Visit Tag Map Data", expectedRows, actualRows);
151151

152152
// verify insert/edit of tags

0 commit comments

Comments
 (0)