adams.flow.transformer
Class AbstractMultiCompress

java.lang.Object
  extended by adams.core.ConsoleObject
      extended by adams.core.option.AbstractOptionHandler
          extended by adams.flow.core.AbstractActor
              extended by adams.flow.transformer.AbstractTransformer
                  extended by adams.flow.transformer.AbstractMultiCompress
All Implemented Interfaces:
AdditionalInformationHandler, CleanUpHandler, Debuggable, DebugOutputHandler, Destroyable, OptionHandler, QuickInfoSupporter, ShallowCopySupporter<AbstractActor>, SizeOfHandler, Stoppable, VariableChangeListener, Actor, ErrorHandler, InputConsumer, OutputProducer, Serializable, Comparable
Direct Known Subclasses:
Tar, ZIP

public abstract class AbstractMultiCompress
extends AbstractTransformer

Abstract ancestor for compression algorithms that allow the compression of multiple files (incl directory structure).

Version:
$Revision: 6830 $
Author:
fracpete (fracpete at waikato dot ac dot nz)
See Also:
Serialized Form

Field Summary
protected  int m_BufferSize
          the buffer size to use.
protected  PlaceholderFile m_Output
          the filename of the archive output.
protected  String m_StripPath
          the regular expression to use for stripping the path.
 
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_Headless, m_Name, m_Parent, m_Root, m_ScopeHandler, m_Self, m_Skip, m_StopFlowOnError, m_StopMessage, m_Stopped, m_StorageHandler, m_VariablesUpdated
 
Fields inherited from class adams.core.option.AbstractOptionHandler
m_DebugLevel, m_OptionManager
 
Fields inherited from interface adams.flow.core.Actor
FILE_EXTENSION, FILE_EXTENSION_GZ
 
Constructor Summary
AbstractMultiCompress()
           
 
Method Summary
 Class[] accepts()
          Returns the class that the consumer accepts.
 String bufferSizeTipText()
          Returns the tip text for this property.
protected abstract  String compress(File[] inFiles)
          Adds all the files to archive.
 void defineOptions()
          Adds options to the internal list of options.
protected  String doExecute()
          Performs the actual transformation.
 Class[] generates()
          Returns the class of objects that it generates.
 int getBufferSize()
          Returns the buffer size for the stream.
 PlaceholderFile getOutput()
          Returns the archive output filename.
 String getQuickInfo()
          Returns a quick info about the actor, which will be displayed in the GUI.
 String getStripPath()
          Returns the regular expression used for stripping the path.
abstract  String outputTipText()
          Returns the tip text for this property.
 void setBufferSize(int value)
          Sets the buffer size for the stream.
 void setOutput(PlaceholderFile value)
          Sets the archive output filename.
 void setStripPath(String value)
          Sets the regular expression to use for stripping the path.
 String stripPathTipText()
          Returns the tip text for this property.
 
Methods inherited from class adams.flow.transformer.AbstractTransformer
backupState, execute, hasPendingOutput, input, output, postExecute, reset, restoreState, wrapUp
 
Methods inherited from class adams.flow.core.AbstractActor
annotationsTipText, canInspectOptions, canPerformSetUpCheck, cleanUp, compareTo, debug, destroy, equals, findVariables, findVariables, findVariables, forceVariables, forCommandLine, forName, getAdditionalInformation, getAnnotations, getDefaultName, getDetectedVariables, getErrorHandler, getFlowActors, getFlowExecutionListeningSupporter, getFullName, getName, getNextSibling, getParent, getParentComponent, getPreviousSibling, getRoot, getScopeHandler, getSkip, getStopFlowOnError, getStopMessage, getStorageHandler, getVariables, handleError, handleException, hasErrorHandler, hasStopMessage, index, initialize, isBackedUp, isExecuted, isExecuting, isFinished, isHeadless, isStopped, nameTipText, performSetUpChecks, preExecute, pruneBackup, pruneBackup, setAnnotations, setErrorHandler, setHeadless, setName, setParent, setSkip, setStopFlowOnError, setUp, setVariables, shallowCopy, shallowCopy, sizeOf, skipTipText, stopExecution, stopExecution, stopFlowOnErrorTipText, updateDetectedVariables, updatePrefix, updateVariables, variableChanged
 
Methods inherited from class adams.core.option.AbstractOptionHandler
cleanUpOptions, debug, debugLevelTipText, finishInit, getDebugLevel, getOptionManager, globalInfo, isDebugOn, newOptionManager, setDebugLevel, toCommandLine, toString
 
Methods inherited from class adams.core.ConsoleObject
getDebugging, getSystemErr, getSystemOut
 
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, debug, destroy, equals, findVariables, getAnnotations, getDefaultName, getDetectedVariables, getErrorHandler, getFlowExecutionListeningSupporter, getFullName, getName, getNextSibling, getParent, getParentComponent, getPreviousSibling, getRoot, getScopeHandler, getSkip, getStopFlowOnError, getStopMessage, getStorageHandler, getVariables, handleError, hasErrorHandler, hasStopMessage, index, isExecuted, isFinished, isHeadless, isStopped, setAnnotations, setErrorHandler, setHeadless, setName, setParent, setSkip, setStopFlowOnError, setUp, setVariables, sizeOf, stopExecution, stopExecution, variableChanged
 
Methods inherited from interface adams.core.AdditionalInformationHandler
getAdditionalInformation
 
Methods inherited from interface adams.core.option.OptionHandler
cleanUpOptions, getOptionManager
 

Field Detail

m_Output

protected PlaceholderFile m_Output
the filename of the archive output.


m_StripPath

protected String m_StripPath
the regular expression to use for stripping the path.


m_BufferSize

protected int m_BufferSize
the buffer size to use.

Constructor Detail

AbstractMultiCompress

public AbstractMultiCompress()
Method Detail

defineOptions

public void defineOptions()
Adds options to the internal list of options.

Specified by:
defineOptions in interface OptionHandler
Overrides:
defineOptions in class AbstractActor

setOutput

public void setOutput(PlaceholderFile value)
Sets the archive output filename.

Parameters:
value - the filename

getOutput

public PlaceholderFile getOutput()
Returns the archive output filename.

Returns:
the filename

outputTipText

public abstract String outputTipText()
Returns the tip text for this property.

Returns:
tip text for this property suitable for displaying in the GUI or for listing the options.

setStripPath

public void setStripPath(String value)
Sets the regular expression to use for stripping the path.

Parameters:
value - the regular expression

getStripPath

public String getStripPath()
Returns the regular expression used for stripping the path.

Returns:
the regular expression

stripPathTipText

public String stripPathTipText()
Returns the tip text for this property.

Returns:
tip text for this property suitable for displaying in the GUI or for listing the options.

setBufferSize

public void setBufferSize(int value)
Sets the buffer size for the stream.

Parameters:
value - the size in bytes

getBufferSize

public int getBufferSize()
Returns the buffer size for the stream.

Returns:
the size in bytes

bufferSizeTipText

public String bufferSizeTipText()
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 interface QuickInfoSupporter
Specified by:
getQuickInfo in interface Actor
Overrides:
getQuickInfo in class AbstractActor
Returns:
null if no info available, otherwise short string

accepts

public Class[] accepts()
Returns the class that the consumer accepts.

Returns:
the accpted input

generates

public Class[] generates()
Returns the class of objects that it generates.

Returns:
the generated output

compress

protected abstract String compress(File[] inFiles)
Adds all the files to archive.

Parameters:
inFiles - the files store in the
Returns:
null if successful, otherwise error message

doExecute

protected String doExecute()
Performs the actual transformation.

Specified by:
doExecute in class AbstractActor
Returns:
null if everything is fine, otherwise error message


Copyright © 2013 University of Waikato, Hamilton, NZ. All Rights Reserved.