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 voidcheck(Map[] maps)Checks the maps.protected abstract OdoProcess(Map[] maps, MessageCollection errors)Performs the actual processing of the maps.abstract Classgenerates()The type of data that is generated.StringgetQuickInfo()Returns a quick info about the object, which can be displayed in the GUI.abstract intmaxNumMapsRequired()Returns the maximum number of maps that are required for the operation.abstract intminNumMapsRequired()Returns the minimum number of maps that are required for the operation.Oprocess(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:
getQuickInfoin 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
-
-