Package adams.flow.transformer
Class UnLzf
-
- All Implemented Interfaces:
AdditionalInformationHandler
,BufferSupporter
,CleanUpHandler
,Destroyable
,GlobalInfoSupporter
,LoggingLevelHandler
,LoggingSupporter
,OptionHandler
,QuickInfoSupporter
,ShallowCopySupporter<Actor>
,SizeOfHandler
,Stoppable
,StoppableWithFeedback
,VariablesInspectionHandler
,VariableChangeListener
,Actor
,ErrorHandler
,InputConsumer
,OutputProducer
,Serializable
,Comparable
public class UnLzf extends AbstractSingleDecompress
Decompresses an archive that was compressed with LZF. It is assumed, that the file ends with .lzf. If that is not the case, an alternative filename has to be provided.
The filename of the generated output filename is then broadcasted.
More information see here:
http://en.wikibooks.org/wiki/Data_Compression/Dictionary_compression#LZF
Input/output:
- accepts:
java.lang.String
java.io.File
- generates:
java.lang.String
Valid options are:
-D <int> (property: debugLevel) The greater the number the more additional info the scheme may output to the console (0 = off). default: 0 minimum: 0
-name <java.lang.String> (property: name) The name of the actor. default: UnLzf
-annotation <adams.core.base.BaseText> (property: annotations) The annotations to attach to this actor. default:
-skip (property: skip) If set to true, transformation is skipped and the input token is just forwarded as it is.
-stop-flow-on-error (property: stopFlowOnError) If set to true, the flow gets stopped in case this actor encounters an error; useful for critical actors.
-use-out-dir (property: useAlternativeOutputDir) By default the compressed file will be uncompressed at the same location as the archive with the .lzf extension; use this option to enabled the selection of a different output directory.
-out-dir <adams.core.io.PlaceholderDirectory> (property: alternativeOutputDir) The alternative output directory to use. default: ${CWD}
-alt-filename <java.lang.String> (property: alternativeFilename) The alternative filename to use, instead of the one from the input file with the .lzf extension removed. default:
-buffer <int> (property: bufferSize) The size of the buffer in bytes for the data stream. default: 1024
- Author:
- fracpete (fracpete at waikato dot ac dot nz)
- See Also:
- Serialized Form
-
-
Field Summary
-
Fields inherited from class adams.flow.transformer.AbstractSingleDecompress
DUMMY_EXTENSION, m_AlternativeFilename, m_AlternativeOutputDir, m_BufferSize, m_UseAlternativeOutputDir
-
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 UnLzf()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description String
alternativeFilenameTipText()
Returns the tip text for this property.protected String
decompress(byte[] inBytes, gnu.trove.list.TByteList outBytes)
Decompresses the bytes.protected String
decompress(File inFile, File outFile)
Decompresses the archive.protected String
getDefaultExtension()
Returns the default extension that the compressed archive has, e.g., ".lzf" for compressed files.String
globalInfo()
Returns a string describing the object.String
useAlternativeOutputDirTipText()
Returns the tip text for this property.-
Methods inherited from class adams.flow.transformer.AbstractSingleDecompress
accepts, alternativeOutputDirTipText, bufferSizeTipText, defineOptions, doExecute, generates, getAlternativeFilename, getAlternativeOutputDir, getBufferSize, getQuickInfo, getUseAlternativeOutputDir, setAlternativeFilename, setAlternativeOutputDir, setBufferSize, setUseAlternativeOutputDir
-
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, 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
-
-
-
-
Method Detail
-
globalInfo
public String globalInfo()
Returns a string describing the object.- Specified by:
globalInfo
in interfaceGlobalInfoSupporter
- Specified by:
globalInfo
in classAbstractOptionHandler
- Returns:
- a description suitable for displaying in the gui
-
useAlternativeOutputDirTipText
public String useAlternativeOutputDirTipText()
Returns the tip text for this property.- Specified by:
useAlternativeOutputDirTipText
in classAbstractSingleDecompress
- Returns:
- tip text for this property suitable for displaying in the GUI or for listing the options.
-
alternativeFilenameTipText
public String alternativeFilenameTipText()
Returns the tip text for this property.- Specified by:
alternativeFilenameTipText
in classAbstractSingleDecompress
- Returns:
- tip text for this property suitable for displaying in the GUI or for listing the options.
-
getDefaultExtension
protected String getDefaultExtension()
Returns the default extension that the compressed archive has, e.g., ".lzf" for compressed files.- Specified by:
getDefaultExtension
in classAbstractSingleDecompress
- Returns:
- the extension, including the dot
-
decompress
protected String decompress(File inFile, File outFile)
Decompresses the archive.- Specified by:
decompress
in classAbstractSingleDecompress
- Parameters:
inFile
- the compressed archiveoutFile
- the decompressed output file- Returns:
- null if successful, otherwise error message
-
decompress
protected String decompress(byte[] inBytes, gnu.trove.list.TByteList outBytes)
Decompresses the bytes.- Specified by:
decompress
in classAbstractSingleDecompress
- Parameters:
inBytes
- the compressed bytesoutBytes
- the decompressed bytes- Returns:
- null if successful, otherwise error message
-
-