IQSS / dataverse

Open source research data repository software

Home Page:http://dataverse.org

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

directoryLabel (file path) missing from getDatasetFileDetails from ExportDataProvider

pdurbin opened this issue · comments

While working on Croissant support (#10341) I noticed that the getDatasetFileDetails method of ExportDataProvider doesn't provide the directoryLabel (file path) for files.

(As a workaround, you can get this information from getDatasetORE or getDatasetJson.)

I believe we just need to add one line, like this:

diff --git a/src/main/java/edu/harvard/iq/dataverse/util/json/JsonPrinter.java b/src/main/java/edu/harvard/iq/dataverse/util/json/JsonPrinter.java
index 38dab63384..baff29d2a5 100644
--- a/src/main/java/edu/harvard/iq/dataverse/util/json/JsonPrinter.java
+++ b/src/main/java/edu/harvard/iq/dataverse/util/json/JsonPrinter.java
@@ -729,60 +729,61 @@ public class JsonPrinter {
     public static JsonObjectBuilder json(DataFile df, FileMetadata fileMetadata, boolean forExportDataProvider, boolean returnOwners) {
...
         NullSafeJsonBuilder builder = jsonObjectBuilder()
                 .add("id", df.getId())
                 .add("persistentId", pidString)
                 .add("pidURL", pidURL)
                 .add("filename", fileName)
+                .add("directoryLabel", fileMetadata.getDirectoryLabel())
                 .add("contentType", df.getContentType())
                 .add("friendlyType", df.getFriendlyType())