diff --git a/announcements/src/org/labkey/announcements/AnnouncementModule.java b/announcements/src/org/labkey/announcements/AnnouncementModule.java index d80184cc661..ffea874b607 100644 --- a/announcements/src/org/labkey/announcements/AnnouncementModule.java +++ b/announcements/src/org/labkey/announcements/AnnouncementModule.java @@ -178,11 +178,8 @@ public void doStartup(ModuleContext moduleContext) SearchService ss = SearchService.get(); - if (null != ss) - { - ss.addSearchCategory(AnnouncementManager.searchCategory); - ss.addDocumentProvider(this); - } + ss.addSearchCategory(AnnouncementManager.searchCategory); + ss.addDocumentProvider(this); FolderSerializationRegistry fsr = FolderSerializationRegistry.get(); if (null != fsr) diff --git a/api/src/org/labkey/api/data/ContainerManager.java b/api/src/org/labkey/api/data/ContainerManager.java index 286eef5c511..ecae4509833 100644 --- a/api/src/org/labkey/api/data/ContainerManager.java +++ b/api/src/org/labkey/api/data/ContainerManager.java @@ -1910,12 +1910,8 @@ private static boolean delete(final Container c, User user, @Nullable String com LOG.debug("Starting container delete for " + c.getContainerNoun(true) + " " + c.getPath()); - SearchService ss = SearchService.get(); - if (ss != null) - { - // Tell the search indexer to drop work for the container that's about to be deleted - ss.purgeForContainer(c); - } + // Tell the search indexer to drop work for the container that's about to be deleted + SearchService.get().purgeForContainer(c); DbScope.RetryFn tryDeleteContainer = (tx) -> { diff --git a/api/src/org/labkey/api/search/SearchResultTemplate.java b/api/src/org/labkey/api/search/SearchResultTemplate.java index 92cc7972793..c9739637a50 100644 --- a/api/src/org/labkey/api/search/SearchResultTemplate.java +++ b/api/src/org/labkey/api/search/SearchResultTemplate.java @@ -79,19 +79,15 @@ default void addNavTrail(NavTree root, ViewContext ctx, @NotNull SearchScope sco break; } - SearchService ss = SearchService.get(); - if (ss != null) - { - List categories = ss.getCategories(category); + List categories = SearchService.get().getCategories(category); - if (null != categories) - { - List list = categories.stream() - .map(SearchCategory::getDescription) - .toList(); + if (null != categories) + { + List list = categories.stream() + .map(SearchCategory::getDescription) + .toList(); - title += " for " + StringUtilsLabKey.joinWithConjunction(list, "and"); - } + title += " for " + StringUtilsLabKey.joinWithConjunction(list, "and"); } root.addChild(title); diff --git a/api/src/org/labkey/api/search/SearchService.java b/api/src/org/labkey/api/search/SearchService.java index 214024ba7a7..6393c115857 100644 --- a/api/src/org/labkey/api/search/SearchService.java +++ b/api/src/org/labkey/api/search/SearchService.java @@ -97,7 +97,7 @@ static void stripDocIdParameterAndRedirect(@NotNull ActionURL url) // marker value for documents with indexing errors Date failDate = new Timestamp(DateUtil.parseISODateTime("1899-12-30")); - static final SearchService NO_OP = new NoopSearchService(); + SearchService NO_OP = new NoopSearchService(); static @NotNull SearchService get() { diff --git a/api/src/org/labkey/api/webdav/AbstractWebdavResource.java b/api/src/org/labkey/api/webdav/AbstractWebdavResource.java index e9366d454db..0d4f3211d70 100644 --- a/api/src/org/labkey/api/webdav/AbstractWebdavResource.java +++ b/api/src/org/labkey/api/webdav/AbstractWebdavResource.java @@ -185,9 +185,8 @@ public User getModifiedBy() @Override public void setLastIndexed(long indexed, long modified) { - SearchService ss = SearchService.get(); - if (isFile() && ss != null) - ss.setLastIndexedForPath(getPath(), indexed, modified); + if (isFile()) + SearchService.get().setLastIndexedForPath(getPath(), indexed, modified); } @Override diff --git a/assay/src/org/labkey/assay/AssayModule.java b/assay/src/org/labkey/assay/AssayModule.java index 4e8bb7e82c9..171e1730ae1 100644 --- a/assay/src/org/labkey/assay/AssayModule.java +++ b/assay/src/org/labkey/assay/AssayModule.java @@ -202,33 +202,30 @@ protected void startupAfterSpringConfig(ModuleContext moduleContext) PlateManager.get().registerLsidHandlers(); SearchService ss = SearchService.get(); - if (null != ss) - { - // ASSAY_CATEGORY - ss.addSearchCategory(AssayManager.get().ASSAY_CATEGORY); - ss.addResourceResolver(AssayManager.get().ASSAY_CATEGORY.getName(), AssayDocumentProvider.getSearchResolver()); - ss.addDocumentProvider(new AssayDocumentProvider()); - - // ASSAY_RUN_CATEGORY - ss.addSearchCategory(AssayManager.get().ASSAY_RUN_CATEGORY); - ss.addResourceResolver(AssayManager.get().ASSAY_RUN_CATEGORY.getName(), AssayRunDocumentProvider.getResourceResolver()); - ss.addDocumentProvider(new AssayRunDocumentProvider()); - - // ASSAY_BATCH_CATEGORY - ss.addSearchCategory(AssayManager.get().ASSAY_BATCH_CATEGORY); - ss.addResourceResolver(AssayManager.get().ASSAY_BATCH_CATEGORY.getName(), AssayBatchDocumentProvider.getResourceResolver()); - ss.addDocumentProvider(new AssayBatchDocumentProvider()); - - // PLATE_CATEGORY - ss.addSearchCategory(PlateManager.get().PLATE_CATEGORY); - ss.addResourceResolver(PlateManager.get().PLATE_CATEGORY.getName(), PlateDocumentProvider.getResourceResolver()); - ss.addDocumentProvider(new PlateDocumentProvider()); - - // PLATE_SET_CATEGORY - ss.addSearchCategory(PlateManager.get().PLATE_SET_CATEGORY); - ss.addResourceResolver(PlateManager.get().PLATE_SET_CATEGORY.getName(), PlateSetDocumentProvider.getResourceResolver()); - ss.addDocumentProvider(new PlateSetDocumentProvider()); - } + // ASSAY_CATEGORY + ss.addSearchCategory(AssayManager.get().ASSAY_CATEGORY); + ss.addResourceResolver(AssayManager.get().ASSAY_CATEGORY.getName(), AssayDocumentProvider.getSearchResolver()); + ss.addDocumentProvider(new AssayDocumentProvider()); + + // ASSAY_RUN_CATEGORY + ss.addSearchCategory(AssayManager.get().ASSAY_RUN_CATEGORY); + ss.addResourceResolver(AssayManager.get().ASSAY_RUN_CATEGORY.getName(), AssayRunDocumentProvider.getResourceResolver()); + ss.addDocumentProvider(new AssayRunDocumentProvider()); + + // ASSAY_BATCH_CATEGORY + ss.addSearchCategory(AssayManager.get().ASSAY_BATCH_CATEGORY); + ss.addResourceResolver(AssayManager.get().ASSAY_BATCH_CATEGORY.getName(), AssayBatchDocumentProvider.getResourceResolver()); + ss.addDocumentProvider(new AssayBatchDocumentProvider()); + + // PLATE_CATEGORY + ss.addSearchCategory(PlateManager.get().PLATE_CATEGORY); + ss.addResourceResolver(PlateManager.get().PLATE_CATEGORY.getName(), PlateDocumentProvider.getResourceResolver()); + ss.addDocumentProvider(new PlateDocumentProvider()); + + // PLATE_SET_CATEGORY + ss.addSearchCategory(PlateManager.get().PLATE_SET_CATEGORY); + ss.addResourceResolver(PlateManager.get().PLATE_SET_CATEGORY.getName(), PlateSetDocumentProvider.getResourceResolver()); + ss.addDocumentProvider(new PlateSetDocumentProvider()); // add a container listener so we'll know when our container is deleted: ContainerManager.addContainerListener(new AssayContainerListener()); diff --git a/core/src/org/labkey/core/CoreContainerListener.java b/core/src/org/labkey/core/CoreContainerListener.java index 682c8f5ea31..09647eb22b6 100644 --- a/core/src/org/labkey/core/CoreContainerListener.java +++ b/core/src/org/labkey/core/CoreContainerListener.java @@ -38,6 +38,7 @@ import java.beans.PropertyChangeEvent; import java.util.Collection; import java.util.Collections; +import java.util.Objects; public class CoreContainerListener implements ContainerManager.ContainerListener { @@ -54,9 +55,7 @@ public void containerCreated(Container c, User user, @Nullable String auditMsg) { String message = auditMsg == null ? c.getContainerNoun(true) + " " + c.getName() + " was created" : auditMsg; addAuditEvent(user, c, message); - SearchService ss = SearchService.get(); - if (ss != null) - ((CoreModule)ModuleLoader.getInstance().getCoreModule()).enumerateDocuments(ss.defaultTask().getQueue(c, SearchService.PRIORITY.modified), null); + ((CoreModule)ModuleLoader.getInstance().getCoreModule()).enumerateDocuments(SearchService.get().defaultTask().getQueue(c, SearchService.PRIORITY.modified), null); } @Override @@ -110,16 +109,12 @@ public void propertyChange(PropertyChangeEvent propertyChangeEvent) Container c = evt.container; ((CoreModule) ModuleLoader.getInstance().getCoreModule()).enumerateDocuments(SearchService.get().defaultTask().getQueue(c, SearchService.PRIORITY.modified), null); - switch (evt.property) + if (Objects.requireNonNull(evt.property) == ContainerManager.Property.Name) { - case Name: - { - String oldValue = (String) evt.getOldValue(); - String newValue = (String) evt.getNewValue(); - String message = c.getName() + " was renamed from " + oldValue + " to " + newValue; - addAuditEvent(evt.user, c, message); - break; - } + String oldValue = (String) evt.getOldValue(); + String newValue = (String) evt.getNewValue(); + String message = c.getName() + " was renamed from " + oldValue + " to " + newValue; + addAuditEvent(evt.user, c, message); } } } diff --git a/core/src/org/labkey/core/CoreModule.java b/core/src/org/labkey/core/CoreModule.java index 8f128c8df79..97e99c283aa 100644 --- a/core/src/org/labkey/core/CoreModule.java +++ b/core/src/org/labkey/core/CoreModule.java @@ -1130,17 +1130,14 @@ public void moduleStartupComplete(ServletContext servletContext) } SearchService ss = SearchService.get(); - if (null != ss) - { - ss.addDocumentParser(new TabLoader.CsvFactoryNoConversions()); - ss.addDocumentProvider(this); - - // Register indexable DataLoaders with the search service - DataLoaderServiceImpl.get().getFactories() - .stream() - .filter(DataLoaderFactory::indexable) - .forEach(ss::addDocumentParser); - } + ss.addDocumentParser(new TabLoader.CsvFactoryNoConversions()); + ss.addDocumentProvider(this); + + // Register indexable DataLoaders with the search service + DataLoaderServiceImpl.get().getFactories() + .stream() + .filter(DataLoaderFactory::indexable) + .forEach(ss::addDocumentParser); OptionalFeatureService.get().addExperimentalFeatureFlag(AppProps.EXPERIMENTAL_NO_GUESTS, "No Guest Account", diff --git a/core/src/org/labkey/core/admin/AdminController.java b/core/src/org/labkey/core/admin/AdminController.java index 865bb412b9e..10f25586c39 100644 --- a/core/src/org/labkey/core/admin/AdminController.java +++ b/core/src/org/labkey/core/admin/AdminController.java @@ -3716,12 +3716,8 @@ private void clearCaches() Introspector.flushCaches(); LOG.info("Purging all caches"); CacheManager.clearAllKnownCaches(); - SearchService ss = SearchService.get(); - if (null != ss) - { - LOG.info("Purging SearchService queues"); - ss.purgeQueues(); - } + LOG.info("Purging SearchService queues"); + SearchService.get().purgeQueues(); } @Override diff --git a/core/src/org/labkey/core/attachment/AttachmentServiceImpl.java b/core/src/org/labkey/core/attachment/AttachmentServiceImpl.java index 184ae14ccf1..4f29e16b95e 100644 --- a/core/src/org/labkey/core/attachment/AttachmentServiceImpl.java +++ b/core/src/org/labkey/core/attachment/AttachmentServiceImpl.java @@ -438,9 +438,7 @@ private void deleteIndexedAttachment(AttachmentParent parent, String name) private void deleteIndexedAttachment(String parent, String name) { - SearchService ss = SearchService.get(); - if (ss != null) - ss.deleteResource(makeDocId(parent, name)); + SearchService.get().deleteResource(makeDocId(parent, name)); new SqlExecutor(CoreSchema.getInstance().getSchema()).execute(new SQLFragment( "UPDATE core.Documents SET LastIndexed = NULL WHERE LastIndexed IS NOT NULL AND Parent = ? AND DocumentName = ?", parent, name) ); @@ -549,7 +547,6 @@ public void copyAttachment(AttachmentParent parent, Attachment a, String newName @Override public void moveAttachments(Container newContainer, List parents, User auditUser) throws IOException { - SearchService ss = SearchService.get(); for (AttachmentParent parent : parents) { checkSecurityPolicy(auditUser, parent); diff --git a/core/src/org/labkey/core/webdav/DavController.java b/core/src/org/labkey/core/webdav/DavController.java index 8877ecc56af..23c381af920 100644 --- a/core/src/org/labkey/core/webdav/DavController.java +++ b/core/src/org/labkey/core/webdav/DavController.java @@ -801,9 +801,7 @@ else if ("GET".equals(method) && HttpUtil.isBrowser(getRequest())) setLastError(dex); if (dex.getStatus().equals(WebdavStatus.SC_NOT_FOUND)) { - SearchService ss = SearchService.get(); - if (null != ss) - ss.notFound((URLHelper)getRequest().getAttribute(ViewServlet.ORIGINAL_URL_URLHELPER)); + SearchService.get().notFound((URLHelper)getRequest().getAttribute(ViewServlet.ORIGINAL_URL_URLHELPER)); } getResponse().sendError(dex.getStatus(), dex.getMessage()); @@ -6503,9 +6501,7 @@ private void addToIndex(WebdavResource r) private void removeFromIndex(WebdavResource r) { _log.debug("removeFromIndex: " + r.getPath()); - SearchService ss = SearchService.get(); - if (null != ss) - ss.deleteResource(r.getDocumentId()); + SearchService.get().deleteResource(r.getDocumentId()); } diff --git a/experiment/src/org/labkey/experiment/ExpDataIterators.java b/experiment/src/org/labkey/experiment/ExpDataIterators.java index e571878f0b2..f20dfea3a33 100644 --- a/experiment/src/org/labkey/experiment/ExpDataIterators.java +++ b/experiment/src/org/labkey/experiment/ExpDataIterators.java @@ -2038,19 +2038,15 @@ public boolean next() throws BatchValidationException } else { - final SearchService ss = SearchService.get(); - if (null != ss) - { - final ArrayList lsids = new ArrayList<>(_lsids); - final ArrayList rowIds = new LongArrayList(_rowIds); - Collections.sort(rowIds); - final Runnable indexTask = _indexFunction.apply(new SearchIndexDataKeys(rowIds, lsids)); + final ArrayList lsids = new ArrayList<>(_lsids); + final ArrayList rowIds = new LongArrayList(_rowIds); + Collections.sort(rowIds); + final Runnable indexTask = _indexFunction.apply(new SearchIndexDataKeys(rowIds, lsids)); - if (null != DbScope.getLabKeyScope()) - DbScope.getLabKeyScope().addCommitTask(indexTask, DbScope.CommitTaskOption.POSTCOMMIT); - else - indexTask.run(); - } + if (null != DbScope.getLabKeyScope()) + DbScope.getLabKeyScope().addCommitTask(indexTask, DbScope.CommitTaskOption.POSTCOMMIT); + else + indexTask.run(); } return hasNext; } diff --git a/experiment/src/org/labkey/experiment/ExperimentModule.java b/experiment/src/org/labkey/experiment/ExperimentModule.java index 7456235c24b..5d705f50de0 100644 --- a/experiment/src/org/labkey/experiment/ExperimentModule.java +++ b/experiment/src/org/labkey/experiment/ExperimentModule.java @@ -353,9 +353,7 @@ public WebPartView getWebPartView(@NotNull ViewContext portalCtx, @NotNull Po private void addDataResourceResolver(String categoryName) { - SearchService ss = SearchService.get(); - - ss.addResourceResolver(categoryName, new SearchService.ResourceResolver() + SearchService.get().addResourceResolver(categoryName, new SearchService.ResourceResolver() { @Override public WebdavResource resolve(@NotNull String resourceIdentifier) @@ -394,9 +392,7 @@ public Map> getCustomSearchJsonMap(User user, @NotNu private void addDataClassResourceResolver(String categoryName) { - SearchService ss = SearchService.get(); - - ss.addResourceResolver(categoryName, new SearchService.ResourceResolver(){ + SearchService.get().addResourceResolver(categoryName, new SearchService.ResourceResolver(){ @Override public Map getCustomSearchJson(User user, @NotNull String resourceIdentifier) { @@ -420,9 +416,7 @@ public Map getCustomSearchJson(User user, @NotNull String resour private void addSampleTypeResourceResolver(String categoryName) { - SearchService ss = SearchService.get(); - - ss.addResourceResolver(categoryName, new SearchService.ResourceResolver(){ + SearchService.get().addResourceResolver(categoryName, new SearchService.ResourceResolver(){ @Override public Map getCustomSearchJson(User user, @NotNull String resourceIdentifier) { @@ -446,9 +440,7 @@ public Map getCustomSearchJson(User user, @NotNull String resour private void addSampleResourceResolver(String categoryName) { - SearchService ss = SearchService.get(); - - ss.addResourceResolver(categoryName, new SearchService.ResourceResolver(){ + SearchService.get().addResourceResolver(categoryName, new SearchService.ResourceResolver(){ @Override public Map getCustomSearchJson(User user, @NotNull String resourceIdentifier) { diff --git a/experiment/src/org/labkey/experiment/api/ExperimentServiceImpl.java b/experiment/src/org/labkey/experiment/api/ExperimentServiceImpl.java index b0db3143c45..5d8eeb3f056 100644 --- a/experiment/src/org/labkey/experiment/api/ExperimentServiceImpl.java +++ b/experiment/src/org/labkey/experiment/api/ExperimentServiceImpl.java @@ -6052,13 +6052,9 @@ public void deleteDataClass(long rowId, Container c, User user, @Nullable final QueryService.get().fireQueryDeleted(user, c, null, ExpSchema.SCHEMA_EXP_DATA, singleton(dataClass.getName())); // remove DataClass from search index - SearchService ss = SearchService.get(); - if (null != ss) + try (Timing ignored = MiniProfiler.step("search docs")) { - try (Timing ignored = MiniProfiler.step("search docs")) - { - ss.deleteResource(dataClass.getDocumentId()); - } + SearchService.get().deleteResource(dataClass.getDocumentId()); } } diff --git a/experiment/src/org/labkey/experiment/controllers/exp/ExperimentController.java b/experiment/src/org/labkey/experiment/controllers/exp/ExperimentController.java index 5537fab3d14..2daf8a17a39 100644 --- a/experiment/src/org/labkey/experiment/controllers/exp/ExperimentController.java +++ b/experiment/src/org/labkey/experiment/controllers/exp/ExperimentController.java @@ -7422,10 +7422,6 @@ public static class CheckDataClassesIndexedAction extends ReadOnlyApiAction> notInIndex = new ArrayList<>(100); List list = ExperimentService.get().getDataClasses(getContainer(), getUser(), false); @@ -7436,7 +7432,7 @@ public Object execute(Object o, BindException errors) throws Exception String docId = d.getDocumentId(); if (docId != null) { - SearchService.SearchHit hit = search.find(docId); + SearchService.SearchHit hit = SearchService.get().find(docId); if (hit == null) { JSONObject props = ExperimentJSONConverter.serializeData(d, getUser(), ExperimentJSONConverter.DEFAULT_SETTINGS); diff --git a/issues/src/org/labkey/issue/IssuesModule.java b/issues/src/org/labkey/issue/IssuesModule.java index f3f307ebe22..b6566050313 100644 --- a/issues/src/org/labkey/issue/IssuesModule.java +++ b/issues/src/org/labkey/issue/IssuesModule.java @@ -144,13 +144,10 @@ public void doStartup(ModuleContext moduleContext) SearchService ss = SearchService.get(); - if (null != ss) - { - ss.addSearchCategory(IssueManager.searchCategory); - ss.addResourceResolver("issue", IssueManager.getSearchResolver()); - ss.addDocumentProvider(this); - ss.addSearchResultTemplate(new IssuesController.IssueSearchResultTemplate()); - } + ss.addSearchCategory(IssueManager.searchCategory); + ss.addResourceResolver("issue", IssueManager.getSearchResolver()); + ss.addDocumentProvider(this); + ss.addSearchResultTemplate(new IssuesController.IssueSearchResultTemplate()); UsageMetricsService svc = UsageMetricsService.get(); if (svc != null) diff --git a/list/src/org/labkey/list/ListModule.java b/list/src/org/labkey/list/ListModule.java index 6ca75a7db52..dfdf613d4c1 100644 --- a/list/src/org/labkey/list/ListModule.java +++ b/list/src/org/labkey/list/ListModule.java @@ -138,11 +138,8 @@ public void startupAfterSpringConfig(ModuleContext moduleContext) } SearchService ss = SearchService.get(); - if (null != ss) - { - ss.addDocumentProvider(ListManager.get()); - ss.addSearchCategory(ListManager.listCategory); - } + ss.addDocumentProvider(ListManager.get()); + ss.addSearchCategory(ListManager.listCategory); AdminLinkManager.getInstance().addListener((adminNavTree, container, user) -> { diff --git a/list/src/org/labkey/list/model/ListManager.java b/list/src/org/labkey/list/model/ListManager.java index 50447942a5b..ea2b6a046cc 100644 --- a/list/src/org/labkey/list/model/ListManager.java +++ b/list/src/org/labkey/list/model/ListManager.java @@ -921,20 +921,14 @@ private void handleAttachmentParents(@NotNull ListDefinition list, AttachmentPar // Un-index the entire list doc, but leave the list items alone private void deleteIndexedEntireListDoc(ListDefinition list) { - SearchService ss = SearchService.get(); - - if (null != ss) - ss.deleteResource(getDocumentId(list)); + SearchService.get().deleteResource(getDocumentId(list)); } // Un-index all list items, but leave the entire list doc alone private void deleteIndexedItems(ListDefinition list) { - SearchService ss = SearchService.get(); - - if (null != ss) - ss.deleteResourcesForPrefix(getDocumentId(list, null)); + SearchService.get().deleteResourcesForPrefix(getDocumentId(list, null)); } diff --git a/pipeline/src/org/labkey/pipeline/api/PipelineManager.java b/pipeline/src/org/labkey/pipeline/api/PipelineManager.java index 357735cb5dc..c1b2f30b6e3 100644 --- a/pipeline/src/org/labkey/pipeline/api/PipelineManager.java +++ b/pipeline/src/org/labkey/pipeline/api/PipelineManager.java @@ -196,9 +196,7 @@ static public void setPipelineRoot(User user, Container container, URI[] roots, } org.labkey.api.util.Path davPath = WebdavService.getPath().append(container.getParsedPath()).append(FileContentService.PIPELINE_LINK); - SearchService ss = SearchService.get(); - if (null != ss) - ss.addPathToCrawl(davPath, null); + SearchService.get().addPathToCrawl(davPath, null); } } finally diff --git a/query/src/org/labkey/query/QueryModule.java b/query/src/org/labkey/query/QueryModule.java index 4ae5a44f6d6..26334e2a37e 100644 --- a/query/src/org/labkey/query/QueryModule.java +++ b/query/src/org/labkey/query/QueryModule.java @@ -276,12 +276,9 @@ public void doStartup(ModuleContext moduleContext) } SearchService ss = SearchService.get(); + ss.addDocumentProvider(ExternalSchemaDocumentProvider.getInstance()); + ss.addSearchCategory(ExternalSchemaDocumentProvider.externalTableCategory); - if (null != ss) - { - ss.addDocumentProvider(ExternalSchemaDocumentProvider.getInstance()); - ss.addSearchCategory(ExternalSchemaDocumentProvider.externalTableCategory); - } if (null != PropertyService.get()) PropertyService.get().registerDomainKind(new SimpleTableDomainKind()); diff --git a/search/src/org/labkey/search/SearchContainerListener.java b/search/src/org/labkey/search/SearchContainerListener.java index 79ef1082492..e7332a85b31 100644 --- a/search/src/org/labkey/search/SearchContainerListener.java +++ b/search/src/org/labkey/search/SearchContainerListener.java @@ -30,11 +30,7 @@ public class SearchContainerListener extends ContainerManager.AbstractContainerL @Override public void containerCreated(Container c, User user) { - SearchService ss = SearchService.get(); - if (null != ss) - { - DavCrawler.getInstance().addPathToCrawl(WebdavService.getPath().append(c.getParsedPath()), null); - } + DavCrawler.getInstance().addPathToCrawl(WebdavService.getPath().append(c.getParsedPath()), null); } @Override diff --git a/search/src/org/labkey/search/SearchController.java b/search/src/org/labkey/search/SearchController.java index bb3b183bc67..d5ad92ba94d 100644 --- a/search/src/org/labkey/search/SearchController.java +++ b/search/src/org/labkey/search/SearchController.java @@ -280,13 +280,8 @@ public void validateCommand(AdminForm target, Errors errors) @Override public ModelAndView getView(AdminForm form, boolean reshow, BindException errors) { - SearchService ss = SearchService.get(); - - if (null == ss) - throw new ConfigurationException("Search is misconfigured"); - @SuppressWarnings({"ThrowableResultOfMethodCallIgnored"}) - Throwable t = ss.getConfigurationError(); + Throwable t = SearchService.get().getConfigurationError(); VBox vbox = new VBox(); @@ -324,11 +319,6 @@ public ModelAndView getView(AdminForm form, boolean reshow, BindException errors public boolean handlePost(AdminForm form, BindException errors) { SearchService ss = SearchService.get(); - if (null == ss) - { - errors.reject(ERROR_MSG, "Indexing service is not running"); - return false; - } if (form.isStart()) { @@ -789,8 +779,6 @@ public ModelAndView getView(SearchForm form, BindException errors) _scope = form.getSearchScope(); _form = form; - SearchService ss = SearchService.get(); - if (null == _scope || null == _scope.getRoot(getContainer())) { throw new NotFoundException(); diff --git a/search/src/org/labkey/search/SearchModule.java b/search/src/org/labkey/search/SearchModule.java index a8572dfcb2f..a14d59e4ba4 100644 --- a/search/src/org/labkey/search/SearchModule.java +++ b/search/src/org/labkey/search/SearchModule.java @@ -139,27 +139,23 @@ public void doStartup(ModuleContext moduleContext) @Override public void handle(Map properties) { - SearchService ss = SearchService.get(); - if (null == ss) - LOG.error("Search service is not present"); - else - properties.forEach((ssp, sp) -> { - try - { - ssp.setProperty(ss, _searchIndexStartupHandler, sp.getValue()); - } - catch (Exception e) - { - LOG.error("Exception while attempting to set startup property", e); - } - }); + properties.forEach((ssp, sp) -> { + try + { + ssp.setProperty(SearchService.get(), _searchIndexStartupHandler, sp.getValue()); + } + catch (Exception e) + { + LOG.error("Exception while attempting to set startup property", e); + } + }); } } ); final SearchService ss = SearchService.get(); - if (null != ss) + if (ss != SearchService.NO_OP) { AdminConsole.addLink(AdminConsole.SettingsLinkType.Management, "full-text search", new ActionURL(SearchController.AdminAction.class, null)); @@ -195,15 +191,12 @@ public void startBackgroundThreads() { SearchService ss = SearchService.get(); - if (null != ss) - { - // Execute any reindexing operations in the background to not block startup, Issue #48960 - JobRunner.getDefault().execute(() -> { - _searchIndexStartupHandler.reindexIfNeeded(ss); - ss.start(); - DavCrawler.getInstance().start(); - }); - } + // Execute any reindexing operations in the background to not block startup, Issue #48960 + JobRunner.getDefault().execute(() -> { + _searchIndexStartupHandler.reindexIfNeeded(ss); + ss.start(); + DavCrawler.getInstance().start(); + }); } private final SearchIndexStartupHandler _searchIndexStartupHandler = new SearchIndexStartupHandler(); diff --git a/search/src/org/labkey/search/model/SavePaths.java b/search/src/org/labkey/search/model/SavePaths.java index 6c7c3d9b8d8..7ff93620012 100644 --- a/search/src/org/labkey/search/model/SavePaths.java +++ b/search/src/org/labkey/search/model/SavePaths.java @@ -467,11 +467,6 @@ public boolean updateFile(@NotNull Path path, @NotNull Date lastIndexed, Date mo private static DbSchema getSearchSchema() { - SearchService ss = SearchService.get(); - - if (null != ss) - return ss.getSchema(); - else - return null; + return SearchService.get().getSchema(); } } diff --git a/search/src/org/labkey/search/view/indexerAdmin.jsp b/search/src/org/labkey/search/view/indexerAdmin.jsp index e4673db94cf..495217b4f45 100644 --- a/search/src/org/labkey/search/view/indexerAdmin.jsp +++ b/search/src/org/labkey/search/view/indexerAdmin.jsp @@ -45,7 +45,7 @@ String indexDirectoryPath = null != indexDirectory ? indexDirectory.getPath() :

<%=h(form.getMessage())%>
<% } -if (null == ss) +if (ss == SearchService.NO_OP) { %>Indexing service is not configured.<% } diff --git a/search/src/org/labkey/search/view/indexerStats.jsp b/search/src/org/labkey/search/view/indexerStats.jsp index a18e2ad81c2..a29d5737721 100644 --- a/search/src/org/labkey/search/view/indexerStats.jsp +++ b/search/src/org/labkey/search/view/indexerStats.jsp @@ -27,7 +27,7 @@ <% SearchService ss = SearchService.get(); -if (null == ss) +if (ss == SearchService.NO_OP) { %>Indexing service is not configured.<% } diff --git a/search/src/org/labkey/search/view/searchStats.jsp b/search/src/org/labkey/search/view/searchStats.jsp index f0f13e12041..125b77fc824 100644 --- a/search/src/org/labkey/search/view/searchStats.jsp +++ b/search/src/org/labkey/search/view/searchStats.jsp @@ -26,7 +26,7 @@ <% SearchService ss = SearchService.get(); -if (null == ss) +if (ss == SearchService.NO_OP) { %>Indexing service is not configured.<% } diff --git a/study/src/org/labkey/study/model/StudyManager.java b/study/src/org/labkey/study/model/StudyManager.java index 22391cb4708..8727f85014f 100644 --- a/study/src/org/labkey/study/model/StudyManager.java +++ b/study/src/org/labkey/study/model/StudyManager.java @@ -4224,9 +4224,7 @@ public Map getAliasMap(StudyImpl study, User user, String ptid) private void unindexDataset(DatasetDefinition ds) { String docid = "dataset:" + new Path(ds.getContainer().getId(), String.valueOf(ds.getDatasetId())); - SearchService ss = SearchService.get(); - if (null != ss) - ss.deleteResource(docid); + SearchService.get().deleteResource(docid); } public static void indexDatasets(SearchService.TaskIndexingQueue queue, Date modifiedSince) diff --git a/wiki/src/org/labkey/wiki/WikiController.java b/wiki/src/org/labkey/wiki/WikiController.java index 2ca4951b390..ba44a15aa15 100644 --- a/wiki/src/org/labkey/wiki/WikiController.java +++ b/wiki/src/org/labkey/wiki/WikiController.java @@ -152,9 +152,7 @@ protected BaseWikiPermissions getPermissions() { VBox vbox = new VBox(); - SearchService ss = SearchService.get(); - if (null != ss) - vbox.addView(ss.getSearchView(false, 0, false, true)); + vbox.addView(SearchService.get().getSearchView(false, 0, false, true)); for (WikiPartFactory factory : WikiManager.get().getWikiPartFactories()) { @@ -1185,9 +1183,7 @@ public ModelAndView getView(WikiNameForm form, BindException errors) //set new page title to be the name. _wikiversion.setTitle(name); // check if this is a search result hit - SearchService ss = SearchService.get(); - if (ss != null) - ss.notFound(getViewContext().getActionURL()); + SearchService.get().notFound(getViewContext().getActionURL()); } else { diff --git a/wiki/src/org/labkey/wiki/WikiModule.java b/wiki/src/org/labkey/wiki/WikiModule.java index 60685e15a97..4494e1b62bd 100644 --- a/wiki/src/org/labkey/wiki/WikiModule.java +++ b/wiki/src/org/labkey/wiki/WikiModule.java @@ -114,11 +114,8 @@ public void doStartup(ModuleContext moduleContext) bootstrap(moduleContext); SearchService ss = SearchService.get(); - if (null != ss) - { - ss.addSearchCategory(WikiManager.searchCategory); - ss.addDocumentProvider(this); - } + ss.addSearchCategory(WikiManager.searchCategory); + ss.addDocumentProvider(this); FolderSerializationRegistry.get().addFactories(new WikiWriterFactory(), new WikiImporterFactory());