You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 6 Next »

UNDER PROGRESS

 

 

Introduction  

A job chains can be triggered by two type of Orders 1. time based Orders and 2. File Orders. A job chain can be configured to start on arrival of a file by using File Order Source. A File Order Source require configured by minimum to parameters 1. Directory and 2. Regex, where Directory is the file system location where JobScheduler should check for arrival of file and Regex is the regular expression which should be matched with the filename. Most simple example of File Order Source is <file_order_source directory="c:\sandbox\outgoing" regex="^test.txt$"/>

Example: job chain  FileWatching - file order source 

In the following example is a Windows operation system FileWatching job chain configured to start as soon as the file test.txt arrives in the directory c:\sandbox\outgoing. The File Order will be processed as normal order through job chain, one step to the next, until the Order reaches to end node of  job chain. In the example there are two distinctive job chain end nodes, each one for success and error state of File Order processing. 

<?xml version="1.0" encoding="ISO-8859-1"?>

<job_chain  title="File watching - file order source and regex" name="FileWatching">
    <file_order_source  directory="c:\sandbox\outgoing" regex="^test.txt$"/>
    <job_chain_node  state="100" job="show_file_name" next_state="success" error_state="error"/>
    <file_order_sink  state="success" remove="yes"/>
    <file_order_sink  state="error" remove="yes"/>
</job_chain>

 

Example: job - show_file_name

In the following example JobScheduler's inbuilt environment variable SCHEDULER_PARAM_SCHEDULER_FILE_PATH will be used to print file name on the stdout.

<?xml version="1.0" encoding="ISO-8859-1"?>

<job  order="yes" stop_on_error="no" title="show file name" name="show_file_name">
    <script  language="shell">
        <![CDATA[
			@echo %SCHEDULER_JOB_NAME% : job starting			
            @echo .
			@echo %SCHEDULER_JOB_NAME% :Start for file [ %SCHEDULER_PARAM_SCHEDULER_FILE_PATH% ].....
            @echo .
			@echo File Name :  %SCHEDULER_PARAM_SCHEDULER_FILE_PATH%			
			@echo %SCHEDULER_JOB_NAME% :End for file [ %SCHEDULER_PARAM_SCHEDULER_FILE_PATH% ] .....
        ]]>
    </script>
    <run_time />
</job>

 

File Order Sink

Every File Order is associated with a file on file system, this file was used as trigger to start the job chain. JobScheduler offers two options to handle files associated with a File Order, Once a File Order reaches to the end success/error node of job chain, file associated with it either can be remove or move to a location. 

Remove File: 

file_order_sink node can be configured to remove file after processing e.g.( <file_order_sink state="success" remove="yes"/> ). File associated with the File Order will be deleted from file system location configured in the directory parameter.

 Move File:

 A file_order_sink node can be configured to move file after processing to another directory e.g. (<file_order_sink  state="success" remove="no" move_to="c:\sandbox\success"/>). File associated with the File Order will be moved from file system location configured in the directory parameter to the location configured in the move_to parameter. 

Watching multiple directories

Watching multiple files

x

  • No labels