From 3f34c3e1835d2317811a3abbb2393c89b0981d4d Mon Sep 17 00:00:00 2001 From: Oguzhan Unlu Date: Thu, 3 May 2018 12:47:45 +0300 Subject: [PATCH] Add com.snowplowanalytics.iglu/resolver-config/jsonschema/1-0-3 (closes #775) --- .../resolver-config/jsonschema/1-0-3 | 97 +++++++++++++++++++ 1 file changed, 97 insertions(+) create mode 100644 schemas/com.snowplowanalytics.iglu/resolver-config/jsonschema/1-0-3 diff --git a/schemas/com.snowplowanalytics.iglu/resolver-config/jsonschema/1-0-3 b/schemas/com.snowplowanalytics.iglu/resolver-config/jsonschema/1-0-3 new file mode 100644 index 000000000..199fa7a58 --- /dev/null +++ b/schemas/com.snowplowanalytics.iglu/resolver-config/jsonschema/1-0-3 @@ -0,0 +1,97 @@ +{ + "$schema": "http://iglucentral.com/schemas/com.snowplowanalytics.self-desc/schema/jsonschema/1-0-0#", + "description": "Schema for an Iglu resolver's configuration", + "self": { + "vendor": "com.snowplowanalytics.iglu", + "name": "resolver-config", + "format": "jsonschema", + "version": "1-0-3" + }, + + "type": "object", + + "properties": { + + "cacheSize": { + "type": "number" + }, + + "cacheTtl": { + "type": ["integer", "null"], + "minimum": 0 + }, + + "repositories": { + "type": "array", + "items": { + "type": "object", + + "properties": { + + "name": { + "type": "string" + }, + + "priority": { + "type": "number" + }, + + "vendorPrefixes": { + "type": "array", + "items": { + "type": "string" + } + }, + + "connection": { + "type": "object", + "oneOf": [ + { + "properties": { + "embedded": { + "type": "object", + "properties": { + "path": { + "type": "string" + } + }, + "required": ["path"], + "additionalProperties": false + } + }, + "required": ["embedded"], + "additionalProperties": false + }, + { + "properties": { + "http": { + "type": "object", + "properties": { + "uri": { + "type": "string", + "format": "uri" + }, + "apikey": { + "type": ["string", "null"] + } + }, + "required": ["uri"], + "additionalProperties": false + } + }, + "required": ["http"], + "additionalProperties": false + } + ] + } + }, + "required": ["name", "priority", "vendorPrefixes", "connection"], + "additionalProperties": false + } + } + + }, + + "required": ["cacheSize", "repositories"], + "additionalProperties": false +}