Interface ImmediateDownloadExporter
- All Superinterfaces:
Plugin
- All Known Implementing Classes:
AbstractExporterPlugin
,BaseFileExporterPlugin
,GalExporter
,HelpExporter
,PackedFileExporter
,PlateMappingExporter
,PluginConfigurationExporter
,SimpleExport
The plugin will be loaded and initialised normally and a
job configuration sequence is started by a call to
InteractivePlugin.configure(GuiContext, Request, Response)
.
When the configuration is complete the plugin may respond with
a Response.setDownloadImmediately(String, Job.ExecutionTime, boolean)
instead of a Response.setDone(String, Job.ExecutionTime)
. This will prevent the
core from saving a job in the job queue. Instead it will call the
doExport(ExportOutputStream, ProgressReporter)
method to let the plugin
generate it's output. The Plugin.run(Request, Response, ProgressReporter)
method is never called.
Note that this feature requires that the plugin is executed in the same virtual machine and prevents the use of job agents. Plugins should not use immediate export if they use a lot of memory, requires long running times or consumes other resources that may cause problems for other code.
- Version:
- 2.2
- Author:
- Nicklas
- Last modified
- $Date: 2008-09-11 22:09:17 +0200 (to, 11 sep 2008) $
-
Nested Class Summary
Nested classes/interfaces inherited from interface net.sf.basedb.core.plugin.Plugin
Plugin.MainType
-
Method Summary
Modifier and TypeMethodDescriptionvoid
doExport
(ExportOutputStream out, ProgressReporter progress) Perform the export.Methods inherited from interface net.sf.basedb.core.plugin.Plugin
done, getMainType, getPermissions, init, requiresConfiguration, run, supportsConfigurations
-
Method Details
-
doExport
Perform the export.- Parameters:
out
- The output stream that the exported data should be written toprogress
- An optional progress reporter, may be null- Throws:
IOException
- If there is an error writing to the export stream
-