This plugin allows you to post process files using a powerful set of tasks.  You can move files, rename them, copy them, execute external programs, write text files, use date variables, multithread operations, copy to FTP/FTPS/SFTP servers, etc.

The source filter is on every task.  It will filter out items that don't match the source from being included in the current task item.  So you may want to apply certain actions to specific file types on a  per task basis.

MultiThreaded allows for tasks to run in parallel.  Be sure to add a Wait task to have things stop and wait for all the separate threads that a re running before allowing the entire job to complete.  This is useful to transfer a file to multiple external locations at the same time instead of sequentially.
----
!Find Task
The find task will scan a particular folder, or remote FTP, or SFTP server getting directory listings recursively up to the depth allowed.  These found items can then be used by future task items.

[attachments|find_task.png]
----
!Copy Task
The copy task will take a collection of files that were either "Found" using the Find task, or passed into the plugin through an event defined in the user manager.  The files in the list can be filtered down using the "Source filter" field to limit what you are copying.  An example might be *.txt.  The destination can reference the {path} to the original file.

So you may do: /Archive/{path}  or  /Archive/{parent_path}/{name}

The wait amount is how long to wait to verify the file is no longer being written to by some outside process.  The modified date, and file size are both compared.  It will wait put o the max amount of time before giving up and aborting the job.

If you want to work with the copied files, you can have them added intuit he list of files that are being processed for future tasks.  Be careful with this because if you do this, and then do a delete, both the original and copy would then be deleted.

[attachements|copy_task.png]
----
!Move Task
The move task is similar to the copy task but it will just move the file to the destination location.  If the move is across physical locations, it will copy, and then delete the source item to accomplish the move.

[attachments|move_task.png]
----
!Delete Task
The delete task will delete items that are in the list of files being worked with.  So this includes items from the "Find" task, or items passed to the plugin through an event.  It will keep attempting a delete for x seconds in the event the file is in use, or locked, etc.

[attachments|delete_task.png]