Ticket #1921 (closed task: fixed)

Opened 6 years ago

Last modified 6 years ago

Create an IOPlugin

Reported by: curtis Owned by: curtis
Priority: critical Milestone: imagej2-b8-analysis
Component: I/O Version:
Severity: non-issue Keywords:
Cc: Blocked By:
Blocking: #1920

Description

File Open and File Save are currently extensible for images, thanks to SCIFIO. But they need to be generally extensible beyond just images. That's where IOPlugin comes in. This plugin type will have a flagship ImageIOPlugin that just uses SCIFIO. But we'll need other IOPlugin implementations for handling stuff like LUTs, text files, scripts... whatever we want ImageJ to be able to open.

The IOService should be extended to be a HandlerService<String, IOPlugin> (where String is the data source, typically but not necessarily a filename). The DragAndDropService still needs to exist and its infrastructure is necessary, but the number of DragAndDropHandler plugins should decrease; there only needs to be one FileDragAndDropHandler that just calls ioService.load(file) rather than worrying about what type of file it is.

Change History

comment:1 Changed 6 years ago by curtis

  • Blocking 1920 added

comment:2 Changed 6 years ago by curtis

  • Status changed from new to closed
  • Resolution set to fixed

Done in c239a613.

Note: See TracTickets for help on using tickets.