Skip to content

Commit 20e9f36

Browse files
authored
Clean up ContainerFilter (#227)
1 parent 941049d commit 20e9f36

File tree

5 files changed

+14
-13
lines changed

5 files changed

+14
-13
lines changed

LDK/api-src/org/labkey/api/ldk/table/ContainerScopedTable.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -122,7 +122,7 @@ public DataIteratorBuilder persistRows(DataIteratorBuilder data, DataIteratorCon
122122

123123
protected class UpdateService extends SimpleQueryUpdateService
124124
{
125-
private KeyManager _keyManager = new KeyManager();
125+
private final KeyManager _keyManager = new KeyManager();
126126

127127
public UpdateService(SimpleUserSchema.SimpleTable<?> ti)
128128
{
@@ -307,7 +307,7 @@ public Object call()
307307

308308
private class KeyManager
309309
{
310-
private Set<Object> _encounteredKeys = new HashSet<>();
310+
private final Set<Object> _encounteredKeys = new HashSet<>();
311311

312312
public KeyManager()
313313
{
@@ -337,7 +337,7 @@ public boolean rowExists(Container c, Object key)
337337

338338
Container target = c.getContainerFor(ContainerType.DataType.sharedSchemaOwner);
339339
SimpleFilter filter = new SimpleFilter(FieldKey.fromString(_pseudoPk), key, CompareType.EQUAL);
340-
filter.addClause(ContainerFilter.current(target).createFilterClause(_rootTable.getSchema(), getContainerFieldKey()));
340+
filter.addClause(ContainerFilter.current(target, getUserSchema().getUser()).createFilterClause(_rootTable.getSchema(), getContainerFieldKey()));
341341
TableSelector ts = new TableSelector(_rootTable, Collections.singleton(_pseudoPk), filter, null);
342342

343343
return ts.getRowCount() > 0;

LDK/src/org/labkey/ldk/notification/SiteSummaryNotification.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -677,11 +677,11 @@ private void getAssayRunSummary(Container c, User u, final StringBuilder msg, fi
677677
if (protocolMap == null)
678678
protocolMap = new TreeMap<>();
679679

680-
ExpRunTable tiRun = AssayService.get().createRunTable(p, ap, u, p.getContainer(), ContainerFilter.EVERYTHING);
680+
ExpRunTable tiRun = AssayService.get().createRunTable(p, ap, u, p.getContainer(), ContainerFilter.EVERYTHING_UNSAFE);
681681
TableSelector tsRun = new TableSelector(tiRun);
682682

683683
AssayProtocolSchema schema = ap.createProtocolSchema(u, p.getContainer(), p, null);
684-
TableInfo tiResult = schema.createDataTable(ContainerFilter.EVERYTHING);
684+
TableInfo tiResult = schema.createDataTable(ContainerFilter.EVERYTHING_UNSAFE);
685685
TableSelector tsResult = new TableSelector(tiResult);
686686

687687
protocolMap.put(p, new Long[]{tsRun.getRowCount(), tsResult.getRowCount()});

laboratory/api-src/org/labkey/api/laboratory/QueryCountNavItem.java

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -47,17 +47,17 @@ public Long getRowCount(Container c, User u)
4747
if (ti == null)
4848
return Long.valueOf(0);
4949

50-
SimpleFilter filter = getFilter(c, ti);
50+
SimpleFilter filter = getFilter(c, u, ti);
5151
TableSelector ts = new TableSelector(ti, ti.getPkColumns(), filter, null);
5252
return ts.getRowCount();
5353
}
5454

55-
protected SimpleFilter getFilter(Container c, TableInfo ti)
55+
protected SimpleFilter getFilter(Container c, User u, TableInfo ti)
5656
{
5757
SimpleFilter filter = new SimpleFilter();
5858

59-
if (ti.getColumn("container") != null && !(ti.supportsContainerFilter() && ContainerFilter.current(c).equals(ti.getContainerFilter())))
60-
filter.addClause(ContainerFilter.current(c).createFilterClause(ti.getSchema(), FieldKey.fromString("container")));
59+
if (ti.getColumn("container") != null && !(ti.supportsContainerFilter() && ContainerFilter.current(c, u).equals(ti.getContainerFilter())))
60+
filter.addClause(ContainerFilter.current(c, u).createFilterClause(ti.getSchema(), FieldKey.fromString("container")));
6161

6262
if (_filter != null)
6363
{

laboratory/src/org/labkey/laboratory/SamplesCountNavItem.java

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@
88
import org.labkey.api.laboratory.LaboratoryService;
99
import org.labkey.api.laboratory.QueryCountNavItem;
1010
import org.labkey.api.query.FieldKey;
11+
import org.labkey.api.security.User;
1112

1213
/**
1314
* User: bimber
@@ -22,9 +23,9 @@ public SamplesCountNavItem(DataProvider provider, String schema, String query, L
2223
}
2324

2425
@Override
25-
protected SimpleFilter getFilter(Container c, TableInfo ti)
26+
protected SimpleFilter getFilter(Container c, User u, TableInfo ti)
2627
{
27-
SimpleFilter filter = super.getFilter(c, ti);
28+
SimpleFilter filter = super.getFilter(c, u, ti);
2829
filter.addCondition(FieldKey.fromString("dateremoved"), null, CompareType.ISBLANK);
2930
return filter;
3031
}

laboratory/src/org/labkey/laboratory/query/LaboratoryTableCustomizer.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -982,7 +982,7 @@ public void customizeButtonBar(AbstractTableInfo ti)
982982
newIncludes.addAll(Arrays.asList(includes));
983983
}
984984

985-
ti.getButtonBarConfig().setScriptIncludes(newIncludes.toArray(new String[newIncludes.size()]));
985+
ti.getButtonBarConfig().setScriptIncludes(newIncludes.toArray(new String[0]));
986986
}
987987
}
988988

@@ -993,7 +993,7 @@ private void customzieSamplesTable(AbstractTableInfo ti)
993993
{
994994
Container c = ti.getUserSchema().getContainer();
995995
c = c.isWorkbook() ? c.getParent() : c;
996-
SQLFragment containerSql = ContainerFilter.current(c).getSQLFragment(LaboratorySchema.getInstance().getSchema(), new SQLFragment(ti.getContainerFieldKey().toString()));
996+
SQLFragment containerSql = ContainerFilter.current(c, ti.getUserSchema().getUser()).getSQLFragment(LaboratorySchema.getInstance().getSchema(), new SQLFragment(ti.getContainerFieldKey().toString()));
997997

998998
SQLFragment sql = new SQLFragment("(SELECT count(*) as _expr FROM laboratory.samples s WHERE " +
999999
" (s.").append(containerSql).append(")" + " AND ").

0 commit comments

Comments
 (0)