Package adams.flow.transformer
Class AbstractReportFileWriter<T extends Report>
- java.lang.Object
-
- adams.core.logging.LoggingObject
-
- adams.core.logging.CustomLoggingLevelObject
-
- adams.core.option.AbstractOptionHandler
-
- adams.flow.core.AbstractActor
-
- adams.flow.transformer.AbstractTransformer
-
- adams.flow.transformer.AbstractReportFileWriter<T>
-
- Type Parameters:
T
- type type of report to handle
- All Implemented Interfaces:
AdditionalInformationHandler
,CleanUpHandler
,Destroyable
,GlobalInfoSupporter
,LoggingLevelHandler
,LoggingSupporter
,OptionHandler
,QuickInfoSupporter
,ShallowCopySupporter<Actor>
,SizeOfHandler
,Stoppable
,StoppableWithFeedback
,VariablesInspectionHandler
,VariableChangeListener
,Actor
,ErrorHandler
,InputConsumer
,OutputProducer
,Serializable
,Comparable
- Direct Known Subclasses:
ReportFileWriter
public abstract class AbstractReportFileWriter<T extends Report> extends AbstractTransformer
Abstract ancestor for actors that write reports to disk.- Version:
- $Revision$
- Author:
- fracpete (fracpete at waikato dot ac dot nz)
- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description protected AbstractFilenameGenerator
m_Generator
the filename generator to use.protected PlaceholderDirectory
m_OutputDir
the output directory.protected AbstractReportWriter<T>
m_Writer
the writer to use.-
Fields inherited from class adams.flow.transformer.AbstractTransformer
BACKUP_INPUT, BACKUP_OUTPUT, m_InputToken, m_OutputToken
-
Fields inherited from class adams.flow.core.AbstractActor
m_Annotations, m_BackupState, m_DetectedObjectVariables, m_DetectedVariables, m_ErrorHandler, m_Executed, m_Executing, m_ExecutionListeningSupporter, m_FullName, m_LoggingPrefix, m_Name, m_Parent, m_ScopeHandler, m_Self, m_Silent, m_Skip, m_StopFlowOnError, m_StopMessage, m_Stopped, m_StorageHandler, m_VariablesUpdated
-
Fields inherited from class adams.core.option.AbstractOptionHandler
m_OptionManager
-
Fields inherited from class adams.core.logging.LoggingObject
m_Logger, m_LoggingIsEnabled, m_LoggingLevel
-
Fields inherited from interface adams.flow.core.Actor
FILE_EXTENSION, FILE_EXTENSION_GZ
-
-
Constructor Summary
Constructors Constructor Description AbstractReportFileWriter()
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description abstract Class[]
accepts()
Returns the class that the consumer accepts.void
defineOptions()
Adds options to the internal list of options.protected String
doExecute()
Executes the flow item.protected T
extractReport(Token token)
Extracts the report from the token.protected T[]
extractReports(Token token)
Extracts the reports from the token.String
filenameGeneratorTipText()
Returns the tip text for this property.Class[]
generates()
Returns the class of objects that it generates.protected AbstractFilenameGenerator
getDefaultFilenameGenerator()
Returns the default generatorprotected abstract AbstractReportWriter<T>
getDefaultWriter()
Returns the default writer.AbstractFilenameGenerator
getFilenameGenerator()
Returns the writer in use.PlaceholderDirectory
getOutputDir()
Returns the current output directory for the reports.String
getQuickInfo()
Returns a quick info about the actor, which will be displayed in the GUI.AbstractReportWriter
getWriter()
Returns the writer in use.String
outputDirTipText()
Returns the tip text for this property.void
setFilenameGenerator(AbstractFilenameGenerator value)
Sets the filename generator to use.void
setOutputDir(PlaceholderDirectory value)
Sets the output directory for the reports.void
setWriter(AbstractReportWriter value)
Sets the writer to use.String
writerTipText()
Returns the tip text for this property.-
Methods inherited from class adams.flow.transformer.AbstractTransformer
backupState, currentInput, execute, hasInput, hasPendingOutput, input, output, postExecute, restoreState, wrapUp
-
Methods inherited from class adams.flow.core.AbstractActor
annotationsTipText, canInspectOptions, canPerformSetUpCheck, cleanUp, compareTo, configureLogger, destroy, equals, finalUpdateVariables, findVariables, findVariables, forceVariables, forCommandLine, forName, forName, getAdditionalInformation, getAnnotations, getDefaultName, getDetectedVariables, getErrorHandler, getFlowActors, getFlowExecutionListeningSupporter, getFullName, getName, getNextSibling, getParent, getParentComponent, getPreviousSibling, getRoot, getScopeHandler, getSilent, getSkip, getStopFlowOnError, getStopMessage, getStorageHandler, getVariables, handleError, handleException, hasErrorHandler, hasStopMessage, index, initialize, isBackedUp, isExecuted, isExecuting, isFinished, isHeadless, isStopped, nameTipText, performSetUpChecks, performVariableChecks, preExecute, pruneBackup, pruneBackup, reset, setAnnotations, setErrorHandler, setName, setParent, setSilent, setSkip, setStopFlowOnError, setUp, setVariables, shallowCopy, shallowCopy, silentTipText, sizeOf, skipTipText, stopExecution, stopExecution, stopFlowOnErrorTipText, updateDetectedVariables, updatePrefix, updateVariables, variableChanged
-
Methods inherited from class adams.core.option.AbstractOptionHandler
cleanUpOptions, finishInit, getDefaultLoggingLevel, getOptionManager, globalInfo, loggingLevelTipText, newOptionManager, setLoggingLevel, toCommandLine, toString
-
Methods inherited from class adams.core.logging.LoggingObject
getLogger, getLoggingLevel, initializeLogging, isLoggingEnabled
-
Methods inherited from class java.lang.Object
clone, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface adams.flow.core.Actor
cleanUp, compareTo, destroy, equals, findVariables, getAnnotations, getDefaultName, getDetectedVariables, getErrorHandler, getFlowExecutionListeningSupporter, getFullName, getName, getNextSibling, getParent, getParentComponent, getPreviousSibling, getRoot, getScopeHandler, getSilent, getSkip, getStopFlowOnError, getStopMessage, getStorageHandler, getVariables, handleError, hasErrorHandler, hasStopMessage, index, isExecuted, isFinished, isHeadless, isStopped, setAnnotations, setErrorHandler, setName, setParent, setSilent, setSkip, setStopFlowOnError, setUp, setVariables, shallowCopy, shallowCopy, sizeOf, stopExecution, stopExecution, toCommandLine, variableChanged
-
Methods inherited from interface adams.core.AdditionalInformationHandler
getAdditionalInformation
-
Methods inherited from interface adams.core.logging.LoggingLevelHandler
getLoggingLevel, setLoggingLevel
-
Methods inherited from interface adams.core.logging.LoggingSupporter
getLogger, isLoggingEnabled
-
Methods inherited from interface adams.core.option.OptionHandler
cleanUpOptions, getOptionManager
-
Methods inherited from interface adams.core.VariablesInspectionHandler
canInspectOptions
-
-
-
-
Field Detail
-
m_Writer
protected AbstractReportWriter<T extends Report> m_Writer
the writer to use.
-
m_OutputDir
protected PlaceholderDirectory m_OutputDir
the output directory.
-
m_Generator
protected AbstractFilenameGenerator m_Generator
the filename generator to use.
-
-
Method Detail
-
defineOptions
public void defineOptions()
Adds options to the internal list of options.- Specified by:
defineOptions
in interfaceOptionHandler
- Overrides:
defineOptions
in classAbstractActor
-
getDefaultWriter
protected abstract AbstractReportWriter<T> getDefaultWriter()
Returns the default writer.- Returns:
- the writer
-
setWriter
public void setWriter(AbstractReportWriter value)
Sets the writer to use.- Parameters:
value
- the writer
-
getWriter
public AbstractReportWriter getWriter()
Returns the writer in use.- Returns:
- the writer
-
writerTipText
public String writerTipText()
Returns the tip text for this property.- Returns:
- tip text for this property suitable for displaying in the GUI or for listing the options.
-
setOutputDir
public void setOutputDir(PlaceholderDirectory value)
Sets the output directory for the reports.- Parameters:
value
- the directory
-
getOutputDir
public PlaceholderDirectory getOutputDir()
Returns the current output directory for the reports.- Returns:
- the directory
-
outputDirTipText
public String outputDirTipText()
Returns the tip text for this property.- Returns:
- tip text for this property suitable for displaying in the GUI or for listing the options.
-
getDefaultFilenameGenerator
protected AbstractFilenameGenerator getDefaultFilenameGenerator()
Returns the default generator- Returns:
- the generator
-
setFilenameGenerator
public void setFilenameGenerator(AbstractFilenameGenerator value)
Sets the filename generator to use.- Parameters:
value
- the generator
-
getFilenameGenerator
public AbstractFilenameGenerator getFilenameGenerator()
Returns the writer in use.- Returns:
- the generator
-
filenameGeneratorTipText
public String filenameGeneratorTipText()
Returns the tip text for this property.- Returns:
- tip text for this property suitable for displaying in the GUI or for listing the options.
-
getQuickInfo
public String getQuickInfo()
Returns a quick info about the actor, which will be displayed in the GUI.- Specified by:
getQuickInfo
in interfaceActor
- Specified by:
getQuickInfo
in interfaceQuickInfoSupporter
- Overrides:
getQuickInfo
in classAbstractActor
- Returns:
- null if no info available, otherwise short string
-
accepts
public abstract Class[] accepts()
Returns the class that the consumer accepts.- Returns:
- the type of report
-
generates
public Class[] generates()
Returns the class of objects that it generates.- Returns:
- java.lang.String.class
-
extractReport
protected T extractReport(Token token)
Extracts the report from the token.- Parameters:
token
- the token to get the report from- Returns:
- the report
-
extractReports
protected T[] extractReports(Token token)
Extracts the reports from the token.- Parameters:
token
- the token to get the reports from- Returns:
- the reports
-
doExecute
protected String doExecute()
Executes the flow item.- Specified by:
doExecute
in classAbstractActor
- Returns:
- null if everything is fine, otherwise error message
-
-