Package net.sf.basedb.plugins
Class BfsExporterPlugin
java.lang.Object
net.sf.basedb.core.plugin.AbstractPlugin
net.sf.basedb.plugins.BfsExporterPlugin
- All Implemented Interfaces:
InteractivePlugin
,Plugin
,SignalTarget
Exports bioassay set data to BFS format.
- Since:
- 2.15
- Author:
- Nicklas
- Last modified
- $Date: 2019-02-26 11:10:15 +0100 (tis, 26 feb. 2019) $
-
Nested Class Summary
Nested classes/interfaces inherited from interface net.sf.basedb.core.plugin.Plugin
Plugin.MainType
-
Field Summary
Modifier and TypeFieldDescriptionprivate BioAssaySet
private RequestInformation
private DbControl
private static final Set<GuiContext>
static final String
static final String
private ThreadSignalHandler
Fields inherited from class net.sf.basedb.core.plugin.AbstractPlugin
annotationSection, configuration, COPY_ANNOTATIONS, job, OVERWRITE_ANNOTATIONS, sc
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionassayField
(String property, String guiTitle, Type type) protected void
void
configure
(GuiContext context, Request request, Response response) Configure the plugin.private File
createFile
(File dir, String name) private File
createFile
(DbControl dc, Directory dir, String name) protected void
end
(boolean success) getAssayFields
(DbControl dc, BioAssaySet source) private RequestInformation
getConfigureJobParameters
(GuiContext context) getExportableFields
(DbControl dc, BioAssaySet source) getExtraValueFields
(DbControl dc, BioAssaySet source) static PluginParameter<String>
Create a plug-in parameter that asks for the BFS subtype to use in the export.static PluginParameter<String>
Create a plug-in parameter that asks for the file name generation strategy.getFormulaFields
(DbControl dc, BioAssaySet source) Get a set containing all items that the plugin handles.Get the type of the plugin.getRawdataFields
(BioAssaySet source) getRequestInformation
(GuiContext context, String command) This method will return theRequestInformation
for a given command, i.e.Get the signal handler that is handling signals on behalf of this object.getSpotFields
(BioAssaySet source) protected String
isInContext
(GuiContext context, Object item) Check if the plugin can be used on the specified object.protected void
performExport
(ProgressReporter progress) rawField
(String property, String title, Type type, Formula.AverageMethod averageMethod) private static BfsExporterPlugin.ExtendedExportableField
reporterField
(String property, String guiTitle, Type type, Formula.AverageMethod averageMethod) boolean
Returns FALSE, since that is how the plugins used to work before this method was introduced.void
run
(Request request, Response response, ProgressReporter progress) Run the plugin.boolean
Returns TRUE, since that is how the plugins used to work before this method was introduced.Methods inherited from class net.sf.basedb.core.plugin.AbstractPlugin
cloneParameterWithDefaultValue, closeLogFile, createLogFile, done, getCopyAnnotationsParmeter, getCurrentConfiguration, getCurrentJob, getJobOrConfigurationValue, getOverwriteAnnotationsParameters, getPermissions, init, isLogging, log, log, storeValue, storeValue, storeValues, validateRequestParameters
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface net.sf.basedb.core.plugin.Plugin
done, getPermissions, init
-
Field Details
-
guiContexts
-
signalHandler
-
configureJob
-
dc
-
bas
-
exportableFields
-
PARAMETER_FILEFORMAT
- See Also:
-
PARAMETER_FILENAMEGENERATOR
- See Also:
-
-
Constructor Details
-
BfsExporterPlugin
public BfsExporterPlugin()
-
-
Method Details
-
getMainType
Description copied from interface:Plugin
Get the type of the plugin. This method must always return the same value.- Specified by:
getMainType
in interfacePlugin
- Returns:
- MainType.EXPORT
-
supportsConfigurations
public boolean supportsConfigurations()Description copied from class:AbstractPlugin
Returns TRUE, since that is how the plugins used to work before this method was introduced.- Specified by:
supportsConfigurations
in interfacePlugin
- Overrides:
supportsConfigurations
in classAbstractPlugin
- Returns:
- TRUE or FALSE
-
requiresConfiguration
public boolean requiresConfiguration()Description copied from class:AbstractPlugin
Returns FALSE, since that is how the plugins used to work before this method was introduced.- Specified by:
requiresConfiguration
in interfacePlugin
- Overrides:
requiresConfiguration
in classAbstractPlugin
- Returns:
- TRUE or FALSE
-
getGuiContexts
Description copied from interface:InteractivePlugin
Get a set containing all items that the plugin handles. Ie. if the plugin imports reporters, return a set containingItem.REPORTER
. This information is used by client applications to put the plugin in the proper place in the user interface.- Specified by:
getGuiContexts
in interfaceInteractivePlugin
- Returns:
- A
Set
containingItem
:s, or null if the plugin is not concerned about items
-
isInContext
Description copied from interface:InteractivePlugin
Check if the plugin can be used on the specified object. The item is either aBasicItem
orBasicData
object, or null if called from a list context. A client application should only call this method for contexts matching one of the contexts in the set returned by theInteractivePlugin.getGuiContexts()
method. ForGuiContext.Type.ITEM
contexts an item of the correct type should be passed as a parameter.The plug-in can response with a null value indicating success, a warning-level message or throw an exception to indicate an error-level message. Client application should normally only show error-level messages to users, unless the user has requested to see warning messages.
NOTE! Before BASE 2.4 all messages were treated as error-level messages.
- Specified by:
isInContext
in interfaceInteractivePlugin
- Parameters:
context
- The current context of the client application, it is one of the values found in set returned byInteractivePlugin.getGuiContexts()
item
- The currently active item, it's type should match theGuiContext.getItem()
type, or null if the context is a list context- Returns:
Null
if the plugin can use that item, or a warning-level message explaining why the plugin can't be used
-
getRequestInformation
public RequestInformation getRequestInformation(GuiContext context, String command) throws BaseException Description copied from interface:InteractivePlugin
This method will return theRequestInformation
for a given command, i.e. the list of parameters and some nice help text.- Specified by:
getRequestInformation
in interfaceInteractivePlugin
- Parameters:
context
- The current context of the client application, it is one of the values found in set returned byInteractivePlugin.getGuiContexts()
command
- The command- Returns:
- The
RequestInformation
for the command - Throws:
BaseException
- if there is an error
-
configure
Description copied from interface:InteractivePlugin
Configure the plugin. Hopefully the client is supplying values for the parameters specified byInteractivePlugin.getRequestInformation(GuiContext, String)
.- Specified by:
configure
in interfaceInteractivePlugin
- Parameters:
context
- The current context of the client application, it is one of the values found in set returned byInteractivePlugin.getGuiContexts()
request
- Request object with the command and parametersresponse
- Response object in for the plugin to response through
-
run
Description copied from interface:Plugin
Run the plugin. If a progress reporter object is passed it is recommended that the plugin makes use of it.- Specified by:
run
in interfacePlugin
- Parameters:
request
- Request object with the command and parametersresponse
- Response object in for the plugin to response throughprogress
- AProgressReporter
where the plugin can report its progess, can be null
-
getSignalHandler
Description copied from interface:SignalTarget
Get the signal handler that is handling signals on behalf of this object. Multiple invokations of this method may receive the same or different objects. Null may be returned if, for some reason, the current object instance doesn't want to receive signals. Returning null is the same as not implementing this interface.- Specified by:
getSignalHandler
in interfaceSignalTarget
- Returns:
- A SignalHandler object, or null if the current instance doesn't support signals
-
begin
-
performExport
- Throws:
IOException
-
end
protected void end(boolean success) -
getSuccessMessage
-
getConfigureJobParameters
-
getExportableFields
public Map<String,BfsExporterPlugin.ExtendedExportableField> getExportableFields(DbControl dc, BioAssaySet source) -
getFormulaFields
private List<BfsExporterPlugin.ExtendedExportableField> getFormulaFields(DbControl dc, BioAssaySet source) -
getRawdataFields
-
rawField
private BfsExporterPlugin.ExtendedExportableField rawField(String property, String title, Type type, Formula.AverageMethod averageMethod) -
getReporterFields
-
reporterField
private static BfsExporterPlugin.ExtendedExportableField reporterField(String property, String guiTitle, Type type, Formula.AverageMethod averageMethod) -
getExtraValueFields
private Collection<BfsExporterPlugin.ExtendedExportableField> getExtraValueFields(DbControl dc, BioAssaySet source) -
getSpotFields
-
getAssayFields
private List<BfsExporterPlugin.ExtendedExportableField> getAssayFields(DbControl dc, BioAssaySet source) -
assayField
private BfsExporterPlugin.ExtendedExportableField assayField(String property, String guiTitle, Type type) -
createFile
- Throws:
IOException
-
createFile
-
getFileFormatParameter
Create a plug-in parameter that asks for the BFS subtype to use in the export. -
getFileNameGeneratorParameter
Create a plug-in parameter that asks for the file name generation strategy.
-