From 8e24e299a9fcb704c293367901bc477df158c58d Mon Sep 17 00:00:00 2001 From: Philip Durbin Date: Wed, 29 May 2024 17:07:55 -0400 Subject: [PATCH] remove cruft from previous repo We started from the dataverse-exporters repo to keep our commits. --- dataverse-spi-export-examples/.gitignore | 1 - dataverse-spi-export-examples/pom.xml | 63 ------------ .../spi/export/examples/MyJSONExporter.java | 96 ------------------ .../export/examples/MyJSONExporterTest.java | 93 ----------------- .../dataverse-spi-export-examples-2.0.0.jar | Bin 4198 -> 0 bytes 5 files changed, 253 deletions(-) delete mode 100644 dataverse-spi-export-examples/.gitignore delete mode 100644 dataverse-spi-export-examples/pom.xml delete mode 100644 dataverse-spi-export-examples/src/main/java/io/gdcc/spi/export/examples/MyJSONExporter.java delete mode 100644 dataverse-spi-export-examples/src/test/java/io/gdcc/spi/export/examples/MyJSONExporterTest.java delete mode 100644 prebuilt-examples/dataverse-spi-export-examples-2.0.0.jar diff --git a/dataverse-spi-export-examples/.gitignore b/dataverse-spi-export-examples/.gitignore deleted file mode 100644 index eb5a316..0000000 --- a/dataverse-spi-export-examples/.gitignore +++ /dev/null @@ -1 +0,0 @@ -target diff --git a/dataverse-spi-export-examples/pom.xml b/dataverse-spi-export-examples/pom.xml deleted file mode 100644 index 1ec0abf..0000000 --- a/dataverse-spi-export-examples/pom.xml +++ /dev/null @@ -1,63 +0,0 @@ - - - 4.0.0 - - io.gdcc - dataverse-spi-export-examples - 2.0.0 - jar - - - 17 - 17 - - - - - io.gdcc - dataverse-spi - 2.0.0 - - - com.google.auto.service - auto-service - 1.0.1 - - - jakarta.json - jakarta.json-api - provided - 2.1.0 - - - jakarta.ws.rs - jakarta.ws.rs-api - provided - 3.1.0 - - - org.eclipse.parsson - parsson - 1.1.5 - - - org.junit.jupiter - junit-jupiter - 5.10.1 - test - - - - - - maven-compiler-plugin - - 17 - - - - - - diff --git a/dataverse-spi-export-examples/src/main/java/io/gdcc/spi/export/examples/MyJSONExporter.java b/dataverse-spi-export-examples/src/main/java/io/gdcc/spi/export/examples/MyJSONExporter.java deleted file mode 100644 index 9fd991f..0000000 --- a/dataverse-spi-export-examples/src/main/java/io/gdcc/spi/export/examples/MyJSONExporter.java +++ /dev/null @@ -1,96 +0,0 @@ - -package io.gdcc.spi.export.examples; - -import com.google.auto.service.AutoService; -import io.gdcc.spi.export.ExportDataProvider; -import io.gdcc.spi.export.ExportException; -import io.gdcc.spi.export.Exporter; -import java.io.OutputStream; -import java.util.Locale; - -import jakarta.json.Json; -import jakarta.json.JsonObject; -import jakarta.json.JsonObjectBuilder; -import jakarta.ws.rs.core.MediaType; - -/** - * An example exporter that exports dataset metadata as a JSON object. This - * simple example demonstrates what is needed to register as a Dataverse - * Exporter and how to retrieve input metadata and deliver the generated - * metadata format. The new format itself is a minor variation of the built-in - * JSON metadata format. - * - */ -//This annotation makes the Exporter visible to Dataverse. How it works is well documented on the Internet. -@AutoService(Exporter.class) -//All Exporter implementations must implement this interface or the XMLExporter interface that extends it. -public class MyJSONExporter implements Exporter { - - // These methods provide information about the Exporter to Dataverse - - /* - * The name of the format it creates. If this format is already provided by a - * built-in exporter, this Exporter will override the built-in one. (Note that - * exports are cached, so existing metadata export files are not updated - * immediately.) - */ - @Override - public String getFormatName() { - return "dataverse_json"; - } - - // The display name shown in the UI - @Override - public String getDisplayName(Locale locale) { - // This example includes the language in the name to demonstrate that locale is - // available. A production exporter would instead use the locale to generate an - // appropriate translation. - return "My JSON in " + locale.getLanguage(); - } - - // Whether the exported format should be available as an option for Harvesting - @Override - public Boolean isHarvestable() { - return false; - } - - // Whether the exported format should be available for download in the UI and - // API - @Override - public Boolean isAvailableToUsers() { - return true; - } - - // Defines the mime type of the exported format - used when metadata is - // downloaded, i.e. to trigger an appropriate viewer in the user's browser. - @Override - public String getMediaType() { - return MediaType.APPLICATION_JSON; - } - - // This method is called by Dataverse when metadata for a given dataset in this - // format is requested. - @Override - public void exportDataset(ExportDataProvider dataProvider, OutputStream outputStream) throws ExportException { - try { - // Start building the output format. - JsonObjectBuilder datasetJsonBuilder = Json.createObjectBuilder(); - datasetJsonBuilder.add("name", getFormatName()); - /* - * Retrieve and parse the input metadata. In this example, no parsing is done - * and the input metadata is simply copied into the JSON structure as a value - * for the inputJson field. A production exporter would parse the input metadata - * and include only the metadata matching the output format. - */ - datasetJsonBuilder.add("inputJson", dataProvider.getDatasetJson()); - // Write the output format to the output stream. - outputStream.write(datasetJsonBuilder.build().toString().getBytes("UTF8")); - // Flush the output stream - The output stream is automatically closed by - // Dataverse and should not be closed in the Exporter. - outputStream.flush(); - } catch (Exception e) { - //If anything goes wrong, an Exporter should throw an ExportException. - throw new ExportException("Unknown exception caught during JSON export."); - } - } -} \ No newline at end of file diff --git a/dataverse-spi-export-examples/src/test/java/io/gdcc/spi/export/examples/MyJSONExporterTest.java b/dataverse-spi-export-examples/src/test/java/io/gdcc/spi/export/examples/MyJSONExporterTest.java deleted file mode 100644 index 65267f5..0000000 --- a/dataverse-spi-export-examples/src/test/java/io/gdcc/spi/export/examples/MyJSONExporterTest.java +++ /dev/null @@ -1,93 +0,0 @@ -package io.gdcc.spi.export.examples; - -import io.gdcc.spi.export.ExportDataProvider; -import jakarta.json.Json; -import jakarta.json.JsonArray; -import jakarta.json.JsonObject; -import java.io.ByteArrayOutputStream; -import java.io.OutputStream; -import java.util.Locale; -import org.junit.jupiter.api.AfterEach; -import static org.junit.jupiter.api.Assertions.*; -import org.junit.jupiter.api.BeforeAll; -import org.junit.jupiter.api.Test; - -public class MyJSONExporterTest { - - static MyJSONExporter myJsonExporter; - static OutputStream outputStream; - static ExportDataProvider dataProvider; - - @BeforeAll - public static void setUp() { - myJsonExporter = new MyJSONExporter(); - outputStream = new ByteArrayOutputStream(); - dataProvider = new ExportDataProvider() { - @Override - public JsonObject getDatasetJson() { - return Json.createObjectBuilder() - .add("foo", "bar") - .build(); - } - - @Override - public JsonObject getDatasetORE() { - return Json.createObjectBuilder().build(); - } - - @Override - public JsonArray getDatasetFileDetails() { - return Json.createArrayBuilder().build(); - } - - @Override - public JsonObject getDatasetSchemaDotOrg() { - return Json.createObjectBuilder().build(); - } - - @Override - public String getDataCiteXml() { - return null; - } - }; - } - - @AfterEach - public void tearDown() { - } - - @Test - public void testGetFormatName() { - assertEquals("dataverse_json", myJsonExporter.getFormatName()); - } - - @Test - public void testGetDisplayName() { - assertEquals("My JSON in en", myJsonExporter.getDisplayName(new Locale("en", "US"))); - } - - @Test - public void testIsHarvestable() { - assertEquals(false, myJsonExporter.isHarvestable()); - } - - @Test - public void testIsAvailableToUsers() { - assertEquals(true, myJsonExporter.isAvailableToUsers()); - } - - @Test - public void testGetMediaType() { - assertEquals("application/json", myJsonExporter.getMediaType()); - } - - @Test - public void testExportDataset() throws Exception { - myJsonExporter.exportDataset(dataProvider, outputStream); - String expected = """ -{"name":"dataverse_json","inputJson":{"foo":"bar"}} -"""; - assertEquals(expected.trim(), outputStream.toString().trim()); - } - -} diff --git a/prebuilt-examples/dataverse-spi-export-examples-2.0.0.jar b/prebuilt-examples/dataverse-spi-export-examples-2.0.0.jar deleted file mode 100644 index a54bacd0536b76f0c40f5cf55efaa2b1b438eafd..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4198 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 nTNoqKKH33slNH&z7