From 981ace99faae1db39af756552772c243526df1d7 Mon Sep 17 00:00:00 2001 From: labkey-dave Date: Wed, 1 May 2019 14:49:32 -0700 Subject: [PATCH 1/2] Immutable changes (external, tnprc, onprc, ehr) --- src/org/labkey/snd/query/AttributeDataTable.java | 11 ++++++++--- src/org/labkey/snd/query/EventsCacheTable.java | 3 ++- 2 files changed, 10 insertions(+), 4 deletions(-) diff --git a/src/org/labkey/snd/query/AttributeDataTable.java b/src/org/labkey/snd/query/AttributeDataTable.java index f4e834ce..48512f33 100644 --- a/src/org/labkey/snd/query/AttributeDataTable.java +++ b/src/org/labkey/snd/query/AttributeDataTable.java @@ -23,6 +23,7 @@ import org.labkey.api.data.ContainerForeignKey; import org.labkey.api.data.DbSchema; import org.labkey.api.data.DbScope; +import org.labkey.api.data.ForeignKey; import org.labkey.api.data.JdbcType; import org.labkey.api.data.SQLFragment; import org.labkey.api.data.SqlExecutor; @@ -89,15 +90,19 @@ public AttributeDataTable(@NotNull SNDUserSchema userSchema) // Inject a lookup to the EventData table ExprColumn eventDataCol = new ExprColumn(this, "EventData", new SQLFragment(ExprColumn.STR_TABLE_ALIAS + ".EventDataId"), JdbcType.VARCHAR); addColumn(eventDataCol); - eventDataCol.setFk(new QueryForeignKey(getUserSchema(), null, SNDUserSchema.TableType.EventData.name(), "EventDataId", "EventDataId", true)); + eventDataCol.setFk(QueryForeignKey.from(getUserSchema(), this.getContainerFilter()) + .table(SNDUserSchema.TableType.EventData.name()) + .key("EventDataId") + .display("EventDataId") + .raw(true)); // Inject a Container column directly into the table, making it easier to follow container filtering rules ExprColumn containerCol = new ExprColumn(this, "Container", new SQLFragment(ExprColumn.STR_TABLE_ALIAS + ".Container"), JdbcType.VARCHAR); addColumn(containerCol); containerCol.setFk(new ContainerForeignKey(getUserSchema())); - getColumn("ObjectId").setFk(null); - getColumn("PropertyId").setLabel("Property"); + getMutableColumn("ObjectId").setFk((ForeignKey)null); + getMutableColumn("PropertyId").setLabel("Property"); } @Override diff --git a/src/org/labkey/snd/query/EventsCacheTable.java b/src/org/labkey/snd/query/EventsCacheTable.java index f1663efd..c5eeed70 100644 --- a/src/org/labkey/snd/query/EventsCacheTable.java +++ b/src/org/labkey/snd/query/EventsCacheTable.java @@ -16,6 +16,7 @@ package org.labkey.snd.query; import org.jetbrains.annotations.NotNull; +import org.labkey.api.data.BaseColumnInfo; import org.labkey.api.data.ColumnInfo; import org.labkey.api.data.DisplayColumn; import org.labkey.api.data.DisplayColumnFactory; @@ -71,7 +72,7 @@ public EventsCacheTable init() { super.init(); - ColumnInfo plainTextNarrativeColumn = addColumn(wrapColumn("Plain Text Narrative", getRealTable().getColumn("HtmlNarrative"))); + BaseColumnInfo plainTextNarrativeColumn = addColumn(wrapColumn("Plain Text Narrative", getRealTable().getColumn("HtmlNarrative"))); plainTextNarrativeColumn.setDisplayColumnFactory(new DisplayColumnFactory() { public DisplayColumn createRenderer(ColumnInfo colInfo) From 2eb5c476bb4bde56e13eb84b9b7a03703a5cbf0b Mon Sep 17 00:00:00 2001 From: Adam Rauch Date: Fri, 3 May 2019 15:33:09 -0700 Subject: [PATCH 2/2] Make SNDSchema follow new ContainerFilter pattern --- src/org/labkey/snd/SNDManager.java | 6 +- src/org/labkey/snd/SNDUserSchema.java | 63 ++++++++++--------- .../labkey/snd/query/AttributeDataTable.java | 13 ++-- src/org/labkey/snd/query/CategoriesTable.java | 13 ++-- src/org/labkey/snd/query/EventDataTable.java | 5 +- src/org/labkey/snd/query/EventNotesTable.java | 7 +-- .../labkey/snd/query/EventsCacheTable.java | 16 ++--- src/org/labkey/snd/query/EventsTable.java | 11 ++-- src/org/labkey/snd/query/LookupSetsTable.java | 23 +++---- src/org/labkey/snd/query/LookupsTable.java | 13 ++-- src/org/labkey/snd/query/PackagesTable.java | 14 ++--- src/org/labkey/snd/query/ProjectsTable.java | 14 ++--- .../labkey/snd/query/SuperPackagesTable.java | 16 ++--- 13 files changed, 101 insertions(+), 113 deletions(-) diff --git a/src/org/labkey/snd/SNDManager.java b/src/org/labkey/snd/SNDManager.java index c3c4ada6..23d4f141 100644 --- a/src/org/labkey/snd/SNDManager.java +++ b/src/org/labkey/snd/SNDManager.java @@ -105,7 +105,7 @@ public class SNDManager { private static final SNDManager _instance = new SNDManager(); - private final StringKeyCache _cache; + private final StringKeyCache>> _cache; private List _attributeLookups = new ArrayList<>(); @@ -121,7 +121,7 @@ public static SNDManager get() return _instance; } - public StringKeyCache getCache() + public StringKeyCache>> getCache() { return _cache; } @@ -182,7 +182,7 @@ private QueryUpdateService getNewQueryUpdateService(@NotNull UserSchema schema, if (dbTableInfo == null) throw new IllegalStateException(table + " db table info not found."); - SimpleUserSchema.SimpleTable simpleTable = new SimpleUserSchema.SimpleTable(schema, dbTableInfo); + SimpleUserSchema.SimpleTable simpleTable = new SimpleUserSchema.SimpleTable(schema, dbTableInfo, null); QueryUpdateService qus = new SimpleQueryUpdateService(simpleTable, dbTableInfo); if (qus == null) diff --git a/src/org/labkey/snd/SNDUserSchema.java b/src/org/labkey/snd/SNDUserSchema.java index 4c142c03..2f656c05 100644 --- a/src/org/labkey/snd/SNDUserSchema.java +++ b/src/org/labkey/snd/SNDUserSchema.java @@ -19,6 +19,7 @@ import org.labkey.api.collections.CaseInsensitiveHashMap; import org.labkey.api.collections.CaseInsensitiveTreeSet; import org.labkey.api.data.Container; +import org.labkey.api.data.ContainerFilter; import org.labkey.api.data.DbSchema; import org.labkey.api.data.SimpleFilter; import org.labkey.api.data.TableInfo; @@ -69,36 +70,36 @@ public enum TableType SuperPkgs { @Override - public TableInfo createTable(SNDUserSchema schema) + public TableInfo createTable(SNDUserSchema schema, ContainerFilter cf) { - return new SuperPackagesTable(schema, SNDSchema.getInstance().getTableInfoSuperPkgs()).init(); + return new SuperPackagesTable(schema, SNDSchema.getInstance().getTableInfoSuperPkgs(), cf).init(); } }, Pkgs { @Override - public TableInfo createTable(SNDUserSchema schema) + public TableInfo createTable(SNDUserSchema schema, ContainerFilter cf) { - return new PackagesTable(schema, SNDSchema.getInstance().getTableInfoPkgs()).init(); + return new PackagesTable(schema, SNDSchema.getInstance().getTableInfoPkgs(), cf).init(); } }, PkgCategories { @Override - public TableInfo createTable(SNDUserSchema schema) + public TableInfo createTable(SNDUserSchema schema, ContainerFilter cf) { - return new CategoriesTable(schema, SNDSchema.getInstance().getTableInfoPkgCategories()).init(); + return new CategoriesTable(schema, SNDSchema.getInstance().getTableInfoPkgCategories(), cf).init(); } }, PkgCategoryJunction { @Override - public TableInfo createTable(SNDUserSchema schema) + public TableInfo createTable(SNDUserSchema schema, ContainerFilter cf) { SimpleUserSchema.SimpleTable table = new SimpleUserSchema.SimpleTable<>( - schema, SNDSchema.getInstance().getTableInfoPkgCategoryJunction()).init(); + schema, SNDSchema.getInstance().getTableInfoPkgCategoryJunction(), cf).init(); return table; } @@ -106,11 +107,11 @@ public TableInfo createTable(SNDUserSchema schema) ProjectItems { @Override - public TableInfo createTable(SNDUserSchema schema) + public TableInfo createTable(SNDUserSchema schema, ContainerFilter cf) { SimpleUserSchema.SimpleTable table = new SimpleUserSchema.SimpleTable<>( - schema, SNDSchema.getInstance().getTableInfoProjectItems()).init(); + schema, SNDSchema.getInstance().getTableInfoProjectItems(), cf).init(); return table; } @@ -118,27 +119,27 @@ public TableInfo createTable(SNDUserSchema schema) Projects { @Override - public TableInfo createTable(SNDUserSchema schema) + public TableInfo createTable(SNDUserSchema schema, ContainerFilter cf) { - return new ProjectsTable(schema, SNDSchema.getInstance().getTableInfoProjects()).init(); + return new ProjectsTable(schema, SNDSchema.getInstance().getTableInfoProjects(), cf).init(); } }, Events { @Override - public TableInfo createTable(SNDUserSchema schema) + public TableInfo createTable(SNDUserSchema schema, ContainerFilter cf) { - return new EventsTable(schema, SNDSchema.getInstance().getTableInfoEvents()).init(); + return new EventsTable(schema, SNDSchema.getInstance().getTableInfoEvents(), cf).init(); } }, EventNotes { @Override - public TableInfo createTable(SNDUserSchema schema) + public TableInfo createTable(SNDUserSchema schema, ContainerFilter cf) { if (!schema.getPermissionCheck() || schema.getContainer().hasPermission(schema.getUser(), AdminPermission.class)) { - return new EventNotesTable(schema, SNDSchema.getInstance().getTableInfoEventNotes()).init(); + return new EventNotesTable(schema, SNDSchema.getInstance().getTableInfoEventNotes(), cf).init(); } return null; @@ -147,11 +148,11 @@ public TableInfo createTable(SNDUserSchema schema) EventData { @Override - public TableInfo createTable(SNDUserSchema schema) + public TableInfo createTable(SNDUserSchema schema, ContainerFilter cf) { if (!schema.getPermissionCheck() || schema.getContainer().hasPermission(schema.getUser(), AdminPermission.class)) { - return new EventDataTable(schema, SNDSchema.getInstance().getTableInfoEventData()).init(); + return new EventDataTable(schema, SNDSchema.getInstance().getTableInfoEventData(), cf).init(); } return null; @@ -160,11 +161,11 @@ public TableInfo createTable(SNDUserSchema schema) AttributeData { @Override - public TableInfo createTable(SNDUserSchema schema) + public TableInfo createTable(SNDUserSchema schema, ContainerFilter cf) { if (!schema.getPermissionCheck() || schema.getContainer().hasPermission(schema.getUser(), AdminPermission.class)) { - return new AttributeDataTable(schema); + return new AttributeDataTable(schema, cf); } return null; @@ -173,19 +174,19 @@ public TableInfo createTable(SNDUserSchema schema) Lookups { @Override - public TableInfo createTable(SNDUserSchema schema) + public TableInfo createTable(SNDUserSchema schema, ContainerFilter cf) { - return new LookupsTable(schema, SNDSchema.getInstance().getTableInfoLookups()).init(); + return new LookupsTable(schema, SNDSchema.getInstance().getTableInfoLookups(), cf).init(); } }, LookupSets { @Override - public TableInfo createTable(SNDUserSchema schema) + public TableInfo createTable(SNDUserSchema schema, ContainerFilter cf) { SimpleUserSchema.SimpleTable table = new SimpleUserSchema.SimpleTable<>( - schema, SNDSchema.getInstance().getTableInfoLookupSets()).init(); + schema, SNDSchema.getInstance().getTableInfoLookupSets(), cf).init(); return table; } @@ -193,11 +194,11 @@ public TableInfo createTable(SNDUserSchema schema) EventsCache { @Override - public TableInfo createTable(SNDUserSchema schema) + public TableInfo createTable(SNDUserSchema schema, ContainerFilter cf) { if (!schema.getPermissionCheck() || schema.getContainer().hasPermission(schema.getUser(), AdminPermission.class)) { - return new EventsCacheTable(schema, SNDSchema.getInstance().getTableInfoEventsCache()).init(); + return new EventsCacheTable(schema, SNDSchema.getInstance().getTableInfoEventsCache(), cf).init(); } return null; @@ -205,12 +206,12 @@ public TableInfo createTable(SNDUserSchema schema) }; - public abstract TableInfo createTable(SNDUserSchema schema); + public abstract TableInfo createTable(SNDUserSchema schema, ContainerFilter cf); } @Override @Nullable - public TableInfo createTable(String name) + public TableInfo createTable(String name, ContainerFilter cf) { if (name != null) { @@ -226,7 +227,7 @@ public TableInfo createTable(String name) } if (tableType != null) { - return tableType.createTable(this); + return tableType.createTable(this, cf); } else { @@ -234,7 +235,7 @@ public TableInfo createTable(String name) if (nameMap.containsKey(name)) { TableInfo table = SNDSchema.getInstance().getTableInfoLookups(); - return new LookupSetsTable(this, table, name, nameMap.get(name)).init(); + return new LookupSetsTable(this, table, name, nameMap.get(name), cf).init(); } } } @@ -243,7 +244,7 @@ public TableInfo createTable(String name) public Map> getLookupSets() { - Map> nameMap = (Map>) SNDManager.get().getCache().get(LookupSetsTable.getCacheKey(getContainer())); + Map> nameMap = SNDManager.get().getCache().get(LookupSetsTable.getCacheKey(getContainer())); if (nameMap != null) return nameMap; diff --git a/src/org/labkey/snd/query/AttributeDataTable.java b/src/org/labkey/snd/query/AttributeDataTable.java index 48512f33..509cf3e2 100644 --- a/src/org/labkey/snd/query/AttributeDataTable.java +++ b/src/org/labkey/snd/query/AttributeDataTable.java @@ -37,11 +37,8 @@ import org.labkey.api.query.BatchValidationException; import org.labkey.api.query.ExprColumn; import org.labkey.api.query.FilteredTable; -import org.labkey.api.query.InvalidKeyException; import org.labkey.api.query.QueryForeignKey; -import org.labkey.api.query.QueryService; import org.labkey.api.query.QueryUpdateService; -import org.labkey.api.query.QueryUpdateServiceException; import org.labkey.api.query.SimpleQueryUpdateService; import org.labkey.api.query.SimpleUserSchema; import org.labkey.api.query.UserSchema; @@ -58,7 +55,6 @@ import org.labkey.snd.SNDUserSchema; import java.io.IOException; -import java.sql.SQLException; import java.util.ArrayList; import java.util.Date; import java.util.HashMap; @@ -73,9 +69,9 @@ */ public class AttributeDataTable extends FilteredTable { - public AttributeDataTable(@NotNull SNDUserSchema userSchema) + public AttributeDataTable(@NotNull SNDUserSchema userSchema, ContainerFilter cf) { - super(OntologyManager.getTinfoObjectProperty(), userSchema); + super(OntologyManager.getTinfoObjectProperty(), userSchema, cf); setName(SNDUserSchema.TableType.AttributeData.name()); setDescription("Event/package attribute data, one row per attribute/value combination."); @@ -111,6 +107,7 @@ protected void applyContainerFilter(ContainerFilter filter) // Handle this in the FROM SQL generation } + @Override @NotNull public SQLFragment getFromSQL(String alias) { @@ -148,7 +145,7 @@ public boolean hasPermission(@NotNull UserPrincipal user, @NotNull Class> updateObjectProperty(User user, Container cont Double floatValue = (Double) row.get("FloatValue"); String stringValue = (String) row.get("StringValue"); - Character typeTag = ((String) row.get("TypeTag")).toCharArray()[0]; + char typeTag = ((String) row.get("TypeTag")).toCharArray()[0]; String key = (String) row.get("_Key"); //add to list of cached narrative rows to delete diff --git a/src/org/labkey/snd/query/CategoriesTable.java b/src/org/labkey/snd/query/CategoriesTable.java index 8bbf839d..9eec71de 100644 --- a/src/org/labkey/snd/query/CategoriesTable.java +++ b/src/org/labkey/snd/query/CategoriesTable.java @@ -17,6 +17,7 @@ import org.jetbrains.annotations.Nullable; import org.labkey.api.data.Container; +import org.labkey.api.data.ContainerFilter; import org.labkey.api.data.JdbcType; import org.labkey.api.data.SQLFragment; import org.labkey.api.data.SimpleFilter; @@ -30,7 +31,7 @@ import org.labkey.api.query.QueryUpdateService; import org.labkey.api.query.QueryUpdateServiceException; import org.labkey.api.query.SimpleQueryUpdateService; -import org.labkey.api.query.SimpleUserSchema; +import org.labkey.api.query.SimpleUserSchema.SimpleTable; import org.labkey.api.query.ValidationException; import org.labkey.api.security.User; import org.labkey.api.snd.SNDSequencer; @@ -45,7 +46,7 @@ /** * Created by marty on 8/27/2017. */ -public class CategoriesTable extends SimpleUserSchema.SimpleTable +public class CategoriesTable extends SimpleTable { /** @@ -55,13 +56,13 @@ public class CategoriesTable extends SimpleUserSchema.SimpleTable * @param schema * @param table */ - public CategoriesTable(SNDUserSchema schema, TableInfo table) + public CategoriesTable(SNDUserSchema schema, TableInfo table, ContainerFilter cf) { - super(schema, table); + super(schema, table, cf); } @Override - public SimpleUserSchema.SimpleTable init() + public SimpleTable init() { super.init(); @@ -92,7 +93,7 @@ public QueryUpdateService getUpdateService() protected class UpdateService extends SimpleQueryUpdateService { - public UpdateService(SimpleUserSchema.SimpleTable ti) + public UpdateService(SimpleTable ti) { super(ti, ti.getRealTable()); } diff --git a/src/org/labkey/snd/query/EventDataTable.java b/src/org/labkey/snd/query/EventDataTable.java index 56fd79aa..37bb2a73 100644 --- a/src/org/labkey/snd/query/EventDataTable.java +++ b/src/org/labkey/snd/query/EventDataTable.java @@ -19,6 +19,7 @@ import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; import org.labkey.api.data.Container; +import org.labkey.api.data.ContainerFilter; import org.labkey.api.data.DbSchema; import org.labkey.api.data.DbScope; import org.labkey.api.data.SQLFragment; @@ -62,9 +63,9 @@ public class EventDataTable extends SimpleUserSchema.SimpleTable * @param schema * @param table */ - public EventDataTable(SNDUserSchema schema, TableInfo table) + public EventDataTable(SNDUserSchema schema, TableInfo table, ContainerFilter cf) { - super(schema, table); + super(schema, table, cf); } @Override diff --git a/src/org/labkey/snd/query/EventNotesTable.java b/src/org/labkey/snd/query/EventNotesTable.java index 34cb4b32..6e7f94a5 100644 --- a/src/org/labkey/snd/query/EventNotesTable.java +++ b/src/org/labkey/snd/query/EventNotesTable.java @@ -16,13 +16,12 @@ package org.labkey.snd.query; import org.jetbrains.annotations.NotNull; +import org.labkey.api.data.ContainerFilter; import org.labkey.api.data.TableInfo; -import org.labkey.api.query.QueryUpdateService; import org.labkey.api.query.SimpleUserSchema; import org.labkey.api.security.UserPrincipal; import org.labkey.api.security.permissions.AdminPermission; import org.labkey.api.security.permissions.Permission; -import org.labkey.api.security.permissions.ReadPermission; import org.labkey.snd.SNDUserSchema; public class EventNotesTable extends SimpleUserSchema.SimpleTable @@ -34,9 +33,9 @@ public class EventNotesTable extends SimpleUserSchema.SimpleTable * @param schema * @param table */ - public EventNotesTable(SNDUserSchema schema, TableInfo table) + public EventNotesTable(SNDUserSchema schema, TableInfo table, ContainerFilter cf) { - super(schema, table); + super(schema, table, cf); } @Override diff --git a/src/org/labkey/snd/query/EventsCacheTable.java b/src/org/labkey/snd/query/EventsCacheTable.java index c5eeed70..6fd14c29 100644 --- a/src/org/labkey/snd/query/EventsCacheTable.java +++ b/src/org/labkey/snd/query/EventsCacheTable.java @@ -18,6 +18,7 @@ import org.jetbrains.annotations.NotNull; import org.labkey.api.data.BaseColumnInfo; import org.labkey.api.data.ColumnInfo; +import org.labkey.api.data.ContainerFilter; import org.labkey.api.data.DisplayColumn; import org.labkey.api.data.DisplayColumnFactory; import org.labkey.api.data.TableInfo; @@ -42,14 +43,15 @@ public class EventsCacheTable extends SimpleUserSchema.SimpleTable defaultVisibleColumns = new ArrayList<>(); - static { + static + { defaultVisibleColumns.add(FieldKey.fromParts("EventId")); defaultVisibleColumns.add(FieldKey.fromParts("HtmlNarrative")); defaultVisibleColumns.add(FieldKey.fromParts("Plain Text Narrative")); @@ -73,13 +75,7 @@ public EventsCacheTable init() super.init(); BaseColumnInfo plainTextNarrativeColumn = addColumn(wrapColumn("Plain Text Narrative", getRealTable().getColumn("HtmlNarrative"))); - plainTextNarrativeColumn.setDisplayColumnFactory(new DisplayColumnFactory() - { - public DisplayColumn createRenderer(ColumnInfo colInfo) - { - return new PlainTextNarrativeDisplayColumn(colInfo); - } - }); + plainTextNarrativeColumn.setDisplayColumnFactory(PlainTextNarrativeDisplayColumn::new); return this; } diff --git a/src/org/labkey/snd/query/EventsTable.java b/src/org/labkey/snd/query/EventsTable.java index d7c9fd0c..0d27eaaa 100644 --- a/src/org/labkey/snd/query/EventsTable.java +++ b/src/org/labkey/snd/query/EventsTable.java @@ -18,6 +18,7 @@ import org.apache.log4j.Logger; import org.jetbrains.annotations.Nullable; import org.labkey.api.data.Container; +import org.labkey.api.data.ContainerFilter; import org.labkey.api.data.DbScope; import org.labkey.api.data.TableInfo; import org.labkey.api.dataiterator.DataIteratorBuilder; @@ -27,7 +28,7 @@ import org.labkey.api.query.QueryUpdateService; import org.labkey.api.query.QueryUpdateServiceException; import org.labkey.api.query.SimpleQueryUpdateService; -import org.labkey.api.query.SimpleUserSchema; +import org.labkey.api.query.SimpleUserSchema.SimpleTable; import org.labkey.api.security.User; import org.labkey.api.snd.Event; import org.labkey.api.snd.SNDService; @@ -46,7 +47,7 @@ import java.util.List; import java.util.Map; -public class EventsTable extends SimpleUserSchema.SimpleTable +public class EventsTable extends SimpleTable { /** * Create the simple table. @@ -55,9 +56,9 @@ public class EventsTable extends SimpleUserSchema.SimpleTable * @param schema * @param table */ - public EventsTable(SNDUserSchema schema, TableInfo table) + public EventsTable(SNDUserSchema schema, TableInfo table, ContainerFilter cf) { - super(schema, table); + super(schema, table, cf); } @Override @@ -68,7 +69,7 @@ public QueryUpdateService getUpdateService() protected class UpdateService extends SimpleQueryUpdateService { - public UpdateService(SimpleUserSchema.SimpleTable ti) + public UpdateService(SimpleTable ti) { super(ti, ti.getRealTable()); } diff --git a/src/org/labkey/snd/query/LookupSetsTable.java b/src/org/labkey/snd/query/LookupSetsTable.java index ae63a033..4730cd8a 100644 --- a/src/org/labkey/snd/query/LookupSetsTable.java +++ b/src/org/labkey/snd/query/LookupSetsTable.java @@ -15,29 +15,19 @@ */ package org.labkey.snd.query; -import org.jetbrains.annotations.Nullable; import org.labkey.api.data.ColumnInfo; import org.labkey.api.data.Container; +import org.labkey.api.data.ContainerFilter; import org.labkey.api.data.TableInfo; -import org.labkey.api.dataiterator.DataIteratorBuilder; -import org.labkey.api.query.BatchValidationException; -import org.labkey.api.query.InvalidKeyException; -import org.labkey.api.query.QueryUpdateService; -import org.labkey.api.query.QueryUpdateServiceException; -import org.labkey.api.query.SimpleQueryUpdateService; -import org.labkey.api.query.SimpleUserSchema; -import org.labkey.api.query.UserSchema; -import org.labkey.api.security.User; -import org.labkey.snd.SNDManager; +import org.labkey.api.query.SimpleUserSchema.SimpleTable; +import org.labkey.snd.SNDUserSchema; -import java.sql.SQLException; -import java.util.List; import java.util.Map; /** * Created by marty on 9/17/2017. */ -public class LookupSetsTable extends SimpleUserSchema.SimpleTable +public class LookupSetsTable extends SimpleTable { private static final String CACHE_KEY = LookupSetsTable.class.getName() + "||values"; private static final String SETNAME_COL = "SetName"; @@ -47,9 +37,9 @@ public class LookupSetsTable extends SimpleUserSchema.SimpleTable private Integer _lookupSetId; - public LookupSetsTable(UserSchema schema, TableInfo table, String setName, Map map) + public LookupSetsTable(SNDUserSchema schema, TableInfo table, String setName, Map map, ContainerFilter cf) { - super(schema, table); + super(schema, table, cf); _lookupSetId = (Integer) map.get(LOOKUPSETID_COL); @@ -66,6 +56,7 @@ public static String getCacheKey(Container c) return CACHE_KEY + "||" + c.getId(); } + @Override public LookupSetsTable init() { super.init(); diff --git a/src/org/labkey/snd/query/LookupsTable.java b/src/org/labkey/snd/query/LookupsTable.java index a0194591..8db110a2 100644 --- a/src/org/labkey/snd/query/LookupsTable.java +++ b/src/org/labkey/snd/query/LookupsTable.java @@ -17,6 +17,7 @@ import org.jetbrains.annotations.Nullable; import org.labkey.api.data.Container; +import org.labkey.api.data.ContainerFilter; import org.labkey.api.data.TableInfo; import org.labkey.api.dataiterator.DataIteratorBuilder; import org.labkey.api.query.BatchValidationException; @@ -24,16 +25,16 @@ import org.labkey.api.query.QueryUpdateService; import org.labkey.api.query.QueryUpdateServiceException; import org.labkey.api.query.SimpleQueryUpdateService; -import org.labkey.api.query.SimpleUserSchema; -import org.labkey.api.query.UserSchema; +import org.labkey.api.query.SimpleUserSchema.SimpleTable; import org.labkey.api.security.User; import org.labkey.snd.SNDManager; +import org.labkey.snd.SNDUserSchema; import java.sql.SQLException; import java.util.List; import java.util.Map; -public class LookupsTable extends SimpleUserSchema.SimpleTable +public class LookupsTable extends SimpleTable { /** * Create the simple table. @@ -42,9 +43,9 @@ public class LookupsTable extends SimpleUserSchema.SimpleTable * @param schema * @param table */ - public LookupsTable(UserSchema schema, TableInfo table) + public LookupsTable(SNDUserSchema schema, TableInfo table, ContainerFilter cf) { - super(schema, table); + super(schema, table, cf); } @Override @@ -55,7 +56,7 @@ public QueryUpdateService getUpdateService() protected class UpdateService extends SimpleQueryUpdateService { - public UpdateService(SimpleUserSchema.SimpleTable ti) + public UpdateService(SimpleTable ti) { super(ti, ti.getRealTable()); } diff --git a/src/org/labkey/snd/query/PackagesTable.java b/src/org/labkey/snd/query/PackagesTable.java index 6537b7d2..5f57fecd 100644 --- a/src/org/labkey/snd/query/PackagesTable.java +++ b/src/org/labkey/snd/query/PackagesTable.java @@ -18,6 +18,7 @@ import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; import org.labkey.api.data.Container; +import org.labkey.api.data.ContainerFilter; import org.labkey.api.data.DbScope; import org.labkey.api.data.JdbcType; import org.labkey.api.data.SQLFragment; @@ -35,11 +36,10 @@ import org.labkey.api.query.ExprColumn; import org.labkey.api.query.FieldKey; import org.labkey.api.query.InvalidKeyException; -import org.labkey.api.query.QueryService; import org.labkey.api.query.QueryUpdateService; import org.labkey.api.query.QueryUpdateServiceException; import org.labkey.api.query.SimpleQueryUpdateService; -import org.labkey.api.query.SimpleUserSchema; +import org.labkey.api.query.SimpleUserSchema.SimpleTable; import org.labkey.api.query.UserSchema; import org.labkey.api.security.User; import org.labkey.api.snd.Package; @@ -61,7 +61,7 @@ /** * Created by marty on 8/23/2017. */ -public class PackagesTable extends SimpleUserSchema.SimpleTable +public class PackagesTable extends SimpleTable { /** @@ -71,13 +71,13 @@ public class PackagesTable extends SimpleUserSchema.SimpleTable * @param schema * @param table */ - public PackagesTable(SNDUserSchema schema, TableInfo table) + public PackagesTable(SNDUserSchema schema, TableInfo table, ContainerFilter cf) { - super(schema, table); + super(schema, table, cf); } @Override - public SimpleUserSchema.SimpleTable init() + public PackagesTable init() { super.init(); @@ -124,7 +124,7 @@ public QueryUpdateService getUpdateService() protected class UpdateService extends SimpleQueryUpdateService { - public UpdateService(SimpleUserSchema.SimpleTable ti) + public UpdateService(SimpleTable ti) { super(ti, ti.getRealTable()); } diff --git a/src/org/labkey/snd/query/ProjectsTable.java b/src/org/labkey/snd/query/ProjectsTable.java index e855afbe..3418d329 100644 --- a/src/org/labkey/snd/query/ProjectsTable.java +++ b/src/org/labkey/snd/query/ProjectsTable.java @@ -18,6 +18,7 @@ import org.jetbrains.annotations.NotNull; import org.labkey.api.data.CompareType; import org.labkey.api.data.Container; +import org.labkey.api.data.ContainerFilter; import org.labkey.api.data.DbScope; import org.labkey.api.data.JdbcType; import org.labkey.api.data.SQLFragment; @@ -28,11 +29,10 @@ import org.labkey.api.query.ExprColumn; import org.labkey.api.query.FieldKey; import org.labkey.api.query.InvalidKeyException; -import org.labkey.api.query.QueryService; import org.labkey.api.query.QueryUpdateService; import org.labkey.api.query.QueryUpdateServiceException; import org.labkey.api.query.SimpleQueryUpdateService; -import org.labkey.api.query.SimpleUserSchema; +import org.labkey.api.query.SimpleUserSchema.SimpleTable; import org.labkey.api.query.UserSchema; import org.labkey.api.security.User; import org.labkey.api.snd.SNDService; @@ -46,7 +46,7 @@ import java.util.Map; import java.util.Set; -public class ProjectsTable extends SimpleUserSchema.SimpleTable +public class ProjectsTable extends SimpleTable { /** @@ -56,13 +56,13 @@ public class ProjectsTable extends SimpleUserSchema.SimpleTable * @param schema * @param table */ - public ProjectsTable(SNDUserSchema schema, TableInfo table) + public ProjectsTable(SNDUserSchema schema, TableInfo table, ContainerFilter cf) { - super(schema, table); + super(schema, table, cf); } @Override - public SimpleUserSchema.SimpleTable init() + public ProjectsTable init() { super.init(); @@ -100,7 +100,7 @@ public QueryUpdateService getUpdateService() protected class UpdateService extends SimpleQueryUpdateService { - public UpdateService(SimpleUserSchema.SimpleTable ti) + public UpdateService(SimpleTable ti) { super(ti, ti.getRealTable()); } diff --git a/src/org/labkey/snd/query/SuperPackagesTable.java b/src/org/labkey/snd/query/SuperPackagesTable.java index 3b2c3d18..f1e9ad19 100644 --- a/src/org/labkey/snd/query/SuperPackagesTable.java +++ b/src/org/labkey/snd/query/SuperPackagesTable.java @@ -17,6 +17,7 @@ import org.jetbrains.annotations.NotNull; import org.labkey.api.data.Container; +import org.labkey.api.data.ContainerFilter; import org.labkey.api.data.JdbcType; import org.labkey.api.data.SQLFragment; import org.labkey.api.data.SimpleFilter; @@ -26,11 +27,10 @@ import org.labkey.api.query.ExprColumn; import org.labkey.api.query.FieldKey; import org.labkey.api.query.InvalidKeyException; -import org.labkey.api.query.QueryService; import org.labkey.api.query.QueryUpdateService; import org.labkey.api.query.QueryUpdateServiceException; import org.labkey.api.query.SimpleQueryUpdateService; -import org.labkey.api.query.SimpleUserSchema; +import org.labkey.api.query.SimpleUserSchema.SimpleTable; import org.labkey.api.query.UserSchema; import org.labkey.api.security.User; import org.labkey.api.snd.SuperPackage; @@ -50,7 +50,7 @@ /** * Created by marty on 8/23/2017. */ -public class SuperPackagesTable extends SimpleUserSchema.SimpleTable +public class SuperPackagesTable extends SimpleTable { /** @@ -60,13 +60,13 @@ public class SuperPackagesTable extends SimpleUserSchema.SimpleTable deleteRow(User user, Container container, Map projItemIds = SNDManager.get().getProjectItemIdsForSuperPkgId(container, user, superPkgId); + List projItemIds = SNDManager.getProjectItemIdsForSuperPkgId(container, user, superPkgId); List> projItemRows = new ArrayList<>(); UserSchema schema = SNDManager.getSndUserSchema(container, user);