Package net.sf.basedb.plugins
Class CdfFileReporterImporter
java.lang.Object
net.sf.basedb.core.plugin.AbstractPlugin
net.sf.basedb.plugins.CdfFileReporterImporter
- All Implemented Interfaces:
AutoDetectingImporter
,InteractivePlugin
,Plugin
,SignalTarget
public class CdfFileReporterImporter
extends AbstractPlugin
implements InteractivePlugin, AutoDetectingImporter, SignalTarget
This plug-in can import probesets from Affymetrix CDF files as reporters.
The plug-in uses the
CdfValidator
class for the actual work.- Version:
- 2.4
- Author:
- nicklas
- Developer info
- In order to support the
AutoDetectingImporter
interface we needed to duplicate the file format checks from the Fusion SDK in this class. SeeisImportable(InputStream)
. - Last modified
- $Date: 2012-09-14 09:28:35 +0200 (fr, 14 sep 2012) $
-
Nested Class Summary
Nested classes/interfaces inherited from interface net.sf.basedb.core.plugin.Plugin
Plugin.MainType
-
Field Summary
Modifier and TypeFieldDescriptionprivate RequestInformation
private static final Set<GuiContext>
private static final Set<Permissions>
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 TypeMethodDescriptionvoid
configure
(GuiContext context, Request request, Response response) Configure the plugin.void
doImport
(InputStream in, ProgressReporter progress) Import the data from the givenInputStream
.private RequestInformation
getConfigureJobParameters
(GuiContext context) Get a set containing all items that the plugin handles.Get the type of the plugin.Request create and write access to Reporter:s and read access to File:s ArrayDesign:s, ReporterType:s, Platform:s and DataFileType:sgetRequestInformation
(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.private int
importFromCdf
(DbControl dc, affymetrix.fusion.cdf.FusionCDFData cdf, ProgressReporter progress) final boolean
Check if the givenInputStream
can be imported by this plugin.isInContext
(GuiContext context, Object item) If used from an array design context, verify that the array design is an affymetrix chip.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, init, isLogging, log, log, storeValue, storeValue, storeValues, validateRequestParameters
-
Field Details
-
guiContexts
-
permissions
-
configureJob
-
signalHandler
-
-
Constructor Details
-
CdfFileReporterImporter
public CdfFileReporterImporter()Constructor should be empty.
-
-
Method Details
-
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
-
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:
- One of the defined types
-
getPermissions
Request create and write access to Reporter:s and read access to File:s ArrayDesign:s, ReporterType:s, Platform:s and DataFileType:s- Specified by:
getPermissions
in interfacePlugin
- Overrides:
getPermissions
in classAbstractPlugin
- Returns:
- A collection of permissions or null to not use permissions
-
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
-
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
If used from an array design context, verify that the array design is an affymetrix chip.- 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
-
isImportable
Description copied from interface:AutoDetectingImporter
Check if the givenInputStream
can be imported by this plugin.- Specified by:
isImportable
in interfaceAutoDetectingImporter
- Parameters:
in
- The input stream to check- Returns:
- TRUE if the stream can be imported, FALSE otherwise
- Throws:
BaseException
- If something goes wrong
-
doImport
Description copied from interface:AutoDetectingImporter
Import the data from the givenInputStream
.- Specified by:
doImport
in interfaceAutoDetectingImporter
- Parameters:
in
- The input stream to read fromprogress
- Progress reporter used by the caller to keep track of the progress. Null is allowed- Throws:
BaseException
- If something goes wrong
-
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
-
getConfigureJobParameters
-
importFromCdf
private int importFromCdf(DbControl dc, affymetrix.fusion.cdf.FusionCDFData cdf, ProgressReporter progress)
-