|
2.17.2: 2011-06-17 | ||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object net.sf.basedb.core.plugin.AbstractPlugin net.sf.basedb.plugins.AbstractFlatFileImporter net.sf.basedb.plugins.batchimport.AbstractItemImporter<Sample> net.sf.basedb.plugins.batchimport.SampleImporter
public class SampleImporter
Plug-in for importing sample items in a batch. The plug-in can create new items and updated existing items.
Nested Class Summary |
---|
Nested classes/interfaces inherited from interface net.sf.basedb.core.plugin.Plugin |
---|
Plugin.MainType |
Field Summary | |
---|---|
private static About |
about
|
protected static PluginParameter<String> |
bioPlateColumnMapping
Column mapping parameter for the bioplate |
private Mapper |
bioPlateMapper
|
protected static PluginParameter<String> |
bioWellColColumnMapping
Column mapping parameter for the biowell's column |
private Mapper |
bioWellColMapper
|
protected static PluginParameter<String> |
bioWellRowColumnMapping
Column mapping parameter for the biowell's row |
private Mapper |
bioWellRowMapper
|
protected static PluginParameter<String> |
createdColumnMapping
Column mapping parameter for the sample creation date. |
private Mapper |
createdMapper
|
private Mapper |
descriptionMapper
|
private Mapper |
externalIdMapper
|
private static Set<GuiContext> |
guiContexts
|
private Mapper |
nameMapper
|
protected static PluginParameter<String> |
originalQuantityColumnMapping
Column mapping parameter for the original quantity. |
private Mapper |
originalQuantityMapper
|
protected static PluginParameter<String> |
parentColumnMapping
Column mapping parameter for the parent (biosource OR pooled sample) |
private Mapper |
parentMapper
|
protected static PluginParameter<String> |
pooledColumnMapping
Column mapping parameter for the pooled property. |
private Mapper |
pooledMapper
|
private Mapper |
protocolMapper
|
protected static PluginParameter<String> |
usedQuantityColumnMapping
Column mapping parameter for the used quantity from the parent. |
private Mapper |
usedQuantityMapper
|
Fields inherited from class net.sf.basedb.plugins.batchimport.AbstractItemImporter |
---|
defaultsSection, descriptionColumnMapping, externalIdColumnMapping, identificationSection, internalIdColumnMapping, nameColumnMapping, optionalColumnMapping, permissionTemplateColumnMapping, protocolColumnMapping, requiredColumnMapping |
Fields inherited from class net.sf.basedb.core.plugin.AbstractPlugin |
---|
annotationSection, configuration, COPY_ANNOTATIONS, job, OVERWRITE_ANNOTATIONS, sc |
Constructor Summary | |
---|---|
SampleImporter()
|
Method Summary | |
---|---|
protected void |
addMoreColumnMappingParameters(List<PluginParameter<?>> parameters)
Adds column mappings for name, externalId, description, protocol, creation date, original quantity, pooled, parent and used quantity from parent. |
protected void |
createColumnMappers(FlatFileParser ffp,
boolean cropStrings)
Create mappers that can be used to extract data values from the file that is currently being parsed by the ffp FlatFileParser . |
protected Sample |
createItem(DbControl dc,
FlatFileParser.Data data)
Create a new item and populate it with data from the current line. |
protected ItemQuery<Sample> |
createItemQuery()
Calls Sample.getQuery() . |
About |
getAbout()
Get information about the plugin, such as name, version, authors, etc. |
Set<GuiContext> |
getGuiContexts()
Get a set containing all items that the plugin handles. |
protected IdMethod[] |
getIdMethods()
Useable methods are: PropertyIdMethod.NAME
PropertyIdMethod.EXTERNAL_ID
InternalIdMethod.INTERNAL_ID
FallbackIdMethod.NAME_OR_ID
|
protected void |
updateItem(DbControl dc,
Sample sample,
FlatFileParser.Data data)
Update an item with data from the current line. |
protected void |
updateMultiLineItem(DbControl dc,
Sample sample,
FlatFileParser.Data data,
int multiLineNum)
If the sample is pooled, add the parent sample. |
Methods inherited from class net.sf.basedb.plugins.AbstractFlatFileImporter |
---|
addErrorHandler, checkColumnMapping, checkColumnMapping, continueWithNextFileAfterError, doImport, finish, getCharset, getCharset, getCharsetParameter, getDecimalSeparator, getDecimalSeparatorParameter, getErrorHandler, getErrorOption, getFileIterator, getMainType, getMapper, getNumberFormat, getNumBytes, getPrimaryLocationFilter, getProgress, getSignalHandler, getTotalFileSize, handleHeader, handleSection, isImportable, isImportable, log, log, log, log, run, start, wrapInputStream |
Methods inherited from class net.sf.basedb.core.plugin.AbstractPlugin |
---|
checkInterrupted, cloneParameterWithDefaultValue, closeLogFile, createLogFile, done, getCopyAnnotationsParmeter, getCurrentConfiguration, getCurrentJob, getJobOrConfigurationValue, getOverwriteAnnotationsParameters, getPermissions, init, 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, getMainType, getPermissions, init, run |
Field Detail |
---|
private static final Set<GuiContext> guiContexts
protected static final PluginParameter<String> createdColumnMapping
protected static final PluginParameter<String> originalQuantityColumnMapping
protected static final PluginParameter<String> pooledColumnMapping
protected static final PluginParameter<String> parentColumnMapping
protected static final PluginParameter<String> usedQuantityColumnMapping
protected static final PluginParameter<String> bioPlateColumnMapping
protected static final PluginParameter<String> bioWellRowColumnMapping
protected static final PluginParameter<String> bioWellColColumnMapping
private static final About about
private Mapper nameMapper
private Mapper descriptionMapper
private Mapper externalIdMapper
private Mapper originalQuantityMapper
private Mapper createdMapper
private Mapper protocolMapper
private Mapper pooledMapper
private Mapper parentMapper
private Mapper usedQuantityMapper
private Mapper bioPlateMapper
private Mapper bioWellRowMapper
private Mapper bioWellColMapper
Constructor Detail |
---|
public SampleImporter()
Method Detail |
---|
public About getAbout()
Plugin
About
objectpublic Set<GuiContext> getGuiContexts()
InteractivePlugin
Item.REPORTER
.
This information is used by client applications to put the plugin
in the proper place in the user interface.
Set
containing Item
:s, or null
if the plugin is not concerned about itemsprotected IdMethod[] getIdMethods()
PropertyIdMethod.NAME
PropertyIdMethod.EXTERNAL_ID
InternalIdMethod.INTERNAL_ID
FallbackIdMethod.NAME_OR_ID
getIdMethods
in class AbstractItemImporter<Sample>
protected void addMoreColumnMappingParameters(List<PluginParameter<?>> parameters)
addMoreColumnMappingParameters
in class AbstractItemImporter<Sample>
parameters
- The list of parameters to add the column
mapping parameters toprotected ItemQuery<Sample> createItemQuery()
Sample.getQuery()
.
createItemQuery
in class AbstractItemImporter<Sample>
protected void createColumnMappers(FlatFileParser ffp, boolean cropStrings)
AbstractItemImporter
ffp
FlatFileParser
.
This method is called during initialisation of the plug-in when the
FlatFileParser.parseHeaders()
has successfully found the start of
data. Use the AbstractFlatFileImporter.getMapper(FlatFileParser, String, Integer, Mapper)
to create column mappers. Example:
nameMapper = getMapper(ffp, job.getValue("nameColumnMapping"), cropStrings ? Nameable.MAX_NAME_LENGTH : null, null);
createColumnMappers
in class AbstractItemImporter<Sample>
ffp
- The parser that is parsing the data filecropStrings
- If strings that are too long to fit in the database
should be cropped or not (=generate an error)protected Sample createItem(DbControl dc, FlatFileParser.Data data)
AbstractItemImporter
DbControl.saveItem(BasicItem)
. This is done automatically
by the core implementation.
BioSource bs = BioSource.getNew(dc); // Set properties; see example on updateItem method return bs;
If the current data line doesn't have data for all required
properties, this method should throw an InvalidUseOfNullException
exception.
This method is called during import when current item can be found and if the user has selected to create missing item.
createItem
in class AbstractItemImporter<Sample>
dc
- The DbControl to use for database accessdata
- The current data line
protected void updateItem(DbControl dc, Sample sample, FlatFileParser.Data data)
AbstractItemImporter
if (nameMapper != null) item.setName(nameMapper.getValue(data)); if (descriptionMapper != null) item.setDescription(descriptionMapper.getValue(data)); ...This method is called during import to update an existing item.
updateItem
in class AbstractItemImporter<Sample>
dc
- The DbControl to use for database accesssample
- The item to updatedata
- The current data lineprotected void updateMultiLineItem(DbControl dc, Sample sample, FlatFileParser.Data data, int multiLineNum)
updateMultiLineItem
in class AbstractItemImporter<Sample>
dc
- The DbControl to use for database accesssample
- The item to updatedata
- The current data linemultiLineNum
- The number of the multi-line entry, starting with 1
for the first multi-line
|
2.17.2: 2011-06-17 | ||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |