Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  • The solution implements a job sorter that can be added to the top of any job chain.
    • This job implements a spooler_process() function that suspends all incoming orders.
    • This job is configured for one task and with an idle timeout attribute, i.e. it executes incoming orders sequentually.
    • After the last order this job waits for the duration specified with the idle_timeout attribute for new orders. 
      • The idle timeout is configured by <job idle_timeout="10">.
      • With the idle timeout being expired this job will execute its spooler_exit() function and will sort all orders that have previously been suspended.
        • Sorting is done in alphabetical order.
        • The orders are reinserted to the next job node that follows the sorter job in the job chain.
  • The solution sample included makes use of a job chain job_chain1 that includes the job nodes for the sorter job and a hello job.

Usage

  • Add two orders to the job_chain1 job chain. 
    • Use an order id in descending alphabetical order, e.g. "cba" for the order id of the first order and "abc" for the order id of the second order.
  • Both orders will be suspended in the first node of the job chain.
  • After 10s both orders are reinserted to the next job node in the job chain. 
    • This time the orders are processed in ascending alphabetical order.

...