Class FileMover
- java.lang.Object
-
- adams.core.logging.LoggingObject
-
- adams.core.logging.CustomLoggingLevelObject
-
- adams.core.option.AbstractOptionHandler
-
- adams.flow.standalone.rats.output.AbstractRatOutput
-
- adams.flow.standalone.rats.output.FileMover
-
- All Implemented Interfaces:
adams.core.AdditionalInformationHandler
,adams.core.AtomicMoveSupporter
,adams.core.CleanUpHandler
,adams.core.Destroyable
,adams.core.GlobalInfoSupporter
,adams.core.logging.LoggingLevelHandler
,adams.core.logging.LoggingSupporter
,adams.core.option.OptionHandler
,adams.core.QuickInfoSupporter
,adams.core.ShallowCopySupporter<AbstractRatOutput>
,adams.core.SizeOfHandler
,adams.core.Stoppable
,adams.core.StoppableWithFeedback
,adams.event.VariableChangeListener
,RatOutput
,Serializable
public class FileMover extends AbstractRatOutput implements adams.core.AtomicMoveSupporter
Moves files into the target directory after a specified time period.
-logging-level <OFF|SEVERE|WARNING|INFO|CONFIG|FINE|FINER|FINEST> (property: loggingLevel) The logging level for outputting errors and debugging output. default: WARNING
-wait-move <int> (property: waitMove) The number of milli-seconds to wait before moving the files. default: 0 minimum: 0
-atomic-move <boolean> (property: atomicMove) If true, then an atomic move operation will be attempted (NB: not supported by all operating systems). default: false
-target <adams.core.io.PlaceholderDirectory> (property: target) The directory to move the files to. default: ${CWD}
- Version:
- $Revision$
- Author:
- fracpete (fracpete at waikato dot ac dot nz)
- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description protected boolean
m_AtomicMove
whether to perform an atomic move.protected adams.core.io.PlaceholderDirectory
m_Target
the target directory.protected int
m_WaitMove
the waiting period in msec before moving the files.-
Fields inherited from class adams.flow.standalone.rats.output.AbstractRatOutput
m_BackupState, m_DetectedObjectVariables, m_DetectedVariables, m_Input, m_LoggingPrefix, m_Owner, m_Stopped, m_VariablesUpdated
-
-
Constructor Summary
Constructors Constructor Description FileMover()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Class[]
accepts()
Returns the type of data that gets accepted.String
atomicMoveTipText()
Returns the tip text for this property.String
check()
Hook method for performing checks.void
defineOptions()
Adds options to the internal list of options.protected String
doTransmit()
Performs the actual transmission.boolean
getAtomicMove()
Returns whether to attempt atomic move operation.String
getQuickInfo()
Returns a quick info about the actor, which will be displayed in the GUI.adams.core.io.PlaceholderDirectory
getTarget()
Returns the directory to move the files to.int
getWaitMove()
Returns the number of milli-seconds to wait before moving the files.String
globalInfo()
Returns a string describing the object.void
setAtomicMove(boolean value)
Sets whether to attempt atomic move operation.void
setTarget(adams.core.io.PlaceholderDirectory value)
Sets the directory to move the files to.void
setWaitMove(int value)
Sets the number of milli-seconds to wait before moving the files.String
targetTipText()
Returns the tip text for this property.String
waitMoveTipText()
Returns the tip text for this property.-
Methods inherited from class adams.flow.standalone.rats.output.AbstractRatOutput
backupState, canInput, cleanUp, configureLogger, doWait, findVariables, getAdditionalInformation, getFullName, getOwner, getQueue, getVariables, handleException, initialize, initTransmission, input, isBackedUp, isStopped, pruneBackup, pruneBackup, restoreState, setOwner, setUp, shallowCopy, shallowCopy, stopExecution, transmit, updateDetectedVariables, updatePrefix, updateVariables, variableChanged
-
Methods inherited from class adams.core.option.AbstractOptionHandler
cleanUpOptions, destroy, finishInit, getDefaultLoggingLevel, getOptionManager, loggingLevelTipText, newOptionManager, reset, setLoggingLevel, toCommandLine, toString
-
Methods inherited from class adams.core.logging.LoggingObject
getLogger, getLoggingLevel, initializeLogging, isLoggingEnabled, sizeOf
-
-
-
-
Method Detail
-
globalInfo
public String globalInfo()
Returns a string describing the object.- Specified by:
globalInfo
in interfaceadams.core.GlobalInfoSupporter
- Specified by:
globalInfo
in classadams.core.option.AbstractOptionHandler
- Returns:
- a description suitable for displaying in the gui
-
defineOptions
public void defineOptions()
Adds options to the internal list of options.- Specified by:
defineOptions
in interfaceadams.core.option.OptionHandler
- Overrides:
defineOptions
in classadams.core.option.AbstractOptionHandler
-
setWaitMove
public void setWaitMove(int value)
Sets the number of milli-seconds to wait before moving the files.- Parameters:
value
- the number of milli-seconds
-
getWaitMove
public int getWaitMove()
Returns the number of milli-seconds to wait before moving the files.- Returns:
- the number of milli-seconds
-
waitMoveTipText
public String waitMoveTipText()
Returns the tip text for this property.- Returns:
- tip text for this property suitable for displaying in the GUI or for listing the options.
-
setAtomicMove
public void setAtomicMove(boolean value)
Sets whether to attempt atomic move operation.- Specified by:
setAtomicMove
in interfaceadams.core.AtomicMoveSupporter
- Parameters:
value
- if true then attempt atomic move operation
-
getAtomicMove
public boolean getAtomicMove()
Returns whether to attempt atomic move operation.- Specified by:
getAtomicMove
in interfaceadams.core.AtomicMoveSupporter
- Returns:
- true if to attempt atomic move operation
-
atomicMoveTipText
public String atomicMoveTipText()
Returns the tip text for this property.- Specified by:
atomicMoveTipText
in interfaceadams.core.AtomicMoveSupporter
- Returns:
- tip text for this property suitable for displaying in the GUI or for listing the options.
-
setTarget
public void setTarget(adams.core.io.PlaceholderDirectory value)
Sets the directory to move the files to.- Parameters:
value
- the target directory
-
getTarget
public adams.core.io.PlaceholderDirectory getTarget()
Returns the directory to move the files to.- Returns:
- the target directory
-
targetTipText
public String targetTipText()
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 interfaceadams.core.QuickInfoSupporter
- Overrides:
getQuickInfo
in classAbstractRatOutput
- Returns:
- null if no info available, otherwise short string
-
check
public String check()
Hook method for performing checks. Makes sure that directories exist.- Overrides:
check
in classAbstractRatOutput
- Returns:
- null if successful, otherwise error message
- Throws:
Exception
- if checks fail
-
accepts
public Class[] accepts()
Returns the type of data that gets accepted.- Specified by:
accepts
in interfaceRatOutput
- Specified by:
accepts
in classAbstractRatOutput
- Returns:
- the type of data
-
doTransmit
protected String doTransmit()
Performs the actual transmission.- Specified by:
doTransmit
in classAbstractRatOutput
- Returns:
- null if successful, otherwise error message
-
-