Class AbstractMultiSpreadSheetOperation<O>
- java.lang.Object
-
- adams.core.logging.LoggingObject
-
- adams.core.logging.CustomLoggingLevelObject
-
- adams.core.option.AbstractOptionHandler
-
- adams.flow.transformer.multispreadsheetoperation.AbstractMultiSpreadSheetOperation<O>
-
- Type Parameters:
O
- the generated output type
- All Implemented Interfaces:
Destroyable
,GlobalInfoSupporter
,LoggingLevelHandler
,LoggingSupporter
,OptionHandler
,QuickInfoSupporter
,SizeOfHandler
,Serializable
- Direct Known Subclasses:
AbstractIndentifiableRowOperation
,CommonIDs
,Merge
,Overlay
,PassThrough
public abstract class AbstractMultiSpreadSheetOperation<O> extends AbstractOptionHandler implements QuickInfoSupporter
Abstract base class for operations that require multiple spreadsheets.- Author:
- fracpete (fracpete at waikato dot ac dot nz)
- See Also:
- Serialized Form
-
-
Field Summary
-
Fields inherited from class adams.core.option.AbstractOptionHandler
m_OptionManager
-
Fields inherited from class adams.core.logging.LoggingObject
m_Logger, m_LoggingIsEnabled, m_LoggingLevel
-
-
Constructor Summary
Constructors Constructor Description AbstractMultiSpreadSheetOperation()
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description protected void
check(SpreadSheet[] sheets)
Checks the sheets.protected abstract O
doProcess(SpreadSheet[] sheets, MessageCollection errors)
Performs the actual processing of the sheets.abstract Class
generates()
The type of data that is generated.String
getQuickInfo()
Returns a quick info about the object, which can be displayed in the GUI.abstract int
maxNumSheetsRequired()
Returns the maximum number of sheets that are required for the operation.abstract int
minNumSheetsRequired()
Returns the minimum number of sheets that are required for the operation.O
process(SpreadSheet[] sheets, MessageCollection errors)
Processes the containers.-
Methods inherited from class adams.core.option.AbstractOptionHandler
cleanUpOptions, defineOptions, destroy, finishInit, getDefaultLoggingLevel, getOptionManager, globalInfo, initialize, loggingLevelTipText, newOptionManager, reset, setLoggingLevel, toCommandLine, toString
-
Methods inherited from class adams.core.logging.LoggingObject
configureLogger, getLogger, getLoggingLevel, initializeLogging, isLoggingEnabled, sizeOf
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface adams.core.logging.LoggingLevelHandler
getLoggingLevel
-
-
-
-
Method Detail
-
getQuickInfo
public String getQuickInfo()
Returns a quick info about the object, which can be displayed in the GUI.
Default implementation returns null.- Specified by:
getQuickInfo
in interfaceQuickInfoSupporter
- Returns:
- null if no info available, otherwise short string
-
minNumSheetsRequired
public abstract int minNumSheetsRequired()
Returns the minimum number of sheets that are required for the operation.- Returns:
- the number of sheets that are required, <= 0 means no lower limit
-
maxNumSheetsRequired
public abstract int maxNumSheetsRequired()
Returns the maximum number of sheets that are required for the operation.- Returns:
- the number of sheets that are required, <= 0 means no upper limit
-
generates
public abstract Class generates()
The type of data that is generated.- Returns:
- the class
-
check
protected void check(SpreadSheet[] sheets)
Checks the sheets.
Default implementation only ensures that sheets are present.- Parameters:
sheets
- the sheets to check
-
doProcess
protected abstract O doProcess(SpreadSheet[] sheets, MessageCollection errors)
Performs the actual processing of the sheets.- Parameters:
sheets
- the containers to processerrors
- for collecting errors- Returns:
- the generated data
-
process
public O process(SpreadSheet[] sheets, MessageCollection errors)
Processes the containers.- Parameters:
sheets
- the containers to processerrors
- for collecting errors- Returns:
- the generated data
-
-