.gateleen.gateleen-queue.2.1.11.source-code.gateleen_queue_splitter_configuration_schema Maven / Gradle / Ivy
{
"$schema": "http://json-schema.org/draft-04/schema#",
"description": "Queue splitter configurations",
"type": "object",
"additionalProperties": {
"$ref": "#/definitions/QueueSplitter"
},
"definitions": {
"QueueSplitter": {
"description": "A single queue splitter configuration",
"type": "object",
"properties": {
"description": {
"description": "description of the splitter",
"type": "string"
},
"postfixDelimiter": {
"description": "Separator between original queue and postfix added",
"type": "string"
},
"postfixFromStatic": {
"description": "List of postfixes to use to compose sub-queues",
"type": "array",
"items": {
"type": "string"
},
"minItems": 1,
"uniqueItems": true
},
"postfixFromRequest": {
"$ref": "#/definitions/PostfixFromRequest"
}
},
"additionalProperties": false,
"oneOf": [
{
"required": [
"postfixFromStatic"
]
},
{
"required": [
"postfixFromRequest"
]
}
]
},
"PostfixFromRequest": {
"description": "Postfix generated using request header and/or url",
"anyOf": [
{
"required": [
"header"
]
},
{
"required": [
"url"
]
}
],
"properties": {
"header": {
"description": "Header to use as postfix",
"type": "string"
},
"url": {
"description": "Regex to group postfixes from url",
"type": "string"
}
},
"additionalProperties": false
}
}
}