{
"redis": {
"url": "redis://127.0.0.1/"
},
"listener_channel": "events",
"watchers": [
{
"input_queue": "global/events",
"taken_queue": "global/taken",
"rules": [
{
"name": "TRT computation on data acquisition",
"on": "^acq/(?P<process_id>\\w+)/(?P<product_id>\\d+)$",
"make": {
"task": "trt/${process_id}/${product_id}",
"queue": "trt/${process_id}/todo-queue",
"set": "trt/${process_id}/todo-set"
}
},
{
"name": "TRT propagation to children : switch queue",
"on": "^trt/(?P<process_id>\\w+)/(?P<product_id>\\w{16})$",
"make": {
"queue": "global/to-propagate"
}
}
]
},
{
"input_queue": "global/to-propagate",
"rules": [
{
"name": "TRT propagation to children : make child tasks",
"on": "^trt/(?P<process_id>\\w+)/(?P<product_id>\\w{16})$",
"fetch": [{
"url": "http://localhost:8080/eyeron/pub/products/${product_id}/direct-childs",
"returns": "child"
}],
"make": {
"task": "trt/${child.processId}/${child.productId}",
"queue": "trt/${child.processId}/todo"
}
}
]
}
]
}