{
	"deliveryDate": "2022-09-13T13:19:30.731+00:00",
	"docPath": "/sos/jitl-jobs/RenameFileJob.xml",
	"docName": "RenameFileJob.xml",
	"assignReference": "RenameFileJob",
	"title": "Rename one or more files",
	"javaClass": "com.sos.jitl.jobs.file.RenameFileJob",
	"hasRequiredArguments": true,
	"arguments": {
		"source_file": {
			"type": "String",
			"required": true,
			"description": "<div class=\"jitl-job-param\"><div class=\"note\">\n                   \n    <p class=\"title\">File or Folder to be monitored</p>\n                   \n    <p>Monitored file or directory.</p>\n                \n</div>\n\n            <div class=\"note\">\n                   \n    <p>\n            Supports masks for substitution in the file name\n            and directory\n            name with format strings that are\n            enclosed by brackets\n            ([\n            and\n            ]).\n            The following format strings are supported:\n        </p>\n                   \n    <p>\n                          <code>\n                [date:date format]\n            </code>\n               \n    </p>\n                   \n    <p>\n        \n            date format\n            must be a valid Java data format string,\n            e.g.\n            yyyyMMddHHmmss\n            ,\n            yyyy-MM-dd.HHmmss\n            etc.\n        </p>\n                    \n    <p>\n                    For further information on valid values for a dateformat string see\n            <a href=\"http://docs.oracle.com/javase/1.4.2/docs/api/java/text/SimpleDateFormat.html\">SimpleDateFormat</a>\n               \n    </p>\n            \n               \n    <p>\n            An example:\n        </p>\n                   \n    <p>\n                          <code>\n                &lt;param name=\"file\"\n                value=\"sample/hello[date:yyyyMMdd].txt\"\n                /&gt; </code>\n               \n    </p>\n                   \n    <p>\n                    On 2050-12-31 the parameter\n            <code>file</code>\n            contains the value\n            <code>\"sample/hello20501231.txt\"</code>\n            .\n        \n    </p>\n                \n</div></div>"
		},
		"target_file": {
			"type": "String",
			"required": true,
			"description": "<div class=\"jitl-job-param\"><div class=\"note\">\n                   \n    <p class=\"title\">Target-file or -folder</p>\n    \t\t             \n    <p>Target file or directory</p>\n    \t\t             \n    <p>\n        \t\t\tIf the\n\t\t\t<i><code>target_file</code></i>\n\t\t\tis not specified, then the directory path of\n\t\t\t<i><code>source_file</code></i>\n\t\t\tis used as target.\n\t\t\n    </p>\n    \t           \n</div>\n\n            <div class=\"note\">\n                   \n    <p>\n            Supports masks for substitution in the file name\n            and directory\n            name with format strings that are\n            enclosed by brackets\n            ([\n            and\n            ]).\n            The following format strings are supported:\n        </p>\n                   \n    <p>\n                          <code>\n                [date:date format]\n            </code>\n               \n    </p>\n                   \n    <p>\n        \n            date format\n            must be a valid Java data format string,\n            e.g.\n            yyyyMMddHHmmss\n            ,\n            yyyy-MM-dd.HHmmss\n            etc.\n        </p>\n                    \n    <p>\n                    For further information on valid values for a dateformat string see\n            <a href=\"http://docs.oracle.com/javase/1.4.2/docs/api/java/text/SimpleDateFormat.html\">SimpleDateFormat</a>\n               \n    </p>\n            \n               \n    <p>\n            An example:\n        </p>\n                   \n    <p>\n                          <code>\n                &lt;param name=\"file\"\n                value=\"sample/hello[date:yyyyMMdd].txt\"\n                /&gt; </code>\n               \n    </p>\n                   \n    <p>\n                    On 2050-12-31 the parameter\n            <code>file</code>\n            contains the value\n            <code>\"sample/hello20501231.txt\"</code>\n            .\n        \n    </p>\n                \n</div></div>"
		},
		"file_spec": {
			"type": "String",
			"default": ".*",
			"required": false,
			"description": "<div class=\"jitl-job-param\"><div class=\"note\">\n    \t\t             \n    <p class=\"title\">Regular Expression for filename filtering</p>\n    \t\t             \n    <p>\n\t\t\tRegular Expression for file filtering.\n\t\t\tThe behaviour is CASE_INSENSITIVE.\n\t\t</p>\n    \t\t             \n    <p>\n        \t\t\tOnly effective if the parameter\n\t\t\t<i><code>source_file</code></i>\n\t\t\tis a directory.\n\t\t\n    </p>\n    \t           \n</div>\n\n\t           <div class=\"note\">\n    \t\t             \n    <p>\n\t\tSome remarks on regular expression, used in JobScheduler and YADE.\n\t\t</p>\n    \t\t             \n    <p>\n        \t\t\tA regular expression is not a\n\t\t\t<a href=\"http://en.wikipedia.org/wiki/Wildcard_character#Files_and_directories\">wildcard</a>.\n\t\t\tTo get an impression of the differences one have a look on the meaning of the wildcard *.txt, which will\n\t\t\tselect all filenames with the filename-extension \".txt\".\n\t\t\tA regular expression to match, e.g. works the same way, this \"wildcard\" must look like \"^.*\\.txt$\".\n\t\t\tThat looks a little bit strange but it is much more flexible and powerfull on filtering filenames\n\t\t\tthan the concept of wildcards, if one want to filter more complex names or pattern.\n\t\t\n    </p>\n    \t\t             \n    <p>\n        \t        The general syntax of an\n\t        <a href=\"http://en.wikipedia.org/wiki/Regular_expression\">regular expression</a>, also referred to as regex or regexp,\n\t        is described\n\t        <a href=\"http://pubs.opengroup.org/onlinepubs/009695399/basedefs/xbd_chap09.html\">\n\t        here</a>.\n\t        It is different to other RegExp definitions, e.g. as for Perl.\n\t\t\n    </p>\n    \t              \n    <p>\n        \t    \tFor further information on regular expressions see\n\t        <a href=\"https://docs.oracle.com/javase/7/docs/api/java/util/regex/Pattern.html\">java.util.regex.Pattern</a>\n\t              \n    </p>\n    \t              \n    <p>\n\t    \tIf you want (only part of the regex) to be case sensitive , then you have the option to use\n\t    \tthe (?-i) and [optionally] (?i) mode modifiers:    (?-i)G[a-b](?i).*\n\t\t</p>\n    \t\t             \n    <p>\n\t\t\tIf you're dealing with Unicode characters besides ASCII, check whether or not your regex engine properly supports them.\n\t\t</p>\n    \t    \n            \n</div>\n\n            <div class=\"note\">\n    \t\t             \n    <p>\n\t    \tAs an extension of regular expression the [date:] variable is supported. Using this feature it is possible to create a regexp, which is\n\t    \tdepending on the date with is defined in the date-format.\n\t    </p>\n    \t    \n            \n</div>\n\n            <div class=\"note\">\n                   \n    <p>\n            Examples for regular expressions used for replacing:\n        </p>\n                   \n    <p>\n                          \n        <table class=\"explanation\">\n             \n                     \n            <tr>\n                                        <th>\n                           <code>source_file</code>\n                        </th>\n                        <th>\n                           <code>file_spec</code>\n                        </th>\n                        <th>\n                           <code>replacing</code>\n                        </th>\n                        <th>\n                           <code>replacement</code>\n                        </th>\n                        <th>Example Input</th>\n                        <th>Output</th>\n                        <th>Comment</th>\n                     \n            </tr>\n                                 \n            <tr>\n                                        <td>./temp</td>\n                        <td>.*</td>\n                        <td>~</td>\n                        <td>\"\"</td>\n                        <td>hallo.dat~</td>\n                        <td>hallo.dat</td>\n                        <td>-</td>\n                     \n            </tr>\n                                 \n            <tr>\n                                        <td>a.txt</td>\n                        <td>-</td>\n                        <td>[.]txt</td>\n                        <td>_2011-11-24.txt</td>\n                        <td>-</td>\n                        <td>a_2011-11-24.txt</td>\n                        <td>-</td>\n                     \n            </tr>\n                                 \n            <tr>\n                                        <td>./temp</td>\n                        <td>.*</td>\n                        <td>.*</td>\n                        <td>[filename:] [date:yyyy-MM-dd].dat</td>\n                        <td>a.txt</td>\n                        <td>a.txt2011-11-24.dat</td>\n                        <td>[filename:] and [date:] will be substituted after file has\n                        been replaced\n                    </td>\n                     \n            </tr>\n                                 \n            <tr>\n                                        <td>./temp</td>\n                        <td>.*[.]txt</td>\n                        <td>a.*?b</td>\n                        <td>world</td>\n                        <td>a.1.b.txt.b</td>\n                        <td>world.txt.b</td>\n                        <td>.*? : ungreedy usage of .*</td>\n                     \n            </tr>\n                                 \n            <tr>\n                                        <td>abcdefg.txt</td>\n                        <td>-</td>\n                        <td>^(ab)cde(fg)[.]txt</td>\n                        <td>123;[date:yyyy-MM-dd]</td>\n                        <td>-</td>\n                        <td>123cde2011-11-24.txt</td>\n                        <td>; : separator between multiple replacements</td>\n                     \n            </tr>\n                                 \n            <tr>\n                                        <td>./temp</td>\n                        <td>.*dat$</td>\n                        <td>(ab)_c[0-9]d_(fg)</td>\n                        <td>group1;group2</td>\n                        <td>ab_c1d_fg. ab_c2d_fg.dat</td>\n                        <td>group1_c1d_group2. ab_c2d_fg.dat</td>\n                        <td>Only the first pattern match is replaced</td>\n                     \n            </tr>\n                                 \n            <tr>\n                                        <td>./temp</td>\n                        <td>.*</td>\n                        <td>^(?:aa|bb)_. {2}_([0-9]+_[0-9]+)$</td>\n                        <td>tail</td>\n                        <td>aa_QU_061205_222334</td>\n                        <td>aa_QU_tail</td>\n                        <td>(?:...) : \"?:\" specifies a non capturing group. The file will\n                        not be replaced.\n                    </td>\n                     \n            </tr>\n                                 \n            <tr>\n                                        <td>./temp</td>\n                        <td>FILE.txt</td>\n                        <td>.*</td>\n                        <td>[filename:lowercase]_[filename:uppercase]_[filename:]</td>\n                        <td>FILE.txt</td>\n                        <td>file.txt_FILE.TXT_FILE.txt</td>\n                        <td>-</td>\n                     \n            </tr>\n                              \n        </table>\n                          \n        <table class=\"explanation\" style=\"margin-top:10px\">\n                                 \n            <tr>\n                                        <th>\n                           <code>source_file</code>\n                        </th>\n                        <th>\n                           <code>target_file</code>\n                        </th>\n                        <th>\n                           <code>file_spec</code>\n                        </th>\n                        <th>\n                           <code>create_dir</code>\n                        </th>\n                        <th>\n                           <code>replacing</code>\n                        </th>\n                        <th>\n                           <code>replacement</code>\n                        </th>\n                        <th>Example input</th>\n                        <th>Output</th>\n                        <th>Comment</th>\n                     \n            </tr>\n                                 \n            <tr>\n                                        <td>aaa/bbb/</td>\n                        <td>[directory:]/[date:yyyyMMdd]/</td>\n                        <td>hello.txt</td>\n                        <td>true</td>\n                        <td>[.]txt</td>\n                        <td>[date:yyyy].txt</td>\n                        <td>aaa/bbb/hello.txt</td>\n                        <td>aaa/bbb/20070316/hello2007.txt</td>\n                        <td>If the directory aaa/bbb/20070316 does not yet exist it will\n                        be created\n                    </td>\n                     \n            </tr>\n                              \n        </table>\n                       \n    </p>\n                   \n    <p>\n                    For further information see\n            <a href=\"http://java.sun.com/j2se/1.4.2/docs/api/java/util/regex/Pattern.html\">java.util.regex.Pattern</a>\n               \n    </p>\n                   \n    <p>\n                    For further information on date-patterns see:\n            <a href=\"http://docs.oracle.com/javase/6/docs/api/java/text/SimpleDateFormat.html\">java.util.regex.Pattern</a>\n               \n    </p>\n                \n</div></div>"
		},
		"gracious": {
			"type": "Boolean",
			"default": false,
			"required": false,
			"description": "<div class=\"jitl-job-param\"><div class=\"note\">\n    \t\t             \n    <p class=\"title\">Specify error message tolerance</p>\n    \t\t             \n    <p>\n\t\t\tEnables or disables error messages that are caused by an empty result-set, which is the result of an operation, executed by the job.\n    \t</p>\n    \t           \n</div></div>"
		},
		"max_file_age": {
			"type": "Number",
			"default": 0,
			"required": false,
			"description": "<div class=\"jitl-job-param\"><div class=\"note\">\n                   \n    <p class=\"title\">Maximum age of a file</p>\n                   \n    <p>\n            Specifies the maximum age of a file.\n            If a file is older, then it is deemed not to exist, it will be not included in the result-list.\n        </p>\n                \n</div>\n\n            <div class=\"note\">\n    \t              \n    <p>Valid values:</p>\n     \t             \n    <table class=\"explanation\">\n         \n\t\t                \n        <tr>\n            \t\t\t                  <th>Value</th>\n\t\t\t                  <th>Description</th>\n\t\t                \n        </tr>\n        \t\t                \n        <tr>\n            \t\t\t                  <td>0</td>\n\t\t\t                  <td>The value of the parameter has no effect and the parameter is not part of the filter.</td>\n\t\t                \n        </tr>\n        \t\t                \n        <tr>\n            \t\t\t                  <td>seconds</td>\n\t\t\t                  <td>no of seconds.</td>\n\t\t                \n        </tr>\n        \t\t                \n        <tr>\n            \t\t\t                  <td>hours:minutes</td>\n\t\t\t                  <td>01:15 is to read as \"1 hour and 15 minutes\".</td>\n\t\t                \n        </tr>\n        \t\t                \n        <tr>\n            \t\t\t                  <td>hours:minutes:seconds</td>\n\t\t\t                  <td>01:15:10 is to read as \"1 hour, 15 minutes and 10 seconds\".</td>\n\t\t                \n        </tr>\n        \t              \n    </table>\n                \n</div></div>"
		},
		"max_file_size": {
			"type": "Number",
			"default": -1,
			"required": false,
			"description": "<div class=\"jitl-job-param\"><div class=\"note\">\n    \t\t             \n    <p class=\"title\">maximum size of a file</p>\n    \t\t             \n    <p>\n\t\t\tSpecifies the maximum size of a file in bytes:\n\t\t\tshould the size of one of the files exceed this value, then it is classified as non-existing.\n\t\t</p>\n    \t           \n</div>\n\n            <div class=\"note\">\n    \t              \n    <p>valid values for file size are</p>\n    \t\t             \n    <table class=\"explanation\">\n        \t\t\t               \n        <tr>\n            \t\t\t\t                 <th>Value</th>\n\t\t\t\t                 <th>Description</th>\n\t\t\t               \n        </tr>\n        \t\t\t               \n        <tr>\n            \t\t\t\t                 <td>-1</td>\n\t\t\t\t                 <td>The value of the parameter has no effect and the parameter is not part of the filter.</td>\n\t\t\t               \n        </tr>\n        \t\t\t               \n        <tr>\n            \t\t\t\t                 <td>number</td>\n\t\t\t\t                 <td>a number stand for the size in byte, e.g. 40 means 40 bytes.</td>\n\t\t\t               \n        </tr>\n        \t\t\t               \n        <tr>\n            \t\t\t\t                 <td>numberKB</td>\n\t\t\t\t                 <td>a number with the chars \"KB\" stand for the size in kilobyte.</td>\n\t\t\t               \n        </tr>\n        \t\t\t               \n        <tr>\n            \t\t\t\t                 <td>numberMB</td>\n\t\t\t\t                 <td>a number with the chars \"MB\" stand for the size in megabyte.</td>\n\t\t\t               \n        </tr>\n                          \n        <tr>\n                                 <td>numberGB</td>\n                     <td>a number with the chars \"GB\" stand for the size in gigabyte.</td>\n                  \n        </tr>\n        \t\t             \n    </table>\n                \n</div></div>"
		},
		"min_file_age": {
			"type": "Number",
			"default": 0,
			"required": false,
			"description": "<div class=\"jitl-job-param\"><div class=\"note\">\n                   \n    <p class=\"title\">minimum age of a file</p>\n                   \n    <p>\n        \tSpecifies the minimum age of a file.\n        \tIf the file(s) is newer then it is classified as non-existing, it will be not included in the result-list.\n        </p>\n       \t        \n</div>\n\n   \t        <div class=\"note\">\n    \t              \n    <p>Valid values:</p>\n     \t             \n    <table class=\"explanation\">\n         \n\t\t                \n        <tr>\n            \t\t\t                  <th>Value</th>\n\t\t\t                  <th>Description</th>\n\t\t                \n        </tr>\n        \t\t                \n        <tr>\n            \t\t\t                  <td>0</td>\n\t\t\t                  <td>The value of the parameter has no effect and the parameter is not part of the filter.</td>\n\t\t                \n        </tr>\n        \t\t                \n        <tr>\n            \t\t\t                  <td>seconds</td>\n\t\t\t                  <td>no of seconds.</td>\n\t\t                \n        </tr>\n        \t\t                \n        <tr>\n            \t\t\t                  <td>hours:minutes</td>\n\t\t\t                  <td>01:15 is to read as \"1 hour and 15 minutes\".</td>\n\t\t                \n        </tr>\n        \t\t                \n        <tr>\n            \t\t\t                  <td>hours:minutes:seconds</td>\n\t\t\t                  <td>01:15:10 is to read as \"1 hour, 15 minutes and 10 seconds\".</td>\n\t\t                \n        </tr>\n        \t              \n    </table>\n                \n</div></div>"
		},
		"min_file_size": {
			"type": "Number",
			"default": -1,
			"required": false,
			"description": "<div class=\"jitl-job-param\"><div class=\"note\">\n    \t\t             \n    <p class=\"title\">minimum size of one or multiple files </p>\n    \t\t             \n    <p>\n\t\t\tSpecifies the minimum size of one or multiple files in bytes:\n\t\t\tshould the size of one of the files fall below this value, then it is not included in the result list of the operation.\n\t\t</p>\n    \t           \n</div>\n\n\t           <div class=\"note\">\n    \t              \n    <p>valid values for file size are</p>\n    \t\t             \n    <table class=\"explanation\">\n        \t\t\t               \n        <tr>\n            \t\t\t\t                 <th>Value</th>\n\t\t\t\t                 <th>Description</th>\n\t\t\t               \n        </tr>\n        \t\t\t               \n        <tr>\n            \t\t\t\t                 <td>-1</td>\n\t\t\t\t                 <td>The value of the parameter has no effect and the parameter is not part of the filter.</td>\n\t\t\t               \n        </tr>\n        \t\t\t               \n        <tr>\n            \t\t\t\t                 <td>number</td>\n\t\t\t\t                 <td>a number stand for the size in byte, e.g. 40 means 40 bytes.</td>\n\t\t\t               \n        </tr>\n        \t\t\t               \n        <tr>\n            \t\t\t\t                 <td>numberKB</td>\n\t\t\t\t                 <td>a number with the chars \"KB\" stand for the size in kilobyte.</td>\n\t\t\t               \n        </tr>\n        \t\t\t               \n        <tr>\n            \t\t\t\t                 <td>numberMB</td>\n\t\t\t\t                 <td>a number with the chars \"MB\" stand for the size in megabyte.</td>\n\t\t\t               \n        </tr>\n                          \n        <tr>\n                                 <td>numberGB</td>\n                     <td>a number with the chars \"GB\" stand for the size in gigabyte.</td>\n                  \n        </tr>\n        \t\t             \n    </table>\n                \n</div></div>"
		},
		"skip_first_files": {
			"type": "Number",
			"default": 0,
			"required": false,
			"description": "<div class=\"jitl-job-param\"><div class=\"note\">\n                   \n    <p class=\"title\">number of files to remove from the top of the result-set</p>\n                   \n    <p>\n                    The number of files are removed from the beginning of the set\n            resulting by<i><code>sort_criteria</code></i>,<i><code>sort_order</code></i>\n            These files are excluded from further operations.\n        \n    </p>\n                   \n    <p>\n            The result set is sorted according to the parameters:\n        </p>\n                   \n    <p>\n                          \n        <ul>\n                                 \n            <li>\n                                        <i><code>sort_criteria</code></i>\n                     \n            </li>\n                                 \n            <li>\n                                        <i><code>sort_order</code></i>\n                     \n            </li>\n                              \n        </ul>\n                       \n    </p>\n                \n</div></div>"
		},
		"skip_last_files": {
			"type": "Number",
			"default": 0,
			"required": false,
			"description": "<div class=\"jitl-job-param\"><div class=\"note\">\n                   \n    <p class=\"title\">number of files to remove from the top of the result-set</p>\n                   \n    <p>\n                    The number of files are removed from the beginning of the set\n            resulting by<i><code>sort_criteria</code></i>,<i><code>sort_order</code></i>\n            These files are excluded from further operations.\n        \n    </p>\n                   \n    <p>\n            The result set is sorted according to the parameters:\n        </p>\n                   \n    <p>\n                          \n        <ul>\n                                 \n            <li>\n                                        <i><code>sort_criteria</code></i>\n                     \n            </li>\n                                 \n            <li>\n                                        <i><code>sort_order</code></i>\n                     \n            </li>\n                              \n        </ul>\n                       \n    </p>\n                \n</div></div>"
		},
		"count_files": {
			"type": "Boolean",
			"default": false,
			"required": false,
			"description": "<div class=\"jitl-job-param\"><div class=\"note\">\n    \t\t             \n    <p class=\"title\">Return the size of resultset</p>\n    \t\t             \n    <p>\n        \t\t\tIf this parameter is set true \"<code>true</code>\" the number of matches\n\t\t\tis returned in the order parameter \"<i><code>fileoperations_result_set_size</code></i>\".\n\t\t\n    </p>\n    \t           \n</div></div>"
		},
		"create_dir": {
			"type": "Boolean",
			"default": false,
			"required": false,
			"description": "<div class=\"jitl-job-param\"><div class=\"note\">\n    \t\t             \n    <p class=\"title\">Create folder</p>\n    \t\t             \n    <p>\n        \t\t\tIf enabled the folder, which is specified as value of the parameter\n\t\t\t<i><code>target_file</code></i>, is checked for existence.\n\t\t\tIf <i><code>target_file</code></i> does not exist\n\t\t\t<i><code>target_file</code></i> will be created as a directory.\n\t\t\n    </p>\n    \t           \n</div></div>"
		},
		"recursive": {
			"type": "Boolean",
			"default": false,
			"required": false,
			"description": "<div class=\"jitl-job-param\"><div class=\"note\">\n                   \n    <p class=\"title\">Include subfolders in operation</p>\n                   \n    <p>\n            This parameter specifies wether files from subdirectories should be included recursively.\n        </p>\n                   \n    <p>\n                    Only effective if <i><code>file</code></i> is a directory.\n        \n    </p>\n                   \n    <p>\n                    Regular expression matches apply to files from subdirectories\n            as specified by the parameter <i><code>file_spec</code></i>.\n        \n    </p>\n                \n</div></div>"
		},
		"overwrite": {
			"type": "Boolean",
			"default": true,
			"required": false,
			"description": "<div class=\"jitl-job-param\"><div class=\"note\">\n    \t\t             \n    <p class=\"title\">Overwrite existing files</p>\n    \t\t             \n    <p>\n\t\t\tThis parameter specifies wether existing files can be overwritten.\n\t\t</p>\n    \t           \n</div></div>"
		},
		"replacing": {
			"type": "String",
			"required": false,
			"description": "<div class=\"jitl-job-param\"><div class=\"note\">\n    \t\t             \n    <p class=\"title\">Regular expression for renaming Files</p>\n    \t\t             \n    <p>\n        \t\t\tRegular expression for filename replacement with\n\t\t\tthe value of the parameter <i><code>replacement</code></i>.\n\t\t\n    </p>\n    \t\t             \n    <p>\n\t\t\tIf the expression matches the filename then the groups found are replaced.\n\t\t</p>\n    \t\t             \n    <p>\n\t\t\ta) For replacement \"capturing groups\" are used. Only the content of the\n\t\t\tcapturing groups is replaced.\n\t\t</p>\n    \t\t             \n    <p>\n\t\t\tReplacements are separated by a semicolon \";\". Example:\n\t\t</p>\n    \t\t             \n    <p>\n        \t\t\t               <i><code>replacing</code></i> = (1)abc(12)def(.*)\n\t\t\t\n        <br>\n        \t\t\t               <i><code>replacement</code></i> = A;BB;CCC\n\t\t\t\n        <br>\n        \t\t\tName of original file: 1abc12def123.txt\n\t\t\t\n        <br>\n        \t\t\tName after renaming: AabcBBdefCCC\n\t\t\n    </p>\n    \t\t             \n    <p>\n        \t\t\tb) If no \"capturing groups\" are specified then the entire match is\n\t\t\treplaced. Example:\n\t\t\t\n        <br>\n        \t\t\t               <i><code>replacing</code></i> = Hello\n\t\t\t\n        <br>\n        \t\t\t               <i><code>replacement</code></i> = 1234\n\t\t\t\n        <br>\n        \t\t\tInput file: Hello_World.txt\n\t\t\t\n        <br>\n        \t\t\tOutput file: 1234_World.txt\n\t\t\n    </p>\n    \t\t             \n    <p>\n        \t\t\tRequires the parameter <i><code>replacement</code></i> to be specified.\n\t\t\n    </p>\n    \t           \n</div>\n\n\t           <div class=\"note\">\n                   \n    <p>\n            Examples for regular expressions used for replacing:\n        </p>\n                   \n    <p>\n                          \n        <table class=\"explanation\">\n             \n                     \n            <tr>\n                                        <th>\n                           <code>source_file</code>\n                        </th>\n                        <th>\n                           <code>file_spec</code>\n                        </th>\n                        <th>\n                           <code>replacing</code>\n                        </th>\n                        <th>\n                           <code>replacement</code>\n                        </th>\n                        <th>Example Input</th>\n                        <th>Output</th>\n                        <th>Comment</th>\n                     \n            </tr>\n                                 \n            <tr>\n                                        <td>./temp</td>\n                        <td>.*</td>\n                        <td>~</td>\n                        <td>\"\"</td>\n                        <td>hallo.dat~</td>\n                        <td>hallo.dat</td>\n                        <td>-</td>\n                     \n            </tr>\n                                 \n            <tr>\n                                        <td>a.txt</td>\n                        <td>-</td>\n                        <td>[.]txt</td>\n                        <td>_2011-11-24.txt</td>\n                        <td>-</td>\n                        <td>a_2011-11-24.txt</td>\n                        <td>-</td>\n                     \n            </tr>\n                                 \n            <tr>\n                                        <td>./temp</td>\n                        <td>.*</td>\n                        <td>.*</td>\n                        <td>[filename:] [date:yyyy-MM-dd].dat</td>\n                        <td>a.txt</td>\n                        <td>a.txt2011-11-24.dat</td>\n                        <td>[filename:] and [date:] will be substituted after file has\n                        been replaced\n                    </td>\n                     \n            </tr>\n                                 \n            <tr>\n                                        <td>./temp</td>\n                        <td>.*[.]txt</td>\n                        <td>a.*?b</td>\n                        <td>world</td>\n                        <td>a.1.b.txt.b</td>\n                        <td>world.txt.b</td>\n                        <td>.*? : ungreedy usage of .*</td>\n                     \n            </tr>\n                                 \n            <tr>\n                                        <td>abcdefg.txt</td>\n                        <td>-</td>\n                        <td>^(ab)cde(fg)[.]txt</td>\n                        <td>123;[date:yyyy-MM-dd]</td>\n                        <td>-</td>\n                        <td>123cde2011-11-24.txt</td>\n                        <td>; : separator between multiple replacements</td>\n                     \n            </tr>\n                                 \n            <tr>\n                                        <td>./temp</td>\n                        <td>.*dat$</td>\n                        <td>(ab)_c[0-9]d_(fg)</td>\n                        <td>group1;group2</td>\n                        <td>ab_c1d_fg. ab_c2d_fg.dat</td>\n                        <td>group1_c1d_group2. ab_c2d_fg.dat</td>\n                        <td>Only the first pattern match is replaced</td>\n                     \n            </tr>\n                                 \n            <tr>\n                                        <td>./temp</td>\n                        <td>.*</td>\n                        <td>^(?:aa|bb)_. {2}_([0-9]+_[0-9]+)$</td>\n                        <td>tail</td>\n                        <td>aa_QU_061205_222334</td>\n                        <td>aa_QU_tail</td>\n                        <td>(?:...) : \"?:\" specifies a non capturing group. The file will\n                        not be replaced.\n                    </td>\n                     \n            </tr>\n                                 \n            <tr>\n                                        <td>./temp</td>\n                        <td>FILE.txt</td>\n                        <td>.*</td>\n                        <td>[filename:lowercase]_[filename:uppercase]_[filename:]</td>\n                        <td>FILE.txt</td>\n                        <td>file.txt_FILE.TXT_FILE.txt</td>\n                        <td>-</td>\n                     \n            </tr>\n                              \n        </table>\n                          \n        <table class=\"explanation\" style=\"margin-top:10px\">\n                                 \n            <tr>\n                                        <th>\n                           <code>source_file</code>\n                        </th>\n                        <th>\n                           <code>target_file</code>\n                        </th>\n                        <th>\n                           <code>file_spec</code>\n                        </th>\n                        <th>\n                           <code>create_dir</code>\n                        </th>\n                        <th>\n                           <code>replacing</code>\n                        </th>\n                        <th>\n                           <code>replacement</code>\n                        </th>\n                        <th>Example input</th>\n                        <th>Output</th>\n                        <th>Comment</th>\n                     \n            </tr>\n                                 \n            <tr>\n                                        <td>aaa/bbb/</td>\n                        <td>[directory:]/[date:yyyyMMdd]/</td>\n                        <td>hello.txt</td>\n                        <td>true</td>\n                        <td>[.]txt</td>\n                        <td>[date:yyyy].txt</td>\n                        <td>aaa/bbb/hello.txt</td>\n                        <td>aaa/bbb/20070316/hello2007.txt</td>\n                        <td>If the directory aaa/bbb/20070316 does not yet exist it will\n                        be created\n                    </td>\n                     \n            </tr>\n                              \n        </table>\n                       \n    </p>\n                   \n    <p>\n                    For further information see\n            <a href=\"http://java.sun.com/j2se/1.4.2/docs/api/java/util/regex/Pattern.html\">java.util.regex.Pattern</a>\n               \n    </p>\n                   \n    <p>\n                    For further information on date-patterns see:\n            <a href=\"http://docs.oracle.com/javase/6/docs/api/java/text/SimpleDateFormat.html\">java.util.regex.Pattern</a>\n               \n    </p>\n                \n</div></div>"
		},
		"replacement": {
			"type": "String",
			"required": false,
			"description": "<div class=\"jitl-job-param\"><div class=\"note\">\n    \t\t             \n    <p class=\"title\">String for renaming Filenames </p>\n                   \n    <p>\n                    String for replacement of matching character sequences within file names that are specified with the\n            value of the parameter <i><code>replacing</code></i>.\n        \n    </p>\n                   \n    <p>\n            If multiple \"capturing groups\" are to be replaced then one replacement string per group has to be specified. \n            These strings are separated by a semicolon \";\":\n        </p>\n                   \n    <p>\n            replacement: aa;[filename:];bb\n        </p>\n                   \n    <p>\n                      Supports masks for substitution in the file name with format strings that are enclosed with\n              <em>[</em>\n              and\n              <em>]</em>\n              .\n              The following format strings are supported:\n        \n    </p>\n    \t\t\t            \n    <list type=\"unordered\">\n                          \n        <item>\n            \t\t\t\t\t                \n            <p>\n                \t\t\t\t\t\t                  <code>\n\t\t\t\t\t\t\t[date:\n\t\t\t\t\t\t\t<em>date format</em>\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t</code>\n\t\t\t\t\t                \n            </p>\n            \t\t\t\t              \n        </item>\n        \t\t\t\t              \n        <item>\n            \t\t\t\t\t                \n            <p>\n                \t\t\t\t\t\t                  <em>date format</em>\n\t\t\t\t\t\tmust be a valid Java data format string, e.g.\n\t\t\t\t\t\t\n                <br>\n                \t\t\t\t\t\t                  <em>yyyyMMddHHmmss</em>\n\t\t\t\t\t\t,\n\t\t\t\t\t\t<em>yyyy-MM-dd.HHmmss</em>\n\t\t\t\t\t\tetc.\n\t                \n            </p>\n                              \n        </item>\n        \t\t\t            \n    </list>\n    \t\t\t            \n    <list type=\"unordered\">\n                          \n        <item>\n                \t                \n            <p>\n                                        <code>[filename:]</code>\n \t\t\t\t\t               \n            </p>\n            \t\t\t\t              \n        </item>\n        \t\t\t\t              \n        <item>\n            \t\t\t\t\t                \n            <p>\n\t\t\t\t\t\tWill be substituted by the original file name including the file extension.\n\t                </p>\n                              \n        </item>\n        \t\t\t            \n    </list>\n    \t\t\t            \n    <list type=\"def\">\n                          \n        <item>\n            \t                    \n            <p>\n                                        <code>[filename:lowercase]</code>\n\t\t\t\t\t                \n            </p>\n            \t\t\t\t              \n        </item>\n        \t\t\t\t              \n        <item>\n            \t\t\t\t\t                \n            <p>\n\t\t\t\t\t\tWill be substituted by the original file name including the file extension \n\t\t\t\t\t\twith all characters converted to lower case.\n\t                </p>\n                              \n        </item>\n        \t\t\t            \n    </list>\n    \t\t\t            \n    <list type=\"def\">\n                          \n        <item>\n            \t                    \n            <p>\n                                        <code>[filename:uppercase]</code>\n\t\t\t\t\t                \n            </p>\n            \t\t\t\t              \n        </item>\n        \t\t\t\t              \n        <item>\n            \t\t\t\t\t                \n            <p>\n\t\t\t\t\t\tWill be substituted by the original file name including the file extension \n\t\t\t\t\t\twith all characters converted to upper case.\n\t                </p>\n                              \n        </item>\n        \t\t\t            \n    </list>\n                   \n    <p>\n                    Requires the parameter\n            <i><code>replacing</code></i>\n            to be specified.\n        \n    </p>\n                   \n    <p>\n        \t\t\t               \n        <list type=\"unordered\">\n            \t\t\t\t                 \n            <item>\n                \t\t\t\t\t                   \n                <p>\n                    \t\t\t\t\t\t                     <i><code>replacing</code></i>\n\t\t\t\t\t\t= Hello\n\t\t\t\t\t\n                </p>\n                \t\t\t\t                 \n            </item>\n            \t\t\t\t                 \n            <item>\n                \t\t\t\t\t                   \n                <p>\n                    \t\t\t\t\t\t                     <i><code>replacement</code></i>\n\t\t\t\t\t\t= 1234\n\t\t\t\t\t\n                </p>\n                \t\t\t\t                 \n            </item>\n            \t\t\t\t                 \n            <item>\n                \t\t\t\t\t                   \n                <p>\n\t\t\t\t\t\tInput file: Hello_World.txt\n\t\t\t\t\t</p>\n                \t\t\t\t                 \n            </item>\n            \t\t\t\t                 \n            <item>\n                \t\t\t\t\t                   \n                <p>\n\t\t\t\t\t\tOutput file: 1234_World.txt\n\t\t\t\t\t</p>\n                \t\t\t\t                 \n            </item>\n            \t\t\t               \n        </list>\n        \t\t             \n    </p>\n    \t           \n</div></div>"
		},
		"sort_order": {
			"type": "String",
			"default": "asc",
			"required": false,
			"description": "<div class=\"jitl-job-param\"><div class=\"note\">\n                   \n    <p class=\"title\">Sort order with which the result set will be sorted.</p>\n                   \n    <p>\n                  Default: asc\n          Possible values: asc | desc  \n          See:  <i><code>sort_criteria</code></i>\n               \n    </p>\n                \n</div></div>"
		},
		"sort_criteria": {
			"type": "String",
			"default": "name",
			"required": false,
			"description": "<div class=\"jitl-job-param\"><div class=\"note\">\n                   \n    <p class=\"title\">Sort criteria with which the result set will be sorted.</p>\n                   \n    <p>\n                  Default: name\n          Possible values: name | age | size\n          See:  <i><code>sort_order</code></i>\n               \n    </p>\n                \n</div></div>"
		},
		"expected_size_of_result_set": {
			"type": "Number",
			"default": 0,
			"required": false,
			"description": "<div class=\"jitl-job-param\"><div class=\"note\">\n    \t\t             \n    <p class=\"title\">number of expected hits in result-list</p>\n    \t           \n</div></div>"
		},
		"raise_error_if_result_set_is": {
			"type": "String",
			"required": false,
			"description": "<div class=\"jitl-job-param\"><div class=\"note\">\n    \t\t             \n    <p class=\"title\">raise error on expected size of result-set</p>\n    \t\t             \n    <p>\n\t\t\tWith this parameter it is possible to raise an error if the quantity of hits of the\n\t\t\tresult-list is according to the value of this parameter.\n\t\t</p>\n    \t\t             \n    <p>\n\t\t\tAn example:\n\t\t</p>\n    \t\t             \n    <p>\n\t\t\tAssuming, that the parameter \"raise_error_if_result_set_is=ne\" is defined and the parameter\n\t\t\t\"expected_size_of_result_set=1\" is specified as well. If the number of hits is not equal to \"1\"\n\t\t\tan error will raised.\n\t\t</p>\n    \t           \n</div></div>"
		},
		"result_set_file": {
			"type": "String",
			"required": false,
			"description": "<div class=\"jitl-job-param\"><div class=\"note\">\n    \t\t             \n    <p class=\"title\">Name of the result-list file</p>\n    \t\t             \n    <p>\n\t\t\tIf the value of this parameter specifies a valid filename the result-list will be\n\t\t\twritten to this file.\n\t\t</p>\n    \t           \n</div></div>"
		}
	}
}