Details
-
Feature
-
Status: Released (View Workflow)
-
Minor
-
Resolution: Fixed
-
1.10.6, 1.11
-
None
Description
Current Situation
When the parameter create_orders_for_all_files=true or create_orders_for_new_files=true the created orders will have the parameter scheduler_file_path. This let JobScheduler handle them as file_order_source orders with the effect, that they will be added to a blacklist if the file that is specified in scheduler_file_path still exists when the last node of the job chain has been reached. It is neccessary to remove the file either by defining a file sink or by a job in the job chain.
Desired Behaviour
For the use case that the files in the target should be persistent and should not be removed, the created orders must not have the parameter scheduler_file_path. Instead the value should be stored in an configurable parameter e.g. yade_file_path.
The new parameter should have the name param_name_for_path with the default scheduler_file_path
Workaround
You can add a job as the first step to rename the parameter scheduler_file_path. An example implementation for this job ist
<job order="yes" stop_on_error="no"> <script language="java:javascript"> <![CDATA[ function spooler_process(){ var order = spooler_task.order; var names = order.params.names; var resultParameters = spooler.create_variable_set(); var parameterNames = order.params.names.split(";"); for (i = 0; i < parameterNames.length; i++) { var paramName = parameterNames[i]; if ("" != paramName) { var paramValue = order.params.value(paramName); if ("scheduler_file_path" == paramName.toLowerCase()) { paramName = "yade_file_path"; } resultParameters.set_var(paramName, paramValue); } } order.params = resultParameters; return true; } ]]> </script> <run_time /> </job>