From 5528add4d22e38fc5b27351d6a56c0896534eba3 Mon Sep 17 00:00:00 2001 From: Jim Myers Date: Fri, 4 Aug 2023 13:25:51 -0400 Subject: [PATCH] add caching for showQueryButton --- .../edu/harvard/iq/dataverse/DatasetPage.java | 20 ++++++++++++------- 1 file changed, 13 insertions(+), 7 deletions(-) diff --git a/src/main/java/edu/harvard/iq/dataverse/DatasetPage.java b/src/main/java/edu/harvard/iq/dataverse/DatasetPage.java index 0611147f07c..fecfd89b73b 100644 --- a/src/main/java/edu/harvard/iq/dataverse/DatasetPage.java +++ b/src/main/java/edu/harvard/iq/dataverse/DatasetPage.java @@ -5531,15 +5531,21 @@ public boolean isShowPreviewButton(Long fileId) { return previewTools.size() > 0; } - public boolean isShowQueryButton(Long fileId) { - DataFile dataFile = datafileService.find(fileId); + Boolean showQueryButton = null; - if(dataFile.isRestricted() || !dataFile.isReleased() || FileUtil.isActivelyEmbargoed(dataFile)){ - return false; + public boolean isShowQueryButton(Long fileId) { + if (showQueryButton == null) { + DataFile dataFile = datafileService.find(fileId); + + if (dataFile.isRestricted() || !dataFile.isReleased() || FileUtil.isActivelyEmbargoed(dataFile)) { + showQueryButton = false; + } else { + + List fileQueryTools = getQueryToolsForDataFile(fileId); + showQueryButton = fileQueryTools.size() > 0; + } } - - List fileQueryTools = getQueryToolsForDataFile(fileId); - return fileQueryTools.size() > 0; + return showQueryButton; } public List getPreviewToolsForDataFile(Long fileId) {