From 9a1b86a4fc1afd3604041c3614ace9d57d5e0207 Mon Sep 17 00:00:00 2001 From: Ulrik Guenther Date: Fri, 25 Jan 2019 19:32:46 +0100 Subject: [PATCH] DefaultIOService: Log warning in case Opener IOPlugin returns null data, and log error in case no IOPlugin is found for loading or saving data --- src/main/java/org/scijava/io/DefaultIOService.java | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/src/main/java/org/scijava/io/DefaultIOService.java b/src/main/java/org/scijava/io/DefaultIOService.java index 70ac00020..1f74ec075 100644 --- a/src/main/java/org/scijava/io/DefaultIOService.java +++ b/src/main/java/org/scijava/io/DefaultIOService.java @@ -64,10 +64,16 @@ public final class DefaultIOService @Override public Object open(final String source) throws IOException { final IOPlugin opener = getOpener(source); - if (opener == null) return null; // no appropriate IOPlugin + if (opener == null) { + log.error("No opener IOPlugin found for " + source + "."); + return null; + } final Object data = opener.open(source); - if (data == null) return null; // IOPlugin returned no data; canceled? + if (data == null) { + log.warn("Opener IOPlugin " + opener + " returned no data. Canceled?"); + return null; // IOPlugin returned no data; canceled? + } eventService.publish(new DataOpenedEvent(source, data)); return data; @@ -81,6 +87,8 @@ public void save(final Object data, final String destination) if (saver != null) { saver.save(data, destination); eventService.publish(new DataSavedEvent(destination, data)); + } else { + log.error("No Saver IOPlugin found for " + data.toString() + "."); } } }