Package adams.flow.transformer
Class AbstractDataContainerFileWriter<T extends DataContainer>
- 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.AbstractDataContainerFileWriter<T>
-
- Type Parameters:
T
- the type of data to write to disk
- 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:
TimeseriesFileWriter
public abstract class AbstractDataContainerFileWriter<T extends DataContainer> extends AbstractTransformer
Abstract ancestor for transformer actors that write data containers to disk.- Author:
- fracpete (fracpete at waikato dot ac dot nz)
- See Also:
- Serialized Form
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
AbstractDataContainerFileWriter.FileNameGeneration
-
Field Summary
Fields Modifier and Type Field Description protected AbstractDataContainerFileWriter.FileNameGeneration
m_FileNameGeneration
how to generate the filename.protected PlaceholderDirectory
m_OutputDir
the output directory.protected String
m_SuppliedFileName
the supplied filename.protected AbstractDataContainerWriter<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 AbstractDataContainerFileWriter()
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description 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 String
doWrite(T[] conts, T cont)
Performs the actual writing.String
fileNameGenerationTipText()
Returns the tip text for this property.Class[]
generates()
Returns the class of objects that it generates.protected abstract Class
getDataContainerClass()
Returns the data container class in use.protected String
getDefaultExtension()
Returns the default extension to use if none can be found (excl dot).protected String
getDefaultSuppliedFileName()
The default for the supplied file name.protected abstract AbstractDataContainerWriter<T>
getDefaultWriter()
Returns the default writer to use.AbstractDataContainerFileWriter.FileNameGeneration
getFileNameGeneration()
Returns how to generate the file name.PlaceholderDirectory
getOutputDir()
Returns the current output directory for the spectrums.String
getQuickInfo()
Returns a quick info about the actor, which will be displayed in the GUI.String
getSuppliedFileName()
Returns the filename to use when set toAbstractDataContainerFileWriter.FileNameGeneration.SUPPLIED
.AbstractDataContainerWriter
getWriter()
Returns the writer in use.String
outputDirTipText()
Returns the tip text for this property.void
setFileNameGeneration(AbstractDataContainerFileWriter.FileNameGeneration value)
Sets how to generate the filename.void
setOutputDir(PlaceholderDirectory value)
Sets the output directory for the spectrums.void
setSuppliedFileName(String value)
Sets the filename to use when set toAbstractDataContainerFileWriter.FileNameGeneration.SUPPLIED
.void
setWriter(AbstractDataContainerWriter value)
Sets the writer to use.String
suppliedFileNameTipText()
Returns the tip text for this property.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 AbstractDataContainerWriter<T extends DataContainer> m_Writer
the writer to use.
-
m_OutputDir
protected PlaceholderDirectory m_OutputDir
the output directory.
-
m_FileNameGeneration
protected AbstractDataContainerFileWriter.FileNameGeneration m_FileNameGeneration
how to generate the filename.
-
m_SuppliedFileName
protected String m_SuppliedFileName
the supplied filename.
-
-
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 AbstractDataContainerWriter<T> getDefaultWriter()
Returns the default writer to use.- Returns:
- the default writer
-
setWriter
public void setWriter(AbstractDataContainerWriter value)
Sets the writer to use.- Parameters:
value
- the writer
-
getWriter
public AbstractDataContainerWriter 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 spectrums.- Parameters:
value
- the directory
-
getOutputDir
public PlaceholderDirectory getOutputDir()
Returns the current output directory for the spectrums.- 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.
-
setFileNameGeneration
public void setFileNameGeneration(AbstractDataContainerFileWriter.FileNameGeneration value)
Sets how to generate the filename.- Parameters:
value
- the generation
-
getFileNameGeneration
public AbstractDataContainerFileWriter.FileNameGeneration getFileNameGeneration()
Returns how to generate the file name.- Returns:
- the generation
-
fileNameGenerationTipText
public String fileNameGenerationTipText()
Returns the tip text for this property.- Returns:
- tip text for this property suitable for displaying in the GUI or for listing the options.
-
getDefaultSuppliedFileName
protected String getDefaultSuppliedFileName()
The default for the supplied file name.- Returns:
- the default
-
setSuppliedFileName
public void setSuppliedFileName(String value)
Sets the filename to use when set toAbstractDataContainerFileWriter.FileNameGeneration.SUPPLIED
. Extension included.- Parameters:
value
- the generation
-
getSuppliedFileName
public String getSuppliedFileName()
Returns the filename to use when set toAbstractDataContainerFileWriter.FileNameGeneration.SUPPLIED
. Extension included.- Returns:
- the generation
-
suppliedFileNameTipText
public String suppliedFileNameTipText()
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
-
getDataContainerClass
protected abstract Class getDataContainerClass()
Returns the data container class in use.- Returns:
- the container class
-
accepts
public Class[] accepts()
Returns the class that the consumer accepts.- Returns:
- the data type
-
generates
public Class[] generates()
Returns the class of objects that it generates.- Returns:
- java.lang.String.class
-
getDefaultExtension
protected String getDefaultExtension()
Returns the default extension to use if none can be found (excl dot).
Default implementation returns the default extension of the default writer.
-
doWrite
protected String doWrite(T[] conts, T cont)
Performs the actual writing.- Parameters:
conts
- the container array (if an array was received)cont
- the container (if a single container was received)- Returns:
- null if everything is fine, otherwise error message
-
doExecute
protected String doExecute()
Executes the flow item.- Specified by:
doExecute
in classAbstractActor
- Returns:
- null if everything is fine, otherwise error message
-
-