Mercurial > hg > thermostat-ng
view common/src/test/resources/systems-swagger.json @ 25:dd0992bd51aa
Add Maven Central upload, refactor lang-schema and json libs to thermostat-common library
- merge common-json and common-lang-schema packages into thermostat- common.
- add targets to generate Javadoc and source jars, and modify sources
to remove some Javadoc warnings.
- add targets to sign and deploy thermostat-common to Maven Central.
Reviewed-by: sgehwolf, neugens
Review-thread: http://icedtea.classpath.org/pipermail/thermostat/2017-September/025214.html
author | Simon Tooke <stooke@redhat.com> |
---|---|
date | Fri, 29 Sep 2017 14:48:00 -0400 |
parents | common/json/src/test/resources/systems-swagger.json@ab2706b9b1e3 |
children |
line wrap: on
line source
{ "swagger": "2.0", "info": { "version": "0.0.1", "title": "Thermostat Web Gateway System Information API", "license": { "name": "GPL v2 with Classpath Exception", "url": "http://www.gnu.org/licenses" } }, "consumes": [ "application/json" ], "produces": [ "application/json", "text/html; charset=utf-8" ], "basePath": "/systems/0.0.1", "paths": { "/": { "get": { "description": "Get information for all systems.", "parameters": [ { "$ref": "#/parameters/limit" }, { "$ref": "#/parameters/offset" }, { "$ref": "#/parameters/sort" }, { "$ref": "#/parameters/include" }, { "$ref": "#/parameters/exclude" }, { "$ref": "#/parameters/query" }, { "$ref": "#/parameters/alive" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/systems-get-response" } } } } }, "/systems/{systemId}": { "parameters": [ { "$ref": "#/parameters/system-id" } ], "get": { "description": "Get information for system {systemId}.", "parameters": [ { "$ref": "#/parameters/limit" }, { "$ref": "#/parameters/offset" }, { "$ref": "#/parameters/sort" }, { "$ref": "#/parameters/include" }, { "$ref": "#/parameters/exclude" }, { "$ref": "#/parameters/query" }, { "$ref": "#/parameters/alive" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/systems-get-response" } } } }, "put": { "description": "Update information for system {systemId}.", "parameters": [ { "$ref": "#/parameters/systems-put-body" }, { "$ref": "#/parameters/query" } ], "responses": { "200": { "description": "OK" } } }, "post": { "description": "Add information for system {systemId}", "parameters": [ { "$ref": "#/parameters/system-info-array" } ], "responses": { "200": { "description": "OK" } } }, "delete": { "description": "Delete information for system ID {systemId}.", "parameters": [ { "$ref": "#/parameters/query" } ], "responses": { "200": { "description": "OK" } } } } }, "definitions": { "systems-get-response": { "type": "object", "properties": { "response": { "$ref": "#/definitions/system-info-array" } } }, "system-info-array": { "type": "array", "items": { "$ref": "#/definitions/system-info" } }, "system-info": { "type": "object", "properties": { "systemId": { "type": "string" }, "agentId": { "type": "string" }, "hostname": { "type": "string" }, "osName": { "type": "string" }, "osKernel": { "type": "string" }, "osArch": { "type": "string" }, "cpuCount": { "type": "integer" }, "cpuModel": { "type": "string" }, "totalMemory": { "type": "integer", "format": "int64" }, "timeCreated": { "type": "integer", "format": "int64" }, "lastUpdated": { "type": "integer", "format": "int64" } } }, "systems-put-body": { "type": "object", "properties": { "set": { "type": "object" } } } }, "parameters": { "system-id": { "name": "systemId", "in": "path", "required": true, "type": "string" }, "system-info-array": { "name": "system-info-array", "in": "body", "description": "The system information", "required": true, "schema": { "$ref": "#/definitions/system-info-array" } }, "systems-put-body": { "name": "body", "in": "body", "description": "The JSON object containing a 'set' object. This contains single item JSON objects that specify the field to replace and the JSON value to replace with. Must not include 'systemId' field. Example { \"set\" : { \"field\" : \"value\", \"field2\":{\"object\":\"item\"} }", "required": true, "schema": { "$ref": "#/definitions/systems-put-body" } }, "alive": { "name": "alive", "in": "query", "description": "Whether to return only systems that are currently running", "type": "boolean", "required": false, "default": true }, "limit": { "name": "limit", "in": "query", "description": "Limit of items to return. Example '1'", "type": "integer", "required": false, "default": 1 }, "offset": { "name": "offset", "in": "query", "description": "Offset of items to return. Example '0'", "type": "integer", "required": true, "default": 0 }, "sort": { "name": "sort", "in": "query", "description": "Sort string. Comma separated list of fields prefixed with '+' for ascending or '-' for descending. Example '?sort=+a,-b' Fields use dot notation for embedded documents. Example 'outer.inner' refers to field inner contained in field outer.", "type": "string", "required": false }, "query": { "name": "query", "in": "query", "description": "Query string. Comma separated list of key, comparator, value pairs. Comparator supports '==', '<=', '>=', '<', '>', '!='. Example '?query=a==b,c!=d'. Keys are fields in documents and use dot notation for embedded documents. Example 'outer.inner' refers to field inner contained in field outer.", "type": "string", "required": false }, "include": { "name": "include", "in": "query", "description": "Inclusion string. Comma separated list of fields to include in the response. Example '?include=a,b' Fields use dot notation for embedded documents. Example 'outer.inner' refers to field inner contained in field outer. Cannot be used in combination with 'exclude' parameter Overriden by 'exclude' parameter", "type": "string", "required": false }, "exclude": { "name": "exclude", "in": "query", "description": "Exclusion string. Comma separated list of fields to exclude in the response. Example '?exclude=a,b' Fields use dot notation for embedded documents. Example 'outer.inner' refers to field inner contained in field outer. Cannot be used in combination with 'include' parameter; takes precedence over 'include' parameter", "type": "string", "required": false } } }