Package org.scijava.io
Class DefaultIOService
-
- All Implemented Interfaces:
Comparable<Prioritized>,Contextual,Disposable,Identifiable,Initializable,IOService,Locatable,Logged,HandlerService<Location,IOPlugin<?>>,HasPluginInfo,PTService<IOPlugin<?>>,RichPlugin,SciJavaPlugin,SingletonService<IOPlugin<?>>,TypedService<Location,IOPlugin<?>>,Prioritized,SciJavaService,Service,Typed<Location>,Versioned
public final class DefaultIOService extends AbstractHandlerService<Location,IOPlugin<?>> implements IOService
Default implementation ofIOService.- Author:
- Curtis Rueden
-
-
Constructor Summary
Constructors Constructor Description DefaultIOService()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description IOPlugin<?>getOpener(String source)Gets the most appropriateIOPluginfor opening data from the given location.<D> IOPlugin<D>getSaver(D data, String destination)Gets the most appropriateIOPluginfor saving data to the given location.Objectopen(String source)Loads data from the given source.Objectopen(Location source)Loads data from the given location.voidsave(Object data, String destination)Saves data to the given destination.voidsave(Object data, Location destination)Saves data to the given location.-
Methods inherited from class org.scijava.plugin.AbstractSingletonService
getInstance, getInstances, objectService, onEvent, onEvent
-
Methods inherited from class org.scijava.plugin.AbstractPTService
pluginService
-
Methods inherited from class org.scijava.service.AbstractService
getContext, setContext, toString
-
Methods inherited from class org.scijava.plugin.AbstractRichPlugin
getInfo, getPriority, setInfo, setPriority
-
Methods inherited from class org.scijava.AbstractContextual
context
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface org.scijava.Contextual
context, getContext, setContext
-
Methods inherited from interface org.scijava.Disposable
dispose
-
Methods inherited from interface org.scijava.plugin.HandlerService
getHandler, getInstances, supports
-
Methods inherited from interface org.scijava.plugin.HasPluginInfo
getInfo, setInfo
-
Methods inherited from interface org.scijava.io.IOService
getOpener, getPluginType, getSaver, getType
-
Methods inherited from interface org.scijava.Locatable
getLocation
-
Methods inherited from interface org.scijava.Prioritized
compareTo, getPriority, setPriority
-
Methods inherited from interface org.scijava.plugin.PTService
getPlugins, getPluginService, pluginService
-
Methods inherited from interface org.scijava.plugin.RichPlugin
getIdentifier, log
-
Methods inherited from interface org.scijava.service.Service
registerEventHandlers
-
Methods inherited from interface org.scijava.plugin.SingletonService
create, filterInstances, getInstance, initialize, objectService
-
Methods inherited from interface org.scijava.plugin.TypedService
find
-
Methods inherited from interface org.scijava.Versioned
getVersion
-
-
-
-
Method Detail
-
getOpener
public IOPlugin<?> getOpener(String source) throws IOException
Description copied from interface:IOServiceGets the most appropriateIOPluginfor opening data from the given location.- Specified by:
getOpenerin interfaceIOService- Throws:
IOException
-
getSaver
public <D> IOPlugin<D> getSaver(D data, String destination) throws IOException
Description copied from interface:IOServiceGets the most appropriateIOPluginfor saving data to the given location.- Specified by:
getSaverin interfaceIOService- Throws:
IOException
-
open
public Object open(String source) throws IOException
Description copied from interface:IOServiceLoads data from the given source. For extensibility, the nature of the source is left intentionally general, but two common examples include file paths and URLs.The opener to use is automatically determined based on available
IOPlugins; seeIOService.getOpener(String).- Specified by:
openin interfaceIOService- Parameters:
source- The source (e.g., file path) from which to data should be loaded.- Returns:
- An object representing the loaded data, or null if the source is not supported.
- Throws:
IOException- if something goes wrong loading the data.
-
save
public void save(Object data, String destination) throws IOException
Description copied from interface:IOServiceSaves data to the given destination. The nature of the destination is left intentionally general, but the most common example is a file path.The saver to use is automatically determined based on available
IOPlugins; seeIOService.getSaver(Object, String).- Specified by:
savein interfaceIOService- Parameters:
data- The data to be saved to the destination.destination- The destination (e.g., file path) to which data should be saved.- Throws:
IOException- if something goes wrong saving the data.
-
open
public Object open(Location source) throws IOException
Description copied from interface:IOServiceLoads data from the given location.The opener to use is automatically determined based on available
IOPlugins; seeIOService.getOpener(Location).- Specified by:
openin interfaceIOService- Parameters:
source- The location from which to data should be loaded.- Returns:
- An object representing the loaded data, or null if the source is not supported.
- Throws:
IOException- if something goes wrong loading the data.
-
save
public void save(Object data, Location destination) throws IOException
Description copied from interface:IOServiceSaves data to the given location.The saver to use is automatically determined based on available
IOPlugins; seeIOService.getSaver(Object, Location).- Specified by:
savein interfaceIOService- Parameters:
data- The data to be saved to the destination.destination- The destination location to which data should be saved.- Throws:
IOException- if something goes wrong saving the data.
-
-