diff --git a/src/main/java/de/landsh/opendata/OpenDataUpdatesPiveau.java b/src/main/java/de/landsh/opendata/OpenDataUpdatesPiveau.java index ac6fb1b76af596b13b1499339a71c3b87078ff0f..35f2119c36840a47836248b60b583a370cede075 100644 --- a/src/main/java/de/landsh/opendata/OpenDataUpdatesPiveau.java +++ b/src/main/java/de/landsh/opendata/OpenDataUpdatesPiveau.java @@ -34,7 +34,6 @@ import java.time.LocalDate; import java.time.LocalDateTime; import java.time.format.DateTimeFormatter; import java.util.*; -import java.util.stream.Collectors; /** * Bearbeiten von Datenänderungen direkt über das CKAN API. @@ -58,7 +57,7 @@ public class OpenDataUpdatesPiveau { public static void main(String[] args) throws Exception { if (args.length < 1 || !new File(args[0]).exists()) { - System.out.println("USAGE: java OpenDataUpdatesCkan config.yml [single_dataset_id]"); + System.out.println("USAGE: java OpenDataUpdatesPiveau config.yml [single_dataset_id]"); System.exit(2); } @@ -96,6 +95,10 @@ public class OpenDataUpdatesPiveau { } + /** + * @deprecated old CKAN stuff + */ + @Deprecated public static String getExtrasValue(JSONObject dataset, String key) { final JSONArray extras = dataset.getJSONArray("extras"); for (Object o : extras) { @@ -125,6 +128,10 @@ public class OpenDataUpdatesPiveau { return result; } + /** + * @deprecated old CKAN stuff + */ + @Deprecated static void removeExtraValue(JSONObject dataset, String key) { JSONArray extras = dataset.getJSONArray("extras"); int foundAtPosition = -1; @@ -139,6 +146,10 @@ public class OpenDataUpdatesPiveau { } } + /** + * @deprecated old CKAN stuff + */ + @Deprecated static void setExtraValue(JSONObject dataset, String key, String value) { final JSONObject entry = new JSONObject(); entry.put("key", key); @@ -263,11 +274,11 @@ public class OpenDataUpdatesPiveau { // nimm die Datei-Endung als Format für die Distribution format = StringUtils.upperCase(StringUtils.substringAfterLast(file.getName(), ".")); } - + dataset.addProperty(DCAT.distribution, createDistribution(file, file.getName(), format, getMimeType(format))); if (!dryRun) { - if (uploadFile(file, file.getName(), getMimeType(format) )) { + if (uploadFile(file, file.getName(), getMimeType(format))) { log.info("Datei {} erfolgreich hochgeladen.", file.getName()); } else { log.warn("Hochladen fehlgeschlagen für Datei {}", file.getName()); @@ -302,7 +313,7 @@ public class OpenDataUpdatesPiveau { * Create a new Distribution resource. */ private Resource createDistribution(File file, String name, String format, String mimeType) { - + return null; } @@ -319,14 +330,14 @@ public class OpenDataUpdatesPiveau { return false; } - final String newestDatasetId = ckanAPI.findNewestDataset(update.collectionId); + final Optional<String> newestDatasetId = findNewestDataset(update.collectionId); - if (newestDatasetId == null) { + if (newestDatasetId.isEmpty()) { log.error("In der Collection {} gibt es keinen Datensatz.", update.collectionId); return false; } - final JSONObject existingDataset = ckanAPI.readDataset(newestDatasetId); + final JSONObject existingDataset = ckanAPI.readDataset(newestDatasetId.get()); log.info("Änderung erkannt an Dataset " + newestDatasetId); final String timeNow = LocalDateTime.now().format(DateTimeFormatter.ISO_DATE_TIME); final DatasetMetadata metadata = readMetadata(localDataDir); @@ -418,6 +429,10 @@ public class OpenDataUpdatesPiveau { } + Optional<String> findNewestDataset(String collectionId) throws IOException { + return Optional.ofNullable(ckanAPI.findNewestDataset(collectionId)); + } + /** * Datei wird einfach überschrieben und ist nicht öffentlich erreichbar. * <p> @@ -431,14 +446,14 @@ public class OpenDataUpdatesPiveau { return false; } - final String newestDatasetId = ckanAPI.findNewestDataset(update.collectionId); + final Optional<String> newestDatasetId = findNewestDataset(update.collectionId); - if (newestDatasetId == null) { + if (newestDatasetId.isEmpty()) { log.error("In der Collection {} gibt es keinen Datensatz.", update.collectionId); return false; } - final JSONObject existingDataset = ckanAPI.readDataset(newestDatasetId); + final JSONObject existingDataset = ckanAPI.readDataset(newestDatasetId.get()); log.info("Änderung erkannt an Dataset " + newestDatasetId); final String timeNow = LocalDateTime.now().format(DateTimeFormatter.ISO_DATE_TIME);