Class AbstractMultiMapOperation<O>
- java.lang.Object
-
- adams.core.logging.LoggingObject
-
- adams.core.logging.CustomLoggingLevelObject
-
- adams.core.option.AbstractOptionHandler
-
- adams.flow.transformer.multimapoperation.AbstractMultiMapOperation<O>
-
- Type Parameters:
O
- the generated output type
- All Implemented Interfaces:
Destroyable
,GlobalInfoSupporter
,LoggingLevelHandler
,LoggingSupporter
,OptionHandler
,QuickInfoSupporter
,SizeOfHandler
,Serializable
- Direct Known Subclasses:
CommonKeys
,Merge
,PassThrough
public abstract class AbstractMultiMapOperation<O> extends AbstractOptionHandler implements QuickInfoSupporter
Abstract base class for operations that require multiple maps.- 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 AbstractMultiMapOperation()
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description protected void
check(Map[] maps)
Checks the maps.protected abstract O
doProcess(Map[] maps, MessageCollection errors)
Performs the actual processing of the maps.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
maxNumMapsRequired()
Returns the maximum number of maps that are required for the operation.abstract int
minNumMapsRequired()
Returns the minimum number of maps that are required for the operation.O
process(Map[] maps, 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
-
minNumMapsRequired
public abstract int minNumMapsRequired()
Returns the minimum number of maps that are required for the operation.- Returns:
- the number of maps that are required, <= 0 means no lower limit
-
maxNumMapsRequired
public abstract int maxNumMapsRequired()
Returns the maximum number of maps that are required for the operation.- Returns:
- the number of maps 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(Map[] maps)
Checks the maps.
Default implementation only ensures that maps are present.- Parameters:
maps
- the maps to check
-
doProcess
protected abstract O doProcess(Map[] maps, MessageCollection errors)
Performs the actual processing of the maps.- Parameters:
maps
- the containers to processerrors
- for collecting errors- Returns:
- the generated data
-
process
public O process(Map[] maps, MessageCollection errors)
Processes the containers.- Parameters:
maps
- the containers to processerrors
- for collecting errors- Returns:
- the generated data
-
-