CInbox (Common-Inbox)  0.1
Common functionality for ingesting files for archiving.
 All Classes Functions Variables
Public Member Functions | Public Attributes | Protected Member Functions | List of all members
TaskHashValidate Class Reference
Inheritance diagram for TaskHashValidate:
TaskHash CITask

Public Member Functions

 __construct (&$CIFolder)
 
 init ()
 
 run ()
 
 finalize ()
 
- Public Member Functions inherited from TaskHash
 __construct (&$CIFolder)
 
 loadHashFromFile ($fileName)
 
 getTempHashForFilename ($fileName)
 
 getHashTypesAllowed ()
 
- Public Member Functions inherited from CITask
 __construct (&$CIFolder, $label)
 
 getName ()
 
 setLabel ($label)
 
 getLabel ()
 
 setDescription ($description)
 
 getDescription ()
 
 skip ()
 
 skipIt ()
 
 setItemSubDirs ($itemSubDirs)
 
 getStatus ()
 
 statusUndefined ()
 
 statusRunning ()
 
 statusWait ()
 
 statusDone ()
 
 statusPBCT ()
 
 statusPBC ()
 
 statusSkipped ()
 
 statusError ()
 
 statusConfigError ()
 
 init ()
 
 run ()
 
 finalize ()
 

Public Attributes

const TASK_LABEL = 'Validate target hashcodes'
 
- Public Attributes inherited from TaskHash
const TASK_LABEL = 'Hash Base (abstract)'
 
const CONF_HASH_TYPE = 'HASH_TYPE'
 
- Public Attributes inherited from CITask
const STATUS_UNDEFINED = 0
 Undefined. Default unless task changes it.
 
const STATUS_RUNNING = 1
 Undefined, but indicates that the task is in progress.
 
const STATUS_WAIT = 2
 Task decided that Item is not ready yet and shall be moved back to 'to-do'.
 
const STATUS_DONE = 5
 Success! This means the task completed successfully.
 
const STATUS_PBCT = 6
 There were problems, but the task may continue.
 
const STATUS_PBC = 7
 There were problems, but subsequent task may continue.
 
const STATUS_ERROR = 10
 An error occurred. Abort execution as soon as possible.
 
const STATUS_CONFIG_ERROR = 11
 If a config option was not valid.
 
const STATUS_SKIPPED = 15
 If task was skipped.
 
const ONCE_PER_ITEM = false
 True: Run this task only once per item.
 
const IS_RECURSIVE = false
 Default (false): one task = one folder. True: The task performs actions on subfolders too.
 
const CONF_COPY_EXCLUDE = 'COPY_EXCLUDE'
 Patterns which files to exclude from copying.
 
const MASK_TARGET_TEMP = 'temp_%s'
 

Protected Member Functions

 checkTarget ($sourceFolder, $targetFolder)
 
- Protected Member Functions inherited from TaskHash
 loadSettings ()
 
 saveHashToFile ($fileName, $hashCode)
 
 getTempHashForFolder ($folderName)
 
 hashTypeIsAllowed ($hashType)
 
 generateHashcode ($hashType, $fileName)
 
 compareHashcode ($hash1, $hash2)
 
- Protected Member Functions inherited from CITask
 setName ($name)
 
 exclude ($file, $excludePatterns)
 
 optionIsArray ($option, $optionName)
 
 resolveTargetFolderTemp ($CIFolder=null)
 
 setStatus ($status)
 
 setStatusUndefined ()
 
 setStatusRunning ()
 
 setStatusWait ()
 
 setStatusDone ()
 
 setStatusPBCT ()
 
 setStatusPBC ()
 
 setStatusSkipped ()
 
 setStatusError ()
 
 setStatusConfigError ()
 
 checkTempFolder ()
 
 getTempFolder ()
 
 setTempFolder ($tempFolder=null)
 
 loadSettings ()
 

Additional Inherited Members

- Static Public Member Functions inherited from TaskHash
static getHashTempFilename ($fileName, $CIFolder, $hashType)
 
static removeHashTempFile ($fileName, $CIFolder, $hashType)
 
- Static Public Member Functions inherited from CITask
static isRecursive ()
 
static oncePerItem ()
 
static getTaskByName ($taskName, $CIFolder)
 
static getTaskClassName ($taskName)
 
- Protected Attributes inherited from TaskHash
 $hashType
 
- Protected Attributes inherited from CITask
 $logger
 Logging handler.
 
 $name
 Class name of this task.
 
 $label
 Human readable Task label.
 
 $description
 Human readable description of Task's purpose/actions.
 
 $CIFolder
 CIFolder object that provides all information needed for this task.
 
 $sourceFolder
 Source folder of this task.
 
 $targetFolder
 Target folder of this task (read from config).
 
 $targetFolderTemp
 Temporary name of Target folder of this task. Used until inbox processing completed successfully.
 
 $itemSubDirs
 Array of Item subfolders: key=foldername, value=CIFolder (initialized with its config).
 
 $tempFolder
 Path of the temp folder for this task.
 
 $copyExclude
 Contains the value of CONF_COPY_EXCLUDE.
 
 $skip = false
 True: Skip execution. Default=false (=normal execution).
 
 $status
 Status of this task (=for current item subfolder).
 
- Static Protected Attributes inherited from CITask
static $statusGlobal
 Status of the sum of tasks of this type. // TODO! Implement and use this.
 

Detailed Description

Validates hashcodes of the target files by comparing them to the ones in temp-folder. This requires the Task 'HashGenerate' to be run before this one.

Author
Peter Bubestinger-Steindl (pb@av.nosp@m.-rd..nosp@m.com)
See also

Member Function Documentation

TaskHashValidate::finalize ( )

Actions to be performed after run() finished successfully;

TaskHashValidate::init ( )

Prepare everything so it's ready for processing.

Returns
bool success True if init went fine, False if an error occurred.
TaskHashValidate::run ( )

Perform the actual steps of this task.

IMPORTANT: This task must be run before TaskRenameTarget, because if validation fails, after renaming, the Item cannot easily be reset, without deleting the target-leftovers... Therefore we use "targetFolderTemp".

See also
$this->resolveTargetFolderTemp()

The documentation for this class was generated from the following file: