Skip to content

Commit 87b9216

Browse files
committed
IOService: fire event when data is opened or saved
1 parent d837ad5 commit 87b9216

File tree

1 file changed

+6
-1
lines changed

1 file changed

+6
-1
lines changed

src/main/java/org/scijava/io/DefaultIOService.java

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,8 @@
3434
import java.io.IOException;
3535

3636
import org.scijava.event.EventService;
37+
import org.scijava.io.event.DataOpenedEvent;
38+
import org.scijava.io.event.DataSavedEvent;
3739
import org.scijava.log.LogService;
3840
import org.scijava.plugin.AbstractHandlerService;
3941
import org.scijava.plugin.Parameter;
@@ -80,14 +82,17 @@ public <D> IOPlugin<D> getSaver(final D data, final String destination) {
8082

8183
@Override
8284
public Object open(final String source) throws IOException {
83-
return getOpener(source).open(source);
85+
final Object data = getOpener(source).open(source);
86+
eventService.publish(new DataOpenedEvent(source, data));
87+
return data;
8488
}
8589

8690
@Override
8791
public void save(final Object data, final String destination)
8892
throws IOException
8993
{
9094
getSaver(data, destination).save(data, destination);
95+
eventService.publish(new DataSavedEvent(destination, data));
9196
}
9297

9398
// -- HandlerService methods --

0 commit comments

Comments
 (0)