id rest_object rest_method http_method rest_url input_json response_json http_response_code reg_exp username device_id comment
1 Method Create POST /method {"method": "Create"} {"method": "POST"} 201 Created   clienttestuser 1 slouzi k tychlemu obereni spravnosti komunikace mezi klientem a servrem
2 Method Read GET /method   {"method": "GET"} 200 OK   clienttestuser 1 slouzi k tychlemu obereni spravnosti komunikace mezi klientem a servrem
3 Method Update PUT /method {"method": "Update"} {"method": "PUT"} 202 Accepted   clienttestuser 1 slouzi k tychlemu obereni spravnosti komunikace mezi klientem a servrem
4 Method Delete DELETE /method     204 No Content   clienttestuser 1 slouzi k tychlemu obereni spravnosti komunikace mezi klientem a servrem
5 Project Create POST /project {
"type": "Project",
"properties": {
"title": "Mereni v Brne",
"description": "cesky popis...",
"public": false,
"last_latitude": 1.1,
"last_longitude": 1.2,
"last_zoom_level": 1.3
}
}
{
"type": "Project",
"name": "",
"scheme": "clienttestuser",
"hash": "2014-09-22 11:40:07",
"properties": {
"title": "Mereni v Brne",
"public": false,
"description": "cesky popis...",
"last_latitude": 1.1,
"last_longitude": 1.2,
"last_zoom_level": 1.3
}
}
201 Created /project$ clienttestuser 1 Zaslani noveho projektu vytvoreneho v zarizeni na server. <br />
Server vraci json s aktualizovanou verzi projektu ulozenou na serveru doplneny o <span style="color:red;">hash</span> <br />
<br /><ul><li>URL: /project</li>
<li>HTTP response code: 201 Created</li></ul>
6 Project Read GET /project   [
{
"type": "Project",
"name": "",
"scheme": "clienttestuser",
"hash": "2014-09-22 11:40:07.355724",
"properties": {
"title": "Mereni v Brne 1",
"description": "This project contains ...",
"public": false,
"last_latitude": 1.1,
"last_longitude": 1.2,
"last_zoom_level": 1.3
}
},
{
"type": "Project",
"name": "",
"scheme": "clienttestuser",
"hash": "2014-09-22 11:40:08.355724",
"properties": {
"title": "Mereni v Brne 2",
"public": false,
"description": "This project contains ...",
"last_latitude": 1.1,
"last_longitude": 1.2,
"last_zoom_level": 1.3
}
}
]
200 OK /project$ clienttestuser 1 Synchronizace na Ăšvodni obrazovce apikace stahne seznam projektĹŻ
URL: /project
HTTP response code: 200 OK
7 Project Read GET /project/clienttestuser/m123   {
"type": "Project",
"name": "",
"scheme": "clienttestuser",
"hash": "2014-09-22 11:40:07.355724",
"properties": {
"title": "Mereni v Brne",
"public": false,
"description": "This project contains ...",
"last_latitude": 1.1,
"last_longitude": 1.2,
"last_zoom_level": 1.3
},
"layers": [
{
"type": "LayerInProject",
"hash": "2014-09-22 11:40:07.355724",
"layer": {
"type": "Layer",
"name": "",
"scheme": "clienttestuser",
"hash": "2014-09-22 11:40:07.355724",
"properties": {
"title": "Stromy v Brně 1",
"public": false,
"description": "Description of test layer 1...",
"kind": "point",
"created": "2013-12-20 13:00:00",
"last_edit": "2013-12-20 13:00:00"
}
},

"properties": {
"color": "FFFFFF",
"transparency": 50,
"zoom_threshold": 20,
"visibility": true,
"order": 1,
"symbology": "nazev"
}
},
{
"type": "LayerInProject",
"hash": "2014-09-22 11:40:07.355724",

"layer": {
"type": "Layer",
"name": "",
"scheme": "clienttestuser",
"hash": "2014-09-22 11:40:07.355724",
"properties": {
"title": "Stromy v Brně 2",
"public": false,
"description": "Description of test layer 2...",
"kind": "point",
"created": "2013-12-20 13:00:00",
"last_edit": "2013-12-20 13:00:00"
}
},

"properties": {
"color": "FFFFFF",
"transparency": 50,
"zoom_threshold": 20,
"visibility": true,
"order": 1,
"symbology": "nazev"
}
}
]
}
200 OK /project/_?[a-zA-Z0-9_]+/_?[a-zA-Z0-9_]+$ clienttestuser 1 Synchronizace konkretniho projektu po jeho otevreni.
V takovem pripade je k projektu pripojen i seznam vrstev, se kterymi je svazan.
hash se vaze k objektu
Volitelne můze klien poslat hash aktualni verze, kterou vlastni, v takovem pripade server zašle jen co se ma zmenit. Pak ale bude problem jak predat zarizeni informaci, ze si ma vrstvu odstranit.
URL: /project/{scheme}/{name}
HTTP response code: 200 OK
8 Project Update PUT /project/clienttestuser/m123 {
"type": "Project",
"hash": "2014-09-22 11:40:07",
"properties": {
"title": "Mereni v Brne",
"description": "This project contains updated version...",
"public": false,
"last_latitude": 1.8,
"last_longitude": 1.7,
"last_zoom_level": 1.6
}
}
{
"type": "Project",
"hash": "2014-09-22 11:40:08",
"properties": {
"title": "Mereni v Brne",
"description": "This project contains updated version...",
"public":false,
"last_latitude": 1.8,
"last_longitude": 1.7,
"last_zoom_level": 1.6
}
}
202 Accepted /project/_?[a-zA-Z0-9_]+/_?[a-zA-Z0-9_]+$ clienttestuser 1 Zaslani upraveneho projektu ze zarizeni na server.
Projekt je definovan jednoznacne pomoci url, proto json neobsahuje name a scheme
hash v requestu obsahuje posledni znamku, kterou obrzelo zazizeni ze serveru, hash v response je novy vygenerovany servem
URL: /project/{scheme}/{name}
HTTP response code: 200 OK
9 Project Delete DELETE /project/clienttestuser/m123 {
"type": "Project",
"hash": "2014-09-22 11:39:07"
}
  204 No Content /project/_?[a-zA-Z0-9_]+/_?[a-zA-Z0-9_]+$ clienttestuser 1 Prikaz na smazani objektu. objekt je nejprve smazan na serveru a az nasledne po Ăşspešnem provedeni je smazan i ze zarizeni
hash v requestu se posla pro kontrolu, zdali nebyl projekt v mezicas upraven.
URL: /project/{scheme}/{name}
HTTP response code: 204 No Content

???co kdyz byl zmenen, co poslat za chybu / data???
10 Layer Create POST /layer {
"type": "Layer",
"properties": {
"title": "Stromy v Brně",
"public": false,
"description": "Stromy v campusu MENDELU",
"kind": "point",
"created": "2013-12-20 13:00:00",
"last_edit": "2013-12-20 13:00:00"
}
}
{
"type": "Layer",
"name": "",
"scheme": "clienttestuser",
"owner": "clienttestuser",
"hash": "2014-09-22 11:40:07.355724",
"properties": {
"title": "Stromy v Brně",
"public": false,
"description": "Stromy v campusu MENDELU",
"kind": "point",
"created": "2013-12-20 13:00:00",
"last_edit": "2013-12-20 13:00:00"
}
}
201 Created /layer$ clienttestuser 1 Zalozeni nove vrstvy
Server vraci json s aktualizovanou verzi ulozenou na serveru doplneny o hash
URL: /layer
HTTP response code: 201 Created
11 Layer Read GET /layer   [
{
"type":"Layer",
"scheme":"clienttestuser",
"owner":"clienttestuser",
"hash":"random value",
"name":"random value",
"properties":{
"kind":"point",
"description":"Stromy v campusu MENDELU",
"created":"random value",
"title":"Stromy v Brně 1",
"last_edit":"random value",
"public":false
}
},
{
"type":"Layer",
"scheme":"clienttestuser",
"owner":"clienttestuser",
"hash":"random value",
"name":"random value",
"properties":{
"kind":"point",
"description":"Stromy v campusu MENDELU",
"created":"random value",
"title":"Stromy v Brně 2",
"last_edit":"random value",
"public":false
}
},
{
"type":"Layer",
"scheme":"shared",
"owner":"admin",
"hash":"random value",
"name":"random value",
"properties":{
"kind":"point",
"description":"Layer for sharing of device position",
"created":"random value",
"title":"Mobile devices tracker",
"last_edit":"random value",
"public":true
}
}
]
200 OK /layer$ clienttestuser 1 Synchronizace seznamu vrstev, ktere jsou aktualne k dispozici
URL: /layer
HTTP response code: 200 OK
12 Layer Read GET /layer/clienttestuser/l123   {
"type": "Layer",
"name": "",
"owner": "clienttestuser",
"scheme": "clienttestuser",
"hash": "2014-09-22 11:40:07",
"properties": {
"title": "Stromy v Brně",
"description": "Stromy v campusu MENDELU",
"kind": "point",
"public": false,
"created": "2013-12-20 13:00:00",
"last_edit": "2013-12-20 13:00:00"
},
"attributes": [
{
"title": "Vyska",
"name": "",
"kind": "double precision",
"hash": "hash1"
},
{
"title": "Sirka",
"name": "",
"kind": "double precision",
"hash": "hash2"
}
]
}
200 OK /layer/_?[a-zA-Z0-9_]+/_?[a-zA-Z0-9-]+$ clienttestuser 1 Synchronizace konkretniho vrstvy pri jejim otevreni, nestahuji se ale ješte geomy.
spolu s vrstvou jsou zaslany informace i o jejich atributech
Volitelne můze klien poslat hash aktualni verze, kterou vlastni, v takovem pripade server zašle jen co se ma zmenit. Pak ale bude problem jak predat zarizeni informaci, ze si ma vrstvu odstranit.
URL: /layer/{scheme}/{name}
HTTP response code: 200 OK

???kam ukladat hashe atributĹŻ (vstahuji se k hodnotam atributĹŻ) : vztahuje se k sloupci (prkticky detekuje prejmenovani sloupce)???
13 Layer Update PUT /layer/clienttestuser/l123 {
"type": "Layer",
"hash": "2014-09-22 11:40:07",
"properties": {
"title": "Stromy v Brně",
"public": false,
"description": "Stromy v campusu MENDELU Modified",
"kind": "point",
"created": "2013-12-20 13:00:00",
"last_edit": "2013-12-20 13:00:00"
}
}
{
"type": "Layer",
"hash": "2014-09-22 11:40:08",
"name": "random value",
"scheme": "clienttestuser",
"properties": {
"title": "Stromy v Brně",
"public": false,
"description": "Stromy v campusu MENDELU Modified",
"kind": "point",
"created": "2013-12-20 13:00:00",
"last_edit": "2013-12-20 13:00:00"
}
}
202 Accepted /layer/_?[a-zA-Z0-9_]+/_?[a-zA-Z0-9_]+$ clienttestuser 1 Obdobne jako u projektu
URL: /layer/{scheme}/{name}
HTTP response code: 200 OK
14 Layer Delete DELETE /layer/clienttestuser/l123 {
"type": "Layer",
"hash": "2014-09-22 11:40:07"
}
  204 No Content /layer/_?[a-zA-Z0-9_]+/_?[a-zA-Z0-9_]+$ clienttestuser 1 Obdobne jako u projektu
URL: /layer/{scheme}/{name}
HTTP response code: 204 No Content
15 Project-Layer Create POST /project/clienttestuser/m123/layer/clienttestuser/l123456 {
"type": "LayerInProject",
"properties": {
"color": "FFFFFF",
"transparency": 50,
"zoom_threshold": 20,
"visibility": true,
"order": 1,
"symbology": "nazev"
}
}
{
"type": "LayerInProject",
"hash": "2014-09-22 11:40:07",
"properties": {
"color": "FFFFFF",
"transparency": 50,
"zoom_threshold": 20,
"visibility": true,
"order": 1,
"symbology": "nazev"
}
}
201 Created /project/_?[a-zA-Z0-9_]+/_?[a-zA-Z0-9_]+/layer$ clienttestuser 1 Pridani nove vrstvy do projektu
Projekt urcen url, vrstva je urceba atributy name a scheme v json
Server vraci json s aktualizovanou verzi ulozenou na serveru doplneny o hash
URL: /project/{scheme}/{name}/layer
HTTP response code: 201 Created

???co kdyz projekt / vrstva nexistuje ???
???jak bude v tabulce ulozeno propojeni
na vrstvu pripadne projekt z jineho
schematu???
16 Project-Layer Update PUT /project/clienttestuser/m123/layer/clienttestuser/l123456 {
"type": "LayerInProject",
"hash": "2014-09-22 11:40:07",
"properties": {
"color": "FFFFFF",
"transparency": 50,
"zoom_threshold": 20,
"visibility": true,
"order": 1,
"symbology": "nazev"
}
}
{
"type": "LayerInProject",
"hash": "2014-09-22 11:40:08",
"properties": {
"color": "FFFFFF",
"transparency": 50,
"zoom_threshold": 20,
"visibility": true,
"order": 1,
"symbology": "nazev"
}
}
202 Accepted /project/_?[a-zA-Z0-9_]+/_?[a-zA-Z0-9_]+/layer/_?[a-zA-Z0-9_]+/_?[a-zA-Z0-9_]+$ clienttestuser 1 Obdobne jako u projektu
URL: /project/{scheme}/{name}/layer/{scheme}/{name}
HTTP response code: 200 OK
17 Project-Layer Delete DELETE /project/clienttestuser/m123/layer/clienttestuser/l123456 {
"type": "LayerInProject",
"hash": "2014-09-22 11:40:08"
}
  204 No Content /project/_?[a-zA-Z0-9_]+/_?[a-zA-Z0-9_]+/layer/_?[a-zA-Z0-9_]+/_?[a-zA-Z0-9_]+$ clienttestuser 1 Obdobne jako u projektu
URL: /project/{scheme}/{name}/layer/{scheme}/{name}
HTTP response code: 204 No Content
18 Layer-Attribute Create POST /layer/clienttestuser/l123456/attribute {
"type": "Attribute",
"kind": "integer",
"title": "Vyška"
}
{
"type": "Attribute",
"hash": "2014-09-22 11:40:08",
"name": "",
"kind": "integer",
"title": "Vyška"
}
201 Created /layer/_?[a-zA-Z0-9_]+/_?[a-zA-Z0-9_]+/properties$ clienttestuser 1 Zalozeni noveho attributu do vrstvy
Jedna se o defini atributu, ktera se pouziva jako šahlona pro geomy.
Atribut se zklada z jmena a typu. Na priklade je vytvaren atribut s:
jmenem: height
typem: number
Server vraci json s aktualizovanou verzi ulozenou na serveru doplneny o hash
URL: /layer/{scheme}/{name}/properties
HTTP response code: 201 Created
19 Layer-Attribute Update PUT /layer/clienttestuser/l123456/attribute/vyska {
"type": "Attribute",
"hash": "2014-09-22 11:40:08",
"kind": "integer",
"title": "Ĺ irka"
}
{
"type": "Attribute",
"hash": "2014-09-22 11:40:08",
"kind": "integer",
"title": "Ĺ irka"
}
202 Accepted /layer/_?[a-zA-Z0-9_]+/_?[a-zA-Z0-9_]+/attribute/_?[a-zA-Z0-9_]+$ clienttestuser 1 Obdobne jako u projektu
URL: /layer/{scheme}/{name}/attribute/{name}
HTTP response code: 200 OK
20 Layer-Attribute Delete DELETE /layer/clienttestuser/l123456/attribute/vyska {
"type": "Attribute",
"hash": "2113-12-20 13:00:00"
}
  204 No Content /layer/_?[a-zA-Z0-9_]+/_?[a-zA-Z0-9_]+/attribute/_?[a-zA-Z0-9_]+$ clienttestuser 1 Obdobne jako u projektu
URL: /layer/{scheme}/{name}/attribute/{name}
HTTP response code: 204 No Content
21 Feature-Point Create POST /layer/clienttestuser/l123456/feature {
"type": "Feature",
"properties": {
"created": "2013-12-20 13:00:00",
"last_edit": "2013-12-20 13:00:00",
"precision": 23.8
},
"geometry": {
"type": "Point",
"coordinates": [100.1, 200.2]
}
}
{
"type": "Feature",
"id": 1,
"hash": "2115-05-05 23:40:22",
"properties": {
"created": "2013-12-20 13:00:00",
"last_edit": "2013-12-20 13:00:00",
"precision": 23.8
},
"geometry": {
"type": "Point",
"coordinates": [100.1, 200.2]
}
}
201 Created /layer/_?[a-zA-Z0-9_]+/_?[a-zA-Z0-9_]+/feature$ clienttestuser 1 Zalozeni noveho bodu do vrstvy
Server vraci json s aktualizovanou verzi ulozenou na serveru doplneny o hash a jedinecne id
URL: /layer/{scheme}/{name}/feature
HTTP response code: 201 Created
22 Feature-Point Read GET /layer/clienttestuser/l123456/feature   [
{
"type": "Feature",
"id": 1,
"hash": "hashFeature",
"properties": {
"has_picture": false,
"created": "2013-12-20 13:00:00",
"last_edit": "2013-12-20 13:00:00",
"precision": 23.8
},
"attributes": [
{
"name": "",
"value": "15.5",
"hash": "hash1"
},
{
"name": "",
"value": "",
"hash": "hash2"
}
],
"geometry": {
"type": "Point",
"coordinates": [10.15, 4.2]
}
},

{
"type": "Feature",
"id": 2,
"hash": "hashFeature",
"properties": {
"has_picture": false,
"created": "2013-12-20 13:00:00",
"last_edit": "2013-12-20 13:00:00",
"precision": 23.8
},
"attributes": [
{
"name": "",
"value": "15.5",
"hash": "hash1"
},
{
"name": "",
"value": "2.1",
"hash": "hash2"
}
],
"geometry": {
"type": "Point",
"coordinates": [100.1, 200.2]
}
}
]
200 OK /layer/_?[a-zA-Z0-9_]+/_?[a-zA-Z0-9_]+/feature$ clienttestuser 1 Metoda pro ziskani seznam seznamu bodĹŻ vrstvy.
Volitelne můze klient poslat hash aktualni verze, kterou vlastni, v takovem pripade server zašle jen co se ma zmenit. Pak ale bude problem jak predat zarizeni informaci, ze si ma vrstvu bod.
URL: /layer/{scheme}/{name}/feature
HTTP response code: 200 OK
23 Feature-Point Update PUT /layer/clienttestuser/l123456/feature/1 {
"type": "Feature",
"hash": "2115-05-05 23:40:22",
"properties": {
"created": "2013-12-20 13:00:00",
"last_edit": "2013-12-20 13:00:00",
"precision": 23.8
},
"geometry": {
"type": "Point",
"coordinates": [10.1, 20.2]
}
}
{
"type": "Feature",
"hash": "? MD5 ? time ? version ?",
"properties": {
"has_picture": false,
"created": "2013-12-20 13:00:00",
"last_edit": "2013-12-20 13:00:00",
"precision": 23.8
},
"geometry": {
"type": "Point",
"coordinates": [10.1, 20.2]
}
}
202 Accepted /layer/_?[a-zA-Z0-9_]+/_?[a-zA-Z0-9_]+/feature/[1-9]+[0-9]*$ clienttestuser 1 Obdobne jako u projektu
URL: /layer/{scheme}/{name}/feature/#
HTTP response code: 200 OK
24 Feature-Point Delete DELETE /layer/clienttestuser/l123456/feature/1 {
"type": "Feature",
"hash": "2115-05-05 23:40:22"
}
  204 No Content /layer/_?[a-zA-Z0-9_]+/_?[a-zA-Z0-9_]+/feature/[1-9]+[0-9]*$ clienttestuser 1 Obdobne jako u projektu
URL: /layer/{scheme}/{name}/feature/#
HTTP response code: 204 No Content
25 Feature-Line Create POST /layer/clienttestuser/l123456/feature {
"type": "Feature",
"properties": {
"created": "2013-12-20 13:00:00",
"last_edit": "2013-12-20 13:00:00",
"precision": 23.8
},
"geometry": {
"type": "LineString",
"coordinates": [[10.2, 0.5], [10.3, 1.5], [10.4, 0.5], [10.5, 1.5]]
},
"bbox": [10.5, 0.5, 10.5, 1.5]
}
{
"type": "Feature",
"id": 1,
"hash": "2013-12-20 13:05:00",
"properties": {
"created": "2013-12-20 13:00:00",
"last_edit": "2013-12-20 13:00:00",
"precision": 23.8
},
"geometry": {
"type": "LineString",
"coordinates": [[10.2, 0.5], [10.3, 1.5], [10.4, 0.5], [10.5, 1.5]]
},
"bbox": [10.5, 0.5, 10.5, 1.5]
}
201 Created /layer/_?[a-zA-Z0-9_]+/_?[a-zA-Z0-9_]+/feature$ clienttestuser 1 Zalozeni noveho liniedo vrstvy
Server vraci json s aktualizovanou verzi ulozenou na serveru doplneny o hash a jedinecne id
URL: /layer/{scheme}/{name}/feature
HTTP response code: 201 Created
26 Feature-Line Read GET /layer/clienttestuser/l123456/feature   [{
"type": "Feature",
"id": 1,
"hash": "2013-12-20 13:00:00",
"properties": {
"has_picture": false,
"created": "2013-12-20 13:00:00",
"last_edit": "2013-12-20 13:00:00",
"precision": 23.8
},
"attributes": [],

"geometry": {
"type": "LineString",
"coordinates": [[10.2, 0.5], [10.3, 1.5], [10.4, 0.5], [10.5, 1.5]]
},
"bbox": [10.5, 0.5, 10.2, 1.5]
}]
200 OK /layer/_?[a-zA-Z0-9_]+/_?[a-zA-Z0-9_]+/feature$ clienttestuser 1 ÄŚteni geometrie - linie
27 Feature-Line Update PUT /layer/clienttestuser/l123456/feature/1 {
"type": "Feature",
"hash": "2013-12-20 13:00:00",
"properties": {
"created": "2013-12-20 13:00:00",
"last_edit": "2013-12-20 13:00:00",
"precision": 23.8
},
"geometry": {
"type": "LineString",
"coordinates": [[10.5, 0.5], [10.3, 1.5], [10.4, 0.5], [10.5, 1.5]]
},
"bbox": [10.5, 0.5, 10.5, 1.5]
}
{
"type": "Feature",
"hash": "2013-12-20 13:05:00",
"properties": {
"has_picture": false,
"created": "2013-12-20 13:00:00",
"last_edit": "2013-12-20 13:00:00",
"precision": 23.8
},
"geometry": {
"type": "LineString",
"coordinates": [[10.5, 0.5], [10.3, 1.5], [10.4, 0.5], [10.5, 1.5]]
},
"bbox": [10.5, 0.5, 10.5, 1.5]
}
202 Accepted /layer/_?[a-zA-Z0-9_]+/_?[a-zA-Z0-9_]+/feature/[1-9]+[0-9]*$ clienttestuser 1 Obpodobne jako u bodudobne jako u projektu
URL: /layer/{scheme}/{name}/feature/#
HTTP response code: 200 OK
28 Feature-Line Delete DELETE /layer/clienttestuser/l123456/feature/1 {
"type": "Feature",
"hash": "2115-05-05 23:40:22"
}
  204 No Content /layer/_?[a-zA-Z0-9_]+/_?[a-zA-Z0-9_]+/feature/[1-9]+[0-9]*$ clienttestuser 1 Obdobne jako u projektu
URL: /layer/{scheme}/{name}/feature/#
HTTP response code: 204 No Content
29 Feature-Polygone Create POST /layer/clienttestuser/l123456/feature {
"type": "Feature",
"properties": {
"created": "2013-12-20 13:00:00",
"last_edit": "2013-12-20 13:00:00",
"precision": 23.8
},
"geometry": {
"type": "Polygon",
"coordinates": [
[[10.5, 0.5], [11.1, 0.5], [12.2, 1.5],
[13.3, 1.5], [10.5, 0.5] ]
]
},
"bbox": [10.5, 0.5, 13.3, 1.5]
}
{
"type": "Feature",
"id": 1,
"hash": "2013-12-20 13:00:00",
"properties": {
"created": "2013-12-20 13:00:00",
"last_edit": "2013-12-20 13:00:00",
"precision": 23.8
},
"geometry": {
"type": "Polygon",
"coordinates": [[[10.5, 0.5], [11.1, 0.5], [12.2, 1.5],
[13.3, 1.5], [10.5, 0.5]] ]
},
"bbox": [10.5, 0.5, 13.3, 1.5]
}
201 Created /layer/_?[a-zA-Z0-9_]+/_?[a-zA-Z0-9_]+/feature$ clienttestuser 1 Zalozeni noveho liniedo vrstvy
Server vraci json s aktualizovanou verzi ulozenou na serveru doplneny o hash a jedinecne id
URL: /layer/{scheme}/{name}/feature
HTTP response code: 201 Created
30 Feature-Polygone Read GET /layer/clienttestuser/l123456/feature   [{
"type": "Feature",
"id": 1,
"hash": "2013-12-20 13:01:00",
"properties": {
"has_picture": false,
"created": "2013-12-20 13:00:00",
"last_edit": "2013-12-20 13:00:00",
"precision": 23.8
},
"geometry": {
"type": "Polygon",
"coordinates": [[[10.2, 0.5], [10.3, 1.5], [10.4, 0.5], [10.5, 1.5], [10.2, 0.5]]]
},
"attributes": [],
"bbox": [10.5, 0.5, 10.2, 1.5]
}]
200 OK /layer/_?[a-zA-Z0-9_]+/_?[a-zA-Z0-9_]+/feature$ clienttestuser 1 ÄŚteni geometrie - polygon
31 Feature-Polygone Update PUT /layer/clienttestuser/l123456/feature/1 {
"type": "Feature",
"hash": "2115-05-05 23:40:22",
"properties": {
"created": "2013-12-20 13:00:00",
"last_edit": "2013-12-20 13:00:00",
"precision": 23.8
},
"geometry": {
"type": "Polygon",
"coordinates": [[[1.5, 1.5], [11.5, 1.5], [14.5, 0.5],
[19.5, 0.5], [1.5, 1.5]]]

},
"bbox": [1.5, 1.5, 19.5, 0.5]
}
{
"type": "Feature",
"hash": "2013-12-20 13:05:00",
"properties": {
"has_picture": false,
"created": "2013-12-20 13:00:00",
"last_edit": "2013-12-20 13:00:00",
"precision": 23.8
},
"geometry": {
"type": "Polygon",
"coordinates": [[[1.5, 1.5], [11.5, 1.5], [14.5, 0.5],
[19.5, 0.5], [1.5, 1.5]]]
},
"bbox": [1.5, 1.5, 19.5, 0.5]
}
202 Accepted /layer/_?[a-zA-Z0-9_]+/_?[a-zA-Z0-9_]+/feature/[1-9]+[0-9]*$ clienttestuser 1 Obdobne jako u projektu
URL: /layer/{scheme}/{name}/feature/#
HTTP response code: 200 OK
32 Feature-Polygone Delete DELETE /layer/clienttestuser/l123456/feature/1 {
"type": "Feature",
"hash": "2115-05-05 23:40:22"
}
  204 No Content /layer/_?[a-zA-Z0-9_]+/_?[a-zA-Z0-9_]+/feature/[1-9]+[0-9]*$ clienttestuser 1 Obdobne jako u projektu
URL: /layer/{scheme}/{name}/feature/#
HTTP response code: 204 No Content
33 Feature-Attribute Create POST /layer/clienttestuser/l123456/feature/123456/attribute {
"type": "Attribute",
"name": "height",
"value": 15.5
}
{
"type": "Attribute",
"hash": "2013-12-20 13:00:00",
"name": "height",
"value": 15.5
}
201 Created /layer/_?[a-zA-Z0-9_]+/_?[a-zA-Z0-9_]+/feature/[1-9]+[0-9]*/attribute$ clienttestuser 1 Zalozeni noveho attributu do geomu
Atribut se zklada z jmena a hodnoty. Na priklade je vytvaren atribut s:
jmenem: height
hodnotou: 15,5
Server vraci json s aktualizovanou verzi ulozenou na serveru doplneny o hash
URL: /layer/{scheme}/{name}/feature/#/attribute
HTTP response code: 201 Created
34 Feature-Attribute Update PUT /layer/clienttestuser/l123456/feature/123456/attribute/height {
"type": "Attribute",
"hash": "2015-05-05 23:40:22",
"value": "28.0"
}
{
"type": "Attribute",
"hash": "2013-12-20 13:00:00",
"value": "28.0"
}
202 Accepted /layer/_?[a-zA-Z0-9_]+/_?[a-zA-Z0-9_]+/feature/[1-9]+[0-9]*/attribute/_?[a-zA-Z0-9_]+$ clienttestuser 1 Obdobne jako u projektu
URL: /layer/{scheme}/{name}/feature/#/attribute/{name}
HTTP response code: 200 OK
35 Feature-Attribute Delete DELETE /layer/clienttestuser/l123456/feature/123456/attribute/height {
"type": "Attribute",
"hash": "2115-05-05 23:40:22"
}
  204 No Content /layer/_?[a-zA-Z0-9_]+/_?[a-zA-Z0-9_]+/feature/[1-9]+[0-9]*/attribute/_?[a-zA-Z0-9_]+$ clienttestuser 1 Obdobne jako u projektu
URL: /layer/{scheme}/{name}/feature/#/attribute/{name}
HTTP response code: 204 No Content
36 FeaturePicture Read GET /layer/clienttestuser/l123456/feature/123456789/picture     200 OK   clienttestuser 1 ÄŚteni obrazku
37 FeaturePicture Create POST /layer/clienttestuser/l123456/feature/123456789/picture ["....filedata....."] {"hash": "2013-12-20 13:01:00"} 201 Created   clienttestuser 1 NahránĂ­ obrázku.
38 FeaturePicture Update PUT /layer/clienttestuser/l123456/feature/123456789/picture {"hash": "2115-12-20 13:01:00"} {"hash": "2013-12-20 13:01:00"} 202 Accepted   clienttestuser 1 Update obrazku
50 Layer Create POST /layer {
"type": "Layer",
"properties": {
"title": "Stromy v Brně",
"public": true,
"description": "Stromy v campusu MENDELU",
"kind": "point",
"created": "2013-12-20 13:00:00",
"last_edit": "2013-12-20 13:00:00"
}
}
{
"type": "Layer",
"name": "",
"scheme": "shared",
"owner": "clienttestuser",
"hash": "2014-09-22 11:40:07",
"properties": {
"title": "Stromy v Brně",
"public": true,
"description": "Stromy v campusu MENDELU",
"kind": "point",
"created": "2013-12-20 13:00:00",
"last_edit": "2013-12-20 13:00:00"
}
}
201 Created   clienttestuser 1 (shared) Vytvoreni veĹ™ejnĂ© vrstvy.
51 Layer Read GET /layer   [
{
"type": "Layer",
"name": "",
"scheme": "shared",
"owner": "clienttestuser",
"hash": "2014-09-22 11:40:07",
"properties": {
"title": "Stromy v Brně",
"public": true,
"description": "Stromy v campusu MENDELU",
"kind": "point",
"created": "2013-12-20 13:00:00",
"last_edit": "2013-12-20 13:00:00"
}
},
{
"hash": "random value",
"name": "random value",
"owner": "admin",
"properties": {
"created": "random value",
"description": "Layer for sharing of device position",
"kind": "point",
"last_edit": "random value",
"public": true,
"title": "Mobile devices tracker"
},
"scheme": "shared",
"type": "Layer"
}
]
200 OK   clienttestuser 1 (shared) ÄŚteni všech vrstvy.
52 Layer Read GET /layer/shared/l123   {
"type": "Layer",
"name": "",
"scheme": "shared",
"owner": "clienttestuser",
"hash": "2014-09-22 11:40:07",
"properties": {
"title": "Stromy v Brně",
"description": "Stromy v campusu MENDELU",
"kind": "point",
"public": true,
"created": "2013-12-20 13:00:00",
"last_edit": "2013-12-20 13:00:00"
},
"attributes": [
{
"title": "Vyska",
"name": "",
"kind": "double precision",
"hash": "hash1"
}
]
}
200 OK   clienttestuser 1 (shared) ÄŚteni konkretni vrstvy - vcetne atributĹŻ!!!
53 Layer Update PUT /layer/shared/l123 {
"type": "Layer",
"hash": "2014-09-22 11:40:07",
"properties": {
"title": "Stromy v Brně",
"public": true,
"description": "Stromy v campusu MENDELU Modified",
"kind": "point",
"created": "2013-12-20 13:00:00",
"last_edit": "2013-12-20 13:00:00"
}
}
{
"type": "Layer",
"hash": "2014-09-22 11:40:08",
"scheme":"shared",
"name": "random value",
"properties": {
"title": "Stromy v Brně",
"public": true,
"description": "Stromy v campusu MENDELU Modified",
"kind": "point",
"created": "2013-12-20 13:00:00",
"last_edit": "2013-12-20 13:00:00"
}
}
202 Accepted   clienttestuser 1 (shared) Update verejne vrstvy
54 Layer Delete DELETE /layer/shared/l123 {
"type": "Layer",
"hash": "2014-09-22 11:40:07"
}
  204 No Content   clienttestuser 1 (shared) Delete verejne vrstvy
55 Project-Layer Create POST /project/clienttestuser/m123/layer/shared/l123456 {
"type": "LayerInProject",
"properties": {
"color": "FFFFFF",
"transparency": 50,
"zoom_threshold": 20,
"visibility": true,
"order": 1,
"symbology": "nazev"
}
}
{
"type": "LayerInProject",
"hash": "2014-09-22 11:40:07",
"properties": {
"color": "FFFFFF",
"transparency": 50,
"zoom_threshold": 20,
"visibility": true,
"order": 1,
"symbology": "nazev"
}
}
201 Created /project/_?[a-zA-Z0-9_]+/_?[a-zA-Z0-9_]+/layer$ clienttestuser 1 (shared) Pridani nove vrstvy do projektu
Projekt urcen url, vrstva je urceba atributy name a scheme v json
Server vraci json s aktualizovanou verzi ulozenou na serveru doplneny o hash
URL: /project/{scheme}/{name}/layer
HTTP response code: 201 Created

???co kdyz projekt / vrstva nexistuje ???
???jak bude v tabulce ulozeno propojeni
na vrstvu pripadne projekt z jineho
schematu???
56 Project-Layer Update PUT /project/clienttestuser/m123/layer/shared/l123456 {
"type": "LayerInProject",
"hash": "2014-09-22 11:40:07",
"properties": {
"color": "FFFFFF",
"transparency": 50,
"zoom_threshold": 20,
"visibility": true,
"order": 1,
"symbology": "nazev"
}
}
{
"type": "LayerInProject",
"hash": "2014-09-22 11:40:08",
"properties": {
"color": "FFFFFF",
"transparency": 50,
"zoom_threshold": 20,
"visibility": true,
"order": 1,
"symbology": "nazev"
}
}
202 Accepted /project/_?[a-zA-Z0-9_]+/_?[a-zA-Z0-9_]+/layer/_?[a-zA-Z0-9_]+/_?[a-zA-Z0-9_]+$ clienttestuser 1 (shared) Obdobne jako u projektu
URL: /project/{scheme}/{name}/layer/{scheme}/{name}
HTTP response code: 200 OK
57 Project-Layer Delete DELETE /project/clienttestuser/m123/layer/shared/l123456 {
"type": "LayerInProject",
"hash": "2014-09-22 11:40:08"
}
  204 No Content /project/_?[a-zA-Z0-9_]+/_?[a-zA-Z0-9_]+/layer/_?[a-zA-Z0-9_]+/_?[a-zA-Z0-9_]+$ clienttestuser 1 (shared) Obdobne jako u projektu
URL: /project/{scheme}/{name}/layer/{scheme}/{name}
HTTP response code: 204 No Content
58 Layer-Attribute Create POST /layer/shared/l123456/attribute {
"type": "Attribute",
"kind": "integer",
"title": "Vyška"
}
{
"type": "Attribute",
"hash": "2014-09-22 11:40:08",
"name": "",
"kind": "integer",
"title": "Vyška"
}
201 Created /layer/_?[a-zA-Z0-9_]+/_?[a-zA-Z0-9_]+/properties$ clienttestuser 1 (shared) Zalozeni noveho attributu do vrstvy
Jedna se o defini atributu, ktera se pouziva jako šahlona pro geomy.
Atribut se zklada z jmena a typu. Na priklade je vytvaren atribut s:
jmenem: height
typem: number
Server vraci json s aktualizovanou verzi ulozenou na serveru doplneny o hash
URL: /layer/{scheme}/{name}/properties
HTTP response code: 201 Created
59 Layer-Attribute Update PUT /layer/shared/l123456/attribute/vyska {
"type": "Attribute",
"hash": "2014-09-22 11:40:08",
"kind": "integer",
"title": "Ĺ irka"
}
{
"type": "Attribute",
"hash": "2014-09-22 11:40:08",
"kind": "integer",
"title": "Ĺ irka"
}
202 Accepted /layer/_?[a-zA-Z0-9_]+/_?[a-zA-Z0-9_]+/attribute/_?[a-zA-Z0-9_]+$ clienttestuser 1 (shared) Obdobne jako u projektu
URL: /layer/{scheme}/{name}/attribute/{name}
HTTP response code: 200 OK
60 Layer-Attribute Delete DELETE /layer/shared/l123456/attribute/vyska {
"type": "Attribute",
"hash": "2113-12-20 13:00:00"
}
  204 No Content /layer/_?[a-zA-Z0-9_]+/_?[a-zA-Z0-9_]+/attribute/_?[a-zA-Z0-9_]+$ clienttestuser 1 (shared) Obdobne jako u projektu
URL: /layer/{scheme}/{name}/attribute/{name}
HTTP response code: 204 No Content
61 Feature-Point Create POST /layer/shared/l123456/feature {
"type": "Feature",
"properties": {
"created": "2013-12-20 13:00:00",
"last_edit": "2013-12-20 13:00:00",
"precision": 23.8
},
"geometry": {
"type": "Point",
"coordinates": [100.1, 200.2]
}
}
{
"type": "Feature",
"id": 1,
"hash": "2115-05-05 23:40:22",
"properties": {
"created": "2013-12-20 13:00:00",
"last_edit": "2013-12-20 13:00:00",
"precision": 23.8
},
"geometry": {
"type": "Point",
"coordinates": [100.1, 200.2]
}
}
201 Created /layer/_?[a-zA-Z0-9_]+/_?[a-zA-Z0-9_]+/feature$ clienttestuser 1 (shared) Zalozeni noveho bodu do vrstvy
Server vraci json s aktualizovanou verzi ulozenou na serveru doplneny o hash a jedinecne id
URL: /layer/{scheme}/{name}/feature
HTTP response code: 201 Created
62 Feature-Point Read GET /layer/shared/l123456/feature   [
{
"type": "Feature",
"id": 1,
"hash": "hashFeature",
"properties": {
"has_picture": false,
"created": "2013-12-20 13:00:00",
"last_edit": "2013-12-20 13:00:00",
"precision": 23.8
},
"attributes": [
{
"name": "",
"value": "15.5",
"hash": "hash1"
},
{
"name": "",
"value": "",
"hash": "hash2"
}
],
"geometry": {
"type": "Point",
"coordinates": [10.15, 4.2]
}
},

{
"type": "Feature",
"id": 2,
"hash": "hashFeature",
"properties": {
"has_picture": false,
"created": "2013-12-20 13:00:00",
"last_edit": "2013-12-20 13:00:00",
"precision": 23.8
},
"attributes": [
{
"name": "",
"value": "15.5",
"hash": "hash1"
},
{
"name": "",
"value": "2.1",
"hash": "hash2"
}
],
"geometry": {
"type": "Point",
"coordinates": [100.1, 200.2]
}
}
]
200 OK /layer/_?[a-zA-Z0-9_]+/_?[a-zA-Z0-9_]+/feature$ clienttestuser 1 (shared) Metoda pro ziskani seznam seznamu bodĹŻ vrstvy.
Volitelne můze klient poslat hash aktualni verze, kterou vlastni, v takovem pripade server zašle jen co se ma zmenit. Pak ale bude problem jak predat zarizeni informaci, ze si ma vrstvu bod.
URL: /layer/{scheme}/{name}/feature
HTTP response code: 200 OK
63 Feature-Point Update PUT /layer/shared/l123456/feature/1 {
"type": "Feature",
"hash": "2115-05-05 23:40:22",
"properties": {
"created": "2013-12-20 13:00:00",
"last_edit": "2013-12-20 13:00:00",
"precision": 23.8
},
"geometry": {
"type": "Point",
"coordinates": [10.1, 20.2]
}
}
{
"type": "Feature",
"hash": "? MD5 ? time ? version ?",
"properties": {
"has_picture": false,
"created": "2013-12-20 13:00:00",
"last_edit": "2013-12-20 13:00:00",
"precision": 23.8
},
"geometry": {
"type": "Point",
"coordinates": [10.1, 20.2]
}
}
202 Accepted /layer/_?[a-zA-Z0-9_]+/_?[a-zA-Z0-9_]+/feature/[1-9]+[0-9]*$ clienttestuser 1 (shared) Obdobne jako u projektu
URL: /layer/{scheme}/{name}/feature/#
HTTP response code: 200 OK
64 Feature-Point Delete DELETE /layer/shared/l123456/feature/1 {
"type": "Feature",
"hash": "2115-05-05 23:40:22"
}
  204 No Content /layer/_?[a-zA-Z0-9_]+/_?[a-zA-Z0-9_]+/feature/[1-9]+[0-9]*$ clienttestuser 1 (shared) Obdobne jako u projektu
URL: /layer/{scheme}/{name}/feature/#
HTTP response code: 204 No Content
65 Feature-Line Create POST /layer/shared/l123456/feature {
"type": "Feature",
"properties": {
"created": "2013-12-20 13:00:00",
"last_edit": "2013-12-20 13:00:00",
"precision": 23.8
},
"geometry": {
"type": "LineString",
"coordinates": [[10.2, 0.5], [10.3, 1.5], [10.4, 0.5], [10.5, 1.5]]
},
"bbox": [10.5, 0.5, 10.5, 1.5]
}
{
"type": "Feature",
"id": 1,
"hash": "2013-12-20 13:05:00",
"properties": {
"created": "2013-12-20 13:00:00",
"last_edit": "2013-12-20 13:00:00",
"precision": 23.8
},
"geometry": {
"type": "LineString",
"coordinates": [[10.2, 0.5], [10.3, 1.5], [10.4, 0.5], [10.5, 1.5]]
},
"bbox": [10.5, 0.5, 10.5, 1.5]
}
201 Created /layer/_?[a-zA-Z0-9_]+/_?[a-zA-Z0-9_]+/feature$ clienttestuser 1 (shared) Zalozeni noveho liniedo vrstvy
Server vraci json s aktualizovanou verzi ulozenou na serveru doplneny o hash a jedinecne id
URL: /layer/{scheme}/{name}/feature
HTTP response code: 201 Created
66 Feature-Line Read GET /layer/shared/l123456/feature   [{
"type": "Feature",
"id": 1,
"hash": "2013-12-20 13:00:00",
"properties": {
"has_picture": false,
"created": "2013-12-20 13:00:00",
"last_edit": "2013-12-20 13:00:00",
"precision": 23.8
},
"attributes": [],

"geometry": {
"type": "LineString",
"coordinates": [[10.2, 0.5], [10.3, 1.5], [10.4, 0.5], [10.5, 1.5]]
},
"bbox": [10.5, 0.5, 10.2, 1.5]
}]
200 OK /layer/_?[a-zA-Z0-9_]+/_?[a-zA-Z0-9_]+/feature$ clienttestuser 1 (shared) ÄŚteni geometrie - linie
67 Feature-Line Update PUT /layer/shared/l123456/feature/1 {
"type": "Feature",
"hash": "2013-12-20 13:00:00",
"properties": {
"created": "2013-12-20 13:00:00",
"last_edit": "2013-12-20 13:00:00",
"precision": 23.8
},
"geometry": {
"type": "LineString",
"coordinates": [[10.5, 0.5], [10.3, 1.5], [10.4, 0.5], [10.5, 1.5]]
},
"bbox": [10.5, 0.5, 10.5, 1.5]
}
{
"type": "Feature",
"hash": "2013-12-20 13:05:00",
"properties": {
"has_picture": false,
"created": "2013-12-20 13:00:00",
"last_edit": "2013-12-20 13:00:00",
"precision": 23.8
},
"geometry": {
"type": "LineString",
"coordinates": [[10.5, 0.5], [10.3, 1.5], [10.4, 0.5], [10.5, 1.5]]
},
"bbox": [10.5, 0.5, 10.5, 1.5]
}
202 Accepted /layer/_?[a-zA-Z0-9_]+/_?[a-zA-Z0-9_]+/feature/[1-9]+[0-9]*$ clienttestuser 1 (shared) Obpodobne jako u bodudobne jako u projektu
URL: /layer/{scheme}/{name}/feature/#
HTTP response code: 200 OK
68 Feature-Line Delete DELETE /layer/shared/l123456/feature/1 {
"type": "Feature",
"hash": "2115-05-05 23:40:22"
}
  204 No Content /layer/_?[a-zA-Z0-9_]+/_?[a-zA-Z0-9_]+/feature/[1-9]+[0-9]*$ clienttestuser 1 (shared) Obdobne jako u projektu
URL: /layer/{scheme}/{name}/feature/#
HTTP response code: 204 No Content
69 Feature-Polygone Create POST /layer/shared/l123456/feature {
"type": "Feature",
"properties": {
"created": "2013-12-20 13:00:00",
"last_edit": "2013-12-20 13:00:00",
"precision": 23.8
},
"geometry": {
"type": "Polygon",
"coordinates": [
[[10.5, 0.5], [11.1, 0.5], [12.2, 1.5],
[13.3, 1.5], [10.5, 0.5] ]
]
},
"bbox": [10.5, 0.5, 13.3, 1.5]
}
{
"type": "Feature",
"id": 1,
"hash": "2013-12-20 13:00:00",
"properties": {
"created": "2013-12-20 13:00:00",
"last_edit": "2013-12-20 13:00:00",
"precision": 23.8
},
"geometry": {
"type": "Polygon",
"coordinates": [[[10.5, 0.5], [11.1, 0.5], [12.2, 1.5],
[13.3, 1.5], [10.5, 0.5]] ]
},
"bbox": [10.5, 0.5, 13.3, 1.5]
}
201 Created /layer/_?[a-zA-Z0-9_]+/_?[a-zA-Z0-9_]+/feature$ clienttestuser 1 (shared) Zalozeni noveho liniedo vrstvy
Server vraci json s aktualizovanou verzi ulozenou na serveru doplneny o hash a jedinecne id
URL: /layer/{scheme}/{name}/feature
HTTP response code: 201 Created
70 Feature-Polygone Read GET /layer/shared/l123456/feature   [{
"type": "Feature",
"id": 1,
"hash": "2013-12-20 13:01:00",
"properties": {
"has_picture": false,
"created": "2013-12-20 13:00:00",
"last_edit": "2013-12-20 13:00:00",
"precision": 23.8
},
"geometry": {
"type": "Polygon",
"coordinates": [[[10.2, 0.5], [10.3, 1.5], [10.4, 0.5], [10.5, 1.5], [10.2, 0.5]]]
},
"attributes": [],
"bbox": [10.5, 0.5, 10.2, 1.5]
}]
200 OK /layer/_?[a-zA-Z0-9_]+/_?[a-zA-Z0-9_]+/feature$ clienttestuser 1 (shared) ÄŚteni geometrie - polygon
71 Feature-Polygone Update PUT /layer/shared/l123456/feature/1 {
"type": "Feature",
"hash": "2115-05-05 23:40:22",
"properties": {
"created": "2013-12-20 13:00:00",
"last_edit": "2013-12-20 13:00:00",
"precision": 23.8
},
"geometry": {
"type": "Polygon",
"coordinates": [[[1.5, 1.5], [11.5, 1.5], [14.5, 0.5],
[19.5, 0.5], [1.5, 1.5]]]

},
"bbox": [1.5, 1.5, 19.5, 0.5]
}
{
"type": "Feature",
"hash": "2013-12-20 13:05:00",
"properties": {
"has_picture": false,
"created": "2013-12-20 13:00:00",
"last_edit": "2013-12-20 13:00:00",
"precision": 23.8
},
"geometry": {
"type": "Polygon",
"coordinates": [[[1.5, 1.5], [11.5, 1.5], [14.5, 0.5],
[19.5, 0.5], [1.5, 1.5]]]
},
"bbox": [1.5, 1.5, 19.5, 0.5]
}
202 Accepted /layer/_?[a-zA-Z0-9_]+/_?[a-zA-Z0-9_]+/feature/[1-9]+[0-9]*$ clienttestuser 1 (shared) Obdobne jako u projektu
URL: /layer/{scheme}/{name}/feature/#
HTTP response code: 200 OK
72 Feature-Polygone Delete DELETE /layer/shared/l123456/feature/1 {
"type": "Feature",
"hash": "2115-05-05 23:40:22"
}
  204 No Content /layer/_?[a-zA-Z0-9_]+/_?[a-zA-Z0-9_]+/feature/[1-9]+[0-9]*$ clienttestuser 1 (shared) Obdobne jako u projektu
URL: /layer/{scheme}/{name}/feature/#
HTTP response code: 204 No Content
73 Feature-Attribute Create POST /layer/shared/l123456/feature/123456/attribute {
"type": "Attribute",
"name": "height",
"value": 15.5
}
{
"type": "Attribute",
"hash": "2013-12-20 13:00:00",
"name": "height",
"value": 15.5
}
201 Created /layer/_?[a-zA-Z0-9_]+/_?[a-zA-Z0-9_]+/feature/[1-9]+[0-9]*/attribute$ clienttestuser 1 (shared) Zalozeni noveho attributu do geomu
Atribut se zklada z jmena a hodnoty. Na priklade je vytvaren atribut s:
jmenem: height
hodnotou: 15,5
Server vraci json s aktualizovanou verzi ulozenou na serveru doplneny o hash
URL: /layer/{scheme}/{name}/feature/#/attribute
HTTP response code: 201 Created
74 Feature-Attribute Update PUT /layer/shared/l123456/feature/123456/attribute/height {
"type": "Attribute",
"hash": "2015-05-05 23:40:22",
"value": "28.0"
}
{
"type": "Attribute",
"hash": "2013-12-20 13:00:00",
"value": "28.0"
}
202 Accepted /layer/_?[a-zA-Z0-9_]+/_?[a-zA-Z0-9_]+/feature/[1-9]+[0-9]*/attribute/_?[a-zA-Z0-9_]+$ clienttestuser 1 (shared) Obdobne jako u projektu
URL: /layer/{scheme}/{name}/feature/#/attribute/{name}
HTTP response code: 200 OK
75 Feature-Attribute Delete DELETE /layer/shared/l123456/feature/123456/attribute/height {
"type": "Attribute",
"hash": "2115-05-05 23:40:22"
}
  204 No Content /layer/_?[a-zA-Z0-9_]+/_?[a-zA-Z0-9_]+/feature/[1-9]+[0-9]*/attribute/_?[a-zA-Z0-9_]+$ clienttestuser 1 (shared) Obdobne jako u projektu
URL: /layer/{scheme}/{name}/feature/#/attribute/{name}
HTTP response code: 204 No Content
76 FeaturePicture Read GET /layer/shared/l123456/feature/123456789/picture     200 OK   clienttestuser 1 (shared) ÄŚteni obrazku
77 FeaturePicture Create POST /layer/shared/l123456/feature/123456789/picture ["....filedata....."] {"hash": "2013-12-20 13:01:00"} 201 Created   clienttestuser 1 (shared) NahránĂ­ obrázku.
78 FeaturePicture Update PUT /layer/shared/l123456/feature/123456789/picture {"hash": "2115-12-20 13:01:00"} {"hash": "2013-12-20 13:01:00"} 202 Accepted   clienttestuser 1 (shared) Update obrazku
79 Sync Read GET /sync/events [
"/layer/clienttestuser/trees_in_brno_123456"
]
[
{
"data": {
"hash": "random value",
"properties": {
"created": "random value",
"description": "Trees in MENDELU campus",
"kind": "point",
"last_edit": "random value",
"public": true,
"title": "Trees In Brno 123456"
},
"type": "Layer"
},
"method": "update",
"uri": "/layer/shared/trees_in_brno_123456"
}
]
200 OK   clienttestuser 1 (shared) Zmena verejne vrstvy jineho uzivatele.
80 Layer Update PUT /layer/clienttestuser/l123456 {
"type": "Layer",
"hash": "%future%",
"properties": {
"title": "Stromy v Brně",
"public": true,
"description": "Stromy v campusu MENDELU Modified",
"kind": "point",
"created": "2013-12-20 13:00:00",
"last_edit": "%future%"
}
}
{
"hash": "random value",
"name": "random value",
"properties": {
"created": "random value",
"description": "Stromy v campusu MENDELU Modified",
"kind": "point",
"last_edit": "random value",
"public": true,
"title": "Stromy v Brně"
},
"scheme": "shared",
"type": "Layer"
}
202 Accepted   clienttestuser 1 (shared) Zmena vrstvy na verejnou.
81 Sync Read GET /sync/events [
"/project/clienttestuser/l123"
]
[
{
"data": {
"hash": "random value",
"name": "random value",
"properties": {
"created": "random value",
"description": "Stromy v campusu MENDELU Modified",
"kind": "point",
"last_edit": "random value",
"public": true,
"title": "Stromy v Brn\u011b"
},
"scheme": "shared",
"type": "Layer"
},
"method": "PUT",
"uri": "/layer/clienttestuser/l123456"
}
]
200 OK   clienttestuser 4 (shared) Zmena vrstvy na verejnou - udalost pro jine zarizeni stejneho uzivatele. Zavisle na testu 80.
82 Sync Read GET /sync/events [
"/project/clienttestuser2/l123"
]
[
{
"data": {
"hash": "random value",
"name": "random value",
"properties": {
"created": "random value",
"description": "Stromy v campusu MENDELU Modified",
"kind": "point",
"last_edit": "random value",
"public": true,
"title": "Stromy v Brn\u011b"
},
"scheme": "shared",
"type": "Layer"
},
"method": "POST",
"uri": "/layer"
},
{
"data": {
"hash": "random value",
"kind": "double precision",
"name": "random value",
"title": "Vyska",
"type": "Attribute"
},
"method": "POST",
"uri": "/layer/shared/l123456/attribute"
},
{
"data": {
"hash": "random value",
"kind": "double precision",
"name": "random value",
"title": "Sirka",
"type": "Attribute"
},
"method": "POST",
"uri": "/layer/shared/l123456/attribute"
},
{
"data": {
"attributes": [
{
"hash": "random value",
"name": "random value",
"value": "15.5"
},
{
"hash": "random value",
"name": "random value",
"value": ""
}
],
"geometry": {
"coordinates": [
10.15,
4.2
],
"type": "Point"
},
"hash": "random value",
"id": 1,
"properties": {
"created": "random value",
"has_picture": 0,
"last_edit": "random value",
"precision": 23.8
},
"type": "Feature"
},
"method": "POST",
"uri": "/layer/shared/l123456/feature"
},
{
"data": {
"attributes": [
{
"hash": "random value",
"name": "random value",
"value": "15.5"
},
{
"hash": "random value",
"name": "random value",
"value": "2.1"
}
],
"geometry": {
"coordinates": [
100.1,
200.2
],
"type": "Point"
},
"hash": "random value",
"id": 2,
"properties": {
"created": "random value",
"has_picture": 0,
"last_edit": "random value",
"precision": 23.8
},
"type": "Feature"
},
"method": "POST",
"uri": "/layer/shared/l123456/feature"
},
{
"data": {
"hash": "random value",
"type": "Attribute",
"value": 15.5
},
"method": "POST",
"uri": "/layer/shared/l123456/feature/1/attribute/height"
},
{
"data": {
"hash": "random value",
"type": "Attribute",
"value": 15.5
},
"method": "POST",
"uri": "/layer/shared/l123456/feature/2/attribute/height"
},
{
"data": {
"hash": "random value",
"type": "Attribute",
"value": 2.1
},
"method": "POST",
"uri": "/layer/shared/l123456/feature/2/attribute/width"
}
]
200 OK   clienttestuser2 5 (shared) Zmena vrstvy na verejnou - udalosti pro jineho uzivatele. Zavisle na testu 80.
83 Layer Update PUT /layer/shared/l777 {
"type": "Layer",
"hash": "2014-09-22 11:40:07",
"properties": {
"title": "Stromy v Brně",
"public": false,
"description": "Stromy v campusu MENDELU Modified",
"kind": "point",
"created": "2013-12-20 13:00:00",
"last_edit": "%future%"
}
}
{
"hash": "random value",
"name": "random value",
"properties": {
"created": "random value",
"description": "Stromy v campusu MENDELU Modified",
"kind": "point",
"last_edit": "random value",
"public": false,
"title": "Stromy v Brn\u011b"
},
"scheme": "clienttestuser",
"type": "Layer"
}
202 Accepted   clienttestuser 1 (shared) Zmena vrstvy na soukromou.
84 Sync Read GET /sync/events [
"/project/clienttestuser/l123"
]
[
{
"data": {
"hash": "random value",
"name": "random value",
"properties": {
"created": "random value",
"description": "Stromy v campusu MENDELU Modified",
"kind": "point",
"last_edit": "random value",
"public": false,
"title": "Stromy v Brn\u011b"
},
"scheme": "clienttestuser",
"type": "Layer"
},
"method": "PUT",
"uri": "/layer/shared/l777"
}
]
200 OK   clienttestuser 4 (shared) Zmena vrstvy na soukromou - udalost pro jine zarizeni stejneho uzivatele. Zavisle na testu 83.
85 Sync Read GET /sync/events [
"/project/clienttestuser2/l123"
]
[
{
"method": "DELETE",
"uri": "/layer/shared/l777"
}
]
200 OK   clienttestuser2 5 (shared) Zmena vrstvy na soukromou - udalost pro jineho uzivatele. Zavisle na testu 83.
100 Project Read GET /project/clienttestuser/neexistujici-projekt {
"type": "Project",
"hash": "2014-09-22 11:40:07",
"properties": {
"title": "Mereni v Brne",
"description": "This project contains updated version...",
"public": false
}
}
  404 Not Found /project/_?[a-zA-Z0-9_]+/_?[a-zA-Z0-9_]+$ clienttestuser 1 ÄŚteni neexistujiciho projektu.
101 Project Update PUT /project/clienttestuser/neexistujici-projekt {
"type": "Project",
"hash": "2014-09-22 11:40:07.355724",
"properties": {
"title": "Mereni v Brne",
"description": "This project contains updated version...",
"public": false,
"last_latitude": 1.8,
"last_longitude": 1.7,
"last_zoom_level": 1.6
}
}
  404 Not Found /project/_?[a-zA-Z0-9_]+/_?[a-zA-Z0-9_]+$ clienttestuser 1 Update neexistujiciho projektu, pošlu zpet to co jsem dostal.
102 Project Update PUT /project/clienttestuser/l123456 {
"type": "Project",
"hash": "1900-09-22 11:39:07",
"properties": {
"title": "Stromy v Brně 123456",
"description": "This project contains updated version...",
"public": false,
"last_latitude": 1.8,
"last_longitude": 1.7,
"last_zoom_level": 1.6
}
}
{
"type": "Project",
"hash": "2014-09-22 11:40:08",
"properties": {
"title": "Stromy v Brně 123456",
"description": "Nekdo mne zmenil projekt a ja mam starej hash",
"public": false,
"last_latitude": 5.1,
"last_longitude": 10.8,
"last_zoom_level": 19.3
}
}
409 Conflict /project/_?[a-zA-Z0-9_]+/_?[a-zA-Z0-9_]+$ clienttestuser 1 Update zastaraleho projektu. Vrati novejsi projekt.
103 Project Delete DELETE /project/clienttestuser/neexistujici-projekt { "type": "Project",
"hash": "2014-09-22 11:39:07"}
  404 Not Found /project/_?[a-zA-Z0-9_]+/_?[a-zA-Z0-9_]+$ clienttestuser 1 Delete neexistujiciho projektu
104 Project Delete DELETE /project/clienttestuser/l123456 { "type": "Project",
"hash": "1900-09-22 11:39:07"}
{
"type": "Project",
"hash": "2014-09-22 11:40:08",
"properties": {
"title": "Stromy v Brně 123456",
"description": "Nekdo mne zmenil projekt a ja mam starej hash",
"public": false,
"last_latitude": 5.1,
"last_longitude": 10.8,
"last_zoom_level": 19.3
}
}
409 Conflict /project/_?[a-zA-Z0-9_]+/_?[a-zA-Z0-9_]+$ clienttestuser 1 Delete modifikovaneho projektu. Vrati novy projekt z db.
105 Layer Update PUT /layer/clienttestuser/neexistujici-vrstva {
"type": "Layer",
"hash": "2014-09-22 11:40:07",
"properties": {
"title": "Stromy v Brně",
"public": false,
"description": "Stromy v campusu MENDELU Modified",
"kind": "point",
"created": "2013-12-20 13:00:00",
"last_edit": "2013-12-20 13:00:00"
}
}
  404 Not Found   clienttestuser 1 Update neexistujici vrstvy, pošlu zpet to co jsem dostal.
106 Layer Update PUT /layer/clienttestuser/l123456 {
"type": "Layer",
"hash": "2014-09-22 11:40:07",
"properties": {
"title": "Stromy v Brně",
"public": false,
"description": "Stromy v campusu MENDELU Modified",
"kind": "point",
"created": "2013-12-20 13:00:00",
"last_edit": "2013-12-20 13:00:00"
}
}
{
"type": "Layer",
"hash": "2014-09-22 11:40:07",
"owner": "clienttestuser",
"properties": {
"title": "Stromy v Brně 123456",
"public": false,
"description": "Nekdo mne zmenil vrstvu a ja mam starej hash",
"kind": "point",
"created": "2013-12-20 13:00:00",
"last_edit": "2013-12-20 13:00:00"
}
}
409 Conflict   clienttestuser 1 Update modifikovane vrstvy
107 Layer Delete DELETE /layer/clienttestuser/neexistujici-vrstva { "type": "Layer",
"hash": "1900-09-22 11:39:07"
}
  404 Not Found   clienttestuser 1 Delete neexistujici vrstvy.
108 Layer Delete DELETE /layer/clienttestuser/l123456 { "type": "Layer",
"hash": "1900-09-22 11:39:07"
}
{
"type": "Layer",
"hash": "2014-09-22 11:40:07",
"owner": "clienttestuser",
"properties": {
"title": "Stromy v Brně 123456",
"public": false,
"description": "Nekdo mne zmenil vrstvu a ja mam starej hash",
"kind": "point",
"created": "2013-12-20 13:00:00",
"last_edit": "2013-12-20 13:00:00"
}
}
409 Conflict   clienttestuser 1 Delete modifikovane vrstvy. Vrati aktualni vrstvu z db.
112 Layer-Attribute Update PUT /layer/clienttestuser/l123456/attribute/neexistujici-atribut {
"type": "Attribute",
"hash": "2014-09-22 11:40:08",
"kind": "integer",
"title": "Ĺ irka"
}
  404 Not Found   clienttestuser 1 Update neexistujiciho atributu
113 Layer-Attribute Update PUT /layer/clienttestuser/l123456/attribute/vyska {
"type": "Attribute",
"hash": "2013-09-22 11:40:08",
"kind": "integer",
"title": "Ĺ irka"
}
{
"type": "Attribute",
"hash": "2014-09-22 11:40:08",
"kind": "double precision",
"title": "Hloubka"
}
409 Conflict   clienttestuser 1 Update modifikovaneho atributu
114 Layer-Attribute Delete DELETE /layer/clienttestuser/l123456/attribute/neexistujici-atribut {
"type": "Attribute",
"hash": "2113-12-20 13:00:00"
}
  404 Not Found   clienttestuser 1 Mazani neexistujiciho atributu
115 Layer-Attribute Delete DELETE /layer/clienttestuser/l123456/attribute/vyska {
"type": "Attribute",
"hash": "2003-12-20 13:00:00"
}
{
"type": "Attribute",
"hash": "2014-09-22 11:40:08",
"kind": "double precision",
"title": "Vyška"
}
409 Conflict   clienttestuser 1 Mazani modifikovaneho atributu
116 Feature-Attribute Delete DELETE /layer/clienttestuser/l123456/feature/123456/attribute/height {
"type": "Attribute",
"hash": "2005-05-05 23:40:22"
}
{"hash": "2015-05-06 00:42:16", "type": "Attribute", "value": 555.0} 409 Conflict   clienttestuser 1 Mazani neexistujici hodnoty atributu - Protoze je povolena i prazdna hodnota,
nemĹŻze u FeatureAttributu nikdy nastat Not Found - vzdy se bude jednat
o 409 Conflict (napr. hodnota se zmenila z 5 na '', hodnota se zmenila z 2 na 3)
117 Feature-Attribute Delete DELETE /layer/clienttestuser/l123456/feature/123456/attribute/height {
"type": "Attribute",
"hash": "2005-05-05 23:40:22"
}
{"hash": "2015-05-06 00:42:16", "type": "Attribute", "value": 555.0} 409 Conflict   clienttestuser 1 Mazani modifikovane hodnoty atributu
118 Feature-Attribute Update PUT /layer/clienttestuser/l123456/feature/123456/attribute/height {
"type": "Attribute",
"hash": "2005-05-05 23:40:22",
"value": "28.0"
}
{"hash": "2015-05-06 00:42:16", "type": "Attribute", "value": 555.0} 409 Conflict   clienttestuser 1 Update hodnoty atributu, ktera neexistuje - Protoze je povolena i prazdna hodnota,
nemĹŻze u FeatureAttributu nikdy nastat Not Found - vzdy se bude jednat
o 409 Conflict (napr. hodnota se zmenila z 5 na '', hodnota se zmenila z 2 na 3)
119 Feature-Attribute Update PUT /layer/clienttestuser/l123456/feature/123456/attribute/height {
"type": "Attribute",
"hash": "2005-05-05 23:40:22",
"value": "28.0"
}
{"hash": "2015-05-06 00:41:12", "type": "Attribute", "value": 555.0} 409 Conflict   clienttestuser 1 Update hodnoty atributu, ktera ma ale novejši hash
120 Project-Layer Update PUT /project/clienttestuser/m123/layer/clienttestuser/l123456 {
"type": "LayerInProject",
"hash": "2004-09-22 11:40:07",
"properties": {
"color": "FFFFFF",
"transparency": 50,
"zoom_threshold": 20,
"visibility": true,
"order": 1,
"symbology": "nazev"
}
}
{
"type": "LayerInProject",
"hash": "2004-09-22 11:40:07",
"properties": {
"color": "FFFFFF",
"transparency": 50,
"zoom_threshold": 20,
"visibility": true,
"order": 1,
"symbology": "nazev"
}
}
409 Conflict   clienttestuser 1 Update projektove vrstvy, kterou nekdo zmenil
121 Project-Layer Update PUT /project/clienttestuser/m123/layer/clienttestuser/l123456 {
"type": "LayerInProject",
"hash": "2004-09-22 11:40:07",
"properties": {
"color": "FFFFFF",
"transparency": 50,
"zoom_threshold": 20,
"visibility": true,
"order": 1,
"symbology": "nazev"
}
}
  404 Not Found   clienttestuser 1 Update projektove vrstvy, kterou nekdo smazal
122 Project-Layer Delete DELETE /project/clienttestuser/m123/layer/clienttestuser/l123456 {
"type": "LayerInProject",
"hash": "2004-09-22 11:40:08"
}
  409 Conflict   clienttestuser 1 Delete projektove vrstvy, kterou nekdo zmenil
123 Project-Layer Delete DELETE /project/clienttestuser/m123/layer/clienttestuser/l123456 {
"type": "LayerInProject",
"hash": "2014-09-22 11:40:08"
}
  404 Not Found   clienttestuser 1 Delete projektove vrstvy, ktera uz je smazana
124 Feature-Picture Read GET /layer/clienttestuser/l123456/feature/999999/picture     404 Not Found   clienttestuser 1 Test na stazeni neexistujiciho obrazku.
125 Feature-Picture Create POST /layer/clienttestuser/l123456/feature/123456/picture ["...filedata..."] {"hash": "2015-05-06 00:41:12"} 409 Conflict   clienttestuser 1 Pri pokusu o nahrani dalsiho obrazku k mapovemu objektu, ktery jiz obrazek obsahuje, nastane konflikt a server vrati hash existujiciho obrazku. Zarizeni smaze novy obrazek a zobrai uzivateli moznost stazeni existujiciho obrazku.
126 Feature-Picture Update PUT /layer/clienttestuser/l123456/feature/999999/picture ["...filedata..."]   404 Not Found   clienttestuser 1 Test na update neexistujiciho obrazku.
150 Project Create POST /project {
"type": "Project",
"properties": {
"title": "Mereni v Brne",
"description": "cesky popis...",
"public": false,
"last_latitude": 1.1,
"last_longitude": 1.2,
"last_zoom_level": 1.3
}
}
  460 Device ID Lost /project$ clienttestuser 999 Test vytvoreni noveho projektu s neexistujicim device ID.
200 Sync Read GET /sync/events [
"/project"
]
[
{
"uri": "/project",
"method": "insert",
"data": {
"type": "Project",
"name": "",
"scheme": "clienttestuser",
"hash": "2015-03-23 11:49:49.434283+01",
"properties": {
"title": "Measurements in Brno",
"public": false,
"description": "Thisprojectcontains...",
"last_latitude": 1.1,
"last_longitude": 1.2,
"last_zoom_level": 1.3
}
}
}
]
200 OK   clienttestuser 1 Zmeny na projektech - INSERT
201 Sync Read GET /sync/events [
"/project"
]
[
{
"uri": "/project/clienttestuser/l123",
"method": "update",
"data": {
"type": "Project",
"hash": "2013-12-20 13:00:00",
"properties": {
"title": "Measurements in Brno",
"public": false,
"description": "This project contains ...",
"last_latitude": 1.1,
"last_longitude": 1.2,
"last_zoom_level": 1.3
}
}
}
]
200 OK   clienttestuser 1 Zmeny na projektech - UPDATE
202 Sync Read GET /sync/events [
"/project"
]
[
{
"uri": "/project/clienttestuser/l123",
"method": "delete"
}
]
200 OK   clienttestuser 1 Zmeny na projektech - DELETE
203 Sync Read GET /sync/events [
"/project"
]
[
{
"uri": "/project",
"method": "insert",
"data": {
"type": "Project",
"name": "",
"scheme": "clienttestuser",
"hash": "2013-12-20 13:00:00",
"properties": {
"title": "Measurements in Brno",
"public": false,
"description": "This project contains ...",
"last_latitude": 1.1,
"last_longitude": 1.2,
"last_zoom_level": 1.3
}
}
},
{
"uri": "/project/clienttestuser/l123",
"method": "update",
"data": {
"type": "Project",
"hash": "2013-12-20 13:00:00",
"properties": {
"title": "Measurements in Brno",
"public": false,
"description": "This project contains ...",
"last_latitude": 1.1,
"last_longitude": 1.2,
"last_zoom_level": 1.3
}
}
},
{
"uri": "/project/clienttestuser/l123",
"method": "delete"
}
]
200 OK
}"
clienttestuser 1 Zmeny na projektech - INSERT, UPDATE, DELETE
204 Sync Read GET /sync/events [
"/project/clienttestuser/l123"
]
[
{
"uri": "/project/clienttestuser/l123",
"method": "update",
"data": {
"type": "Project",
"hash": "2013-12-20 13:00:00",
"properties": {
"title": "Measurements in Brno",
"public": false,
"description": "This project contains ...",
"last_latitude": 1.1,
"last_longitude": 1.2,
"last_zoom_level": 1.3
}
}
}
]
200 OK
}
clienttestuser 1 Zmena na konkretnim projektu - UPDATE
205 Sync Read GET /sync/events [
"/project/clienttestuser/l123"
]
[
{
"uri": "/project/clienttestuser/l123",
"method": "delete"
}
]
200 OK
}
clienttestuser 1 Zmena na konkretnim projektu - DELETE
206 Sync Read GET /sync/events [
"/project/clienttestuser/l123"
]
[
{
"uri": "/project/clienttestuser/l123",
"method": "update",
"data": {
"type": "Project",
"hash": "2013-12-20 13:00:00",
"properties": {
"title": "Measurements in Brno",
"public": false,
"description": "This project contains ...",
"last_latitude": 1.1,
"last_longitude": 1.2,
"last_zoom_level": 1.3
}
}
},
{
"uri": "/project/clienttestuser/l123",
"method": "delete"
}
]
200 OK
}
clienttestuser 1 Zmena na konkretnim projektu - UPDATE, DELETE
207 Sync Read GET /sync/events [
"/project/clienttestuser/l123"
]
[
{
"uri": "/project/clienttestuser/l123/layer",
"method": "insert",
"data": {
"type": "LayerInProject",
"name": "",
"scheme": "clienttestuser",
"hash": "2015-03-23 11:49:49.434283+01",
"properties": {
"color": "FFFFFF",
"transparency": 50,
"zoom_threshold": 20,
"visibility": true,
"order": 1,
"symbology": "nazev"
}
}
}
]
200 OK
}
clienttestuser 1 Zmena na vrstvach projektu - INSERT
208 Sync Read GET /sync/events [
"/project/clienttestuser/l123"
]
[
{
"uri": "/project/clienttestuser/l123/layer/clienttestuser/trees_in_brno_123456",
"method": "update",
"data": {
"type": "LayerInProject",
"hash": "2015-03-23 11:49:49.434283+01",
"properties": {
"color": "FFFFFF",
"transparency": 50,
"zoom_threshold": 20,
"visibility": true,
"order": 1,
"symbology": "nazev"
}
}
}
]
200 OK
}
clienttestuser 1 Zmena na vrstvach projektu - UPDATE
209 Sync Read GET /sync/events [
"/project/clienttestuser/l123"
]
[
{
"uri": "/project/clienttestuser/l123/layer/clienttestuser/trees_in_brno_123456",
"method": "delete"
}
]
200 OK
}
clienttestuser 1 Zmena na vrstvach projektu - DELETE
210 Sync Read GET /sync/events [
"/project/clienttestuser/l123"
]
[
{
"uri": "/project/clienttestuser/l123/layer",
"method": "insert",
"data": {
"type": "LayerInProject",
"name": "",
"scheme": "clienttestuser",
"hash": "? MD5 ? time ? version ?",
"properties": {
"color": "FFFFFF",
"transparency": 50,
"zoom_threshold": 20,
"visibility": true,
"order": 1,
"symbology": "nazev"
}
}
},
{
"uri": "/project/clienttestuser/l123/layer/clienttestuser/trees_in_brno_123456",
"method": "update",
"data": {
"type": "LayerInProject",
"hash": "? MD5 ? time ? version ?",
"properties": {
"color": "FFFFFF",
"transparency": 50,
"zoom_threshold": 20,
"visibility": true,
"order": 1,
"symbology": "nazev"
}
}
},
{
"uri": "/project/clienttestuser/l123/layer/clienttestuser/trees_in_brno_123456",
"method": "delete"
}
]
200 OK
}
clienttestuser 1 Zmeny na vrstvach projektu - INSERT, UPDATE, DELETE
211 Sync Read GET /sync/events [
"/layer/clienttestuser/trees_in_brno_123456"
]
[
{
"uri": "/layer/clienttestuser/trees_in_brno_123456",
"method": "update",
"data": {
"type": "Layer",
"hash": "2013-12-20 13:00:00",
"properties": {
"title": "Trees In Brno 123456",
"public": false,
"description": "Trees in MENDELU campus",
"kind": "point",
"created": "2013-12-20 13:00:00",
"last_edit": "2013-12-20 13:00:00"
}
}
}
]
200 OK
}
clienttestuser 1 Zmeny na konkretni vrstve - UPDATE
212 Sync Read GET /sync/events [
"/layer/clienttestuser/trees_in_brno_123456"
]
[
{
"uri": "/layer/clienttestuser/trees_in_brno_123456",
"method": "delete"
}
]
200 OK
}
clienttestuser 1 Zmeny na konkretni vrstve - DELETE
213 Sync Read GET /sync/events [
"/layer/clienttestuser/trees_in_brno_123456"
]
[
{
"uri": "/layer/clienttestuser/trees_in_brno_123456",
"method": "update",
"data": {
"type": "Layer",
"hash": "2013-12-20 13:00:00",
"properties": {
"title": "Trees In Brno 123456",
"public": false,
"description": "Trees in MENDELU campus",
"kind": "point",
"created": "2013-12-20 13:00:00",
"last_edit": "2013-12-20 13:00:00"
}
}
},
{
"uri": "/layer/clienttestuser/trees_in_brno_123456",
"method": "delete"
}
]
200 OK
}
clienttestuser 1 Zmeny na konkretni vrstve - UPDATE, DELETE
214 Sync Read GET /sync/events [
"/layer/clienttestuser/trees_in_brno_123456"
]
[
{
"uri": "/layer/clienttestuser/trees_in_brno_123456/attribute",
"method": "insert",
"data": {
"type": "Attribute",
"hash": "2013-12-20 13:00:00",
"kind": "integer",
"title": "Vyska",
"name": ""
}
}
]
200 OK
}
clienttestuser 1 Zmena atributĹŻ vrstvy - INSERT
215 Sync Read GET /sync/events [
"/layer/clienttestuser/trees_in_brno_123456"
]
[
{
"uri": "/layer/clienttestuser/trees_in_brno_123456/attribute/height",
"method": "update",
"data": {
"type": "Attribute",
"hash": "2013-12-20 13:00:00",
"kind": "integer",
"title": "Vyska"
}
}
]
200 OK
}
clienttestuser 1 Zmena atributĹŻ vrstvy - UPDATE
216 Sync Read GET /sync/events [
"/layer/clienttestuser/trees_in_brno_123456"
]
[
{
"uri": "/layer/clienttestuser/trees_in_brno_123456/attribute/height",
"method": "delete"
}
]
200 OK
}
clienttestuser 1 Zmena atributĹŻ vrstvy - DELETE
217 Sync Read GET /sync/events [
"/layer/clienttestuser/trees_in_brno_123456"
]
[
{
"uri": "/layer/clienttestuser/trees_in_brno_123456/attribute",
"method": "insert",
"data": {
"type": "Attribute",
"hash": "2013-12-20 13:00:00",
"kind": "integer",
"title": "Vyska",
"name": ""
}
},
{
"uri": "/layer/clienttestuser/trees_in_brno_123456/attribute/height",
"method": "update",
"data": {
"type": "Attribute",
"hash": "2013-12-20 13:00:00",
"kind": "integer",
"title": "Vyska"
}
},
{
"uri": "/layer/clienttestuser/trees_in_brno_123456/attribute/height",
"method": "delete"
}
]
200 OK
}
clienttestuser 1 Zmena atributĹŻ vrstvy - INSERT, UPDATE, DELETE
218 Sync Read GET /sync/events [
"/layer/clienttestuser/trees_in_brno_123456"
]
[
{
"uri": "/layer/clienttestuser/trees_in_brno_123456",
"method": "update",
"data": {
"type": "Layer",
"hash": "2013-12-20 12:00:00",
"properties": {
"title": "Trees In Brno 123456",
"public": false,
"description": "Trees in MENDELU campus",
"kind": "point",
"created": "2013-12-20 12:00:00",
"last_edit": "2013-12-20 12:00:00"
}
}
},
{
"uri": "/layer/clienttestuser/trees_in_brno_123456",
"method": "delete"
},
{
"uri": "/layer/clienttestuser/trees_in_brno_123456/attribute",
"method": "insert",
"data": {
"type": "Attribute",
"hash": "2013-12-20 13:00:00",
"kind": "integer",
"title": "Vyska",
"name": ""
}
},
{
"uri": "/layer/clienttestuser/trees_in_brno_123456/attribute/height",
"method": "update",
"data": {
"type": "Attribute",
"hash": "2013-12-20 13:00:00",
"kind": "integer",
"title": "Vyska"
}
},
{
"uri": "/layer/clienttestuser/trees_in_brno_123456/attribute/height",
"method": "delete"
}
]
200 OK
}
clienttestuser 1 Zmeny konkretni vrstvy + jeji atributy - INSERT, UPDATE, DELETE (pro oboje)
219 Sync Read GET /sync/events [
"/layer/clienttestuser/trees_in_brno_123456"
]
[
{
"uri": "/layer/clienttestuser/trees_in_brno_123456/feature",
"method": "insert",
"data": {
"type": "Feature",
"id": 123,
"hash": "2013-12-20 13:00:00",
"properties": {
"created": "2013-12-20 13:00:00",
"last_edit": "2013-12-20 13:00:00",
"precision": 23.8
},
"geometry": {
"type": "Point",
"coordinates": [100.1, 200.2]
}
}
}
]
200 OK
}
clienttestuser 1 Zmeny bodĹŻ ve vrstve - INSERT
220 Sync Read GET /sync/events [
"/layer/clienttestuser/trees_in_brno_123456"
]
[
{
"uri": "/layer/clienttestuser/trees_in_brno_123456/attibute/feature/123",
"method": "update",
"data": {
"type": "Feature",
"hash": "2013-12-20 13:00:00",
"properties": {
"created": "2013-12-20 13:00:00",
"last_edit": "2013-12-20 13:00:00",
"precision": 23.8
},
"geometry": {
"type": "Point",
"coordinates": [100.1, 200.2]
}
}
}
]
200 OK   clienttestuser 1 Zmeny bodĹŻ ve vrstve - UPDATE
221 Sync Read GET /sync/events [
"/layer/clienttestuser/trees_in_brno_123456"
]
[
{
"uri": "/layer/clienttestuser/trees_in_brno_123456/feature/123",
"method": "delete"
}
]
200 OK   clienttestuser 1 Zmeny bodĹŻ ve vrstve - DELETE
222 Sync Read GET /sync/events [
"/layer/clienttestuser/trees_in_brno_123456"
]
[
{
"uri": "/layer/clienttestuser/trees_in_brno_123456/feature",
"method": "insert",
"data": {
"type": "Feature",
"id": 1,
"hash": "2013-12-20 13:00:00",
"properties": {
"created": "2013-12-20 13:00:00",
"last_edit": "2013-12-20 13:00:00",
"precision": 23.8
},
"geometry": {
"type": "Point",
"coordinates": [
100.1,
200.2
]
}
}
},
{
"uri": "/layer/clienttestuser/trees_in_brno_123456/attibute/feature/1",
"method": "update",
"data": {
"type": "Feature",
"hash": "2013-12-20 13:00:00",
"properties": {
"created": "2013-12-20 13:00:00",
"last_edit": "2013-12-20 13:00:00",
"precision": 23.8
},
"geometry": {
"type": "Point",
"coordinates": [
100.1,
200.2
]
}
}
},
{
"uri": "/layer/clienttestuser/trees_in_brno_123456/feature/1",
"method": "delete"
}
]
200 OK
}
clienttestuser 1 Zmeny bodĹŻ ve vrstve - INSERT, UPDATE, DELETE
224 Sync Read GET /sync/events [
"/layer/clienttestuser/trees_in_brno_123456"
]
[
{
"uri": "/layer/clienttestuser/trees_in_brno_123456/feature/1/attribute",
"method": "insert",
"data": {
"type": "Attribute",
"hash": "2013-12-20 13:00:00",
"name": "",
"value": 15.5
}
}
]
200 OK
}
clienttestuser 1 Zmeny hodnot feature atributĹŻ - INSERT
225 Sync Read GET /sync/events [
"/layer/clienttestuser/trees_in_brno_123456"
]
[
{
"uri": "/layer/clienttestuser/trees_in_brno_123456/attibute/feature/1/attibute/height",
"method": "update",
"data": {
"type": "Attribute",
"hash": "2013-12-20 13:00:00",
"value": 15.5
}
}
]
200 OK
}
clienttestuser 1 Zmeny hodnot feature atributĹŻ - UPDATE
226 Sync Read GET /sync/events [
"/layer/clienttestuser/trees_in_brno_123456"
]
[
{
"uri": "/layer/clienttestuser/trees_in_brno_123456/feature/1/attibute/height",
"method": "delete"
}
]
200 OK   clienttestuser 1 Zmeny hodnot feature atributĹŻ - DELETE
227 Sync Read GET /sync/events [
"/layer/clienttestuser/trees_in_brno_123456"
]
[
{
"uri": "/layer/clienttestuser/trees_in_brno_123456/feature/1/attribute",
"method": "insert",
"data": {
"type": "Attribute",
"hash": "2013-12-20 13:00:00",
"name": "",
"value": 15.5
}
},
{
"uri": "/layer/clienttestuser/trees_in_brno_123456/attribute/feature/1/attribute/height",
"method": "update",
"data": {
"type": "Attribute",
"hash": "2013-12-20 13:00:00",
"value": 15.5
}
},
{
"uri": "/layer/clienttestuser/trees_in_brno_123456/feature/1/attribute/height",
"method": "delete"
}
]
200 OK
}
clienttestuser 1 Zmeny hodnot feature atributĹŻ - INSERT, UPDATE, DELETE
228 Sync Read GET /sync/events [
"/layer/clienttestuser/trees_in_brno_123456"
]
[
{
"uri": "/layer/clienttestuser/trees_in_brno_123456/attribute/feature/1/attribute/height",
"method": "update",
"data": {
"type": "Attribute",
"hash": "2013-12-20 13:00:00",
"value": 15.5
}
},
{
"uri": "/layer/clienttestuser/trees_in_brno_123456/feature/1/attribute/height",
"method": "delete"
}
]
200 OK   clienttestuser 1 Test na funcnost kontroly jiz odeslanych zaznamĹŻ - jako test 227, ale neodešle se insert. Vrati update a delete.
229 Sync Read GET /sync/events [
"/layer/clienttestuser/trees_in_brno_123456"
]
[] 200 OK
}
clienttestuser 1 Všechny eventy byly zarizeni jiz odeslany. Vrati [].
230 Sync Read GET /sync/events [
"/layer/clienttestuser/trees_in_brno_123456"
]
[
{
"uri": "/layer/clienttestuser/trees_in_brno_123456/attribute/feature/1/attribute/height",
"method": "update",
"data": {
"type": "Attribute",
"hash": "2013-12-20 13:00:00",
"value": 15.5
}
},
{
"uri": "/layer/clienttestuser/trees_in_brno_123456/feature/1/attribute/height",
"method": "delete"
}
]
200 OK   clienttestuser 1 Vystup jako test 228. Testuje spravny vyber eventĹŻ pouze pro dane zarizeni.
231 Sync Read GET /sync/events [
"/layer/clienttestuser/trees_in_brno_123456"
]
  460 Device ID Lost   clienttestuser 999 Test na pozadavek s neexistujicim device ID.
250 Sync Read GET /sync/begin   {
"device_id": "random value",
"layers": [
{
"attributes": [
{
"hash": "random value",
"kind": "text",
"name": "random value",
"title": "Date"
},
{
"hash": "random value",
"kind": "text",
"name": "random value",
"title": "E-mail"
},
{
"hash": "random value",
"kind": "text",
"name": "random value",
"title": "Name"
},
{
"hash": "random value",
"kind": "text",
"name": "random value",
"title": "Phone"
},
{
"hash": "random value",
"kind": "text",
"name": "random value",
"title": "Scheme"
},
{
"hash": "random value",
"kind": "integer",
"name": "random value",
"title": "State"
}
],
"features": [],
"hash": "random value",
"name": "random value",
"owner": "admin",
"properties": {
"created": "random value",
"description": "Layer for sharing of device position",
"kind": "point",
"last_edit": "random value",
"public": true,
"title": "Mobile devices tracker"
},
"scheme": "shared",
"type": "Layer"
},
{
"attributes": [
{
"hash": "random value",
"kind": "double precision",
"name": "random value",
"title": "Vyska"
},
{
"hash": "random value",
"kind": "double precision",
"name": "random value",
"title": "Sirka"
}
],
"features": [
{
"attributes": [
{
"hash": "random value",
"name": "random value",
"value": "15.5"
},
{
"hash": "random value",
"name": "random value",
"value": ""
}
],
"geometry": {
"coordinates": [
10.15,
4.2
],
"type": "Point"
},
"hash": "random value",
"id": 1,
"properties": {
"created": "random value",
"has_picture": 0,
"last_edit": "random value",
"precision": 23.8
},
"type": "Feature"
},
{
"attributes": [
{
"hash": "random value",
"name": "random value",
"value": "15.5"
},
{
"hash": "random value",
"name": "random value",
"value": "2.1"
}
],
"geometry": {
"coordinates": [
100.1,
200.2
],
"type": "Point"
},
"hash": "random value",
"id": 2,
"properties": {
"created": "random value",
"has_picture": 0,
"last_edit": "random value",
"precision": 23.8
},
"type": "Feature"
}
],
"hash": "random value",
"name": "random value",
"owner": "clienttestuser",
"properties": {
"created": "random value",
"description": "Stromy v campusu MENDELU",
"kind": "point",
"last_edit": "random value",
"public": false,
"title": "Stromy v Brn\u011b"
},
"scheme": "clienttestuser",
"type": "Layer"
},
{
"attributes": [
{
"hash": "random value",
"kind": "double precision",
"name": "random value",
"title": "Vyska"
},
{
"hash": "random value",
"kind": "double precision",
"name": "random value",
"title": "Sirka"
}
],
"features": [
{
"attributes": [
{
"hash": "random value",
"name": "random value",
"value": "15.5"
},
{
"hash": "random value",
"name": "random value",
"value": ""
}
],
"geometry": {
"coordinates": [
10.15,
4.2
],
"type": "Point"
},
"hash": "random value",
"id": 1,
"properties": {
"created": "random value",
"has_picture": 0,
"last_edit": "random value",
"precision": 23.8
},
"type": "Feature"
},
{
"attributes": [
{
"hash": "random value",
"name": "random value",
"value": "15.5"
},
{
"hash": "random value",
"name": "random value",
"value": "2.1"
}
],
"geometry": {
"coordinates": [
100.1,
200.2
],
"type": "Point"
},
"hash": "random value",
"id": 2,
"properties": {
"created": "random value",
"has_picture": 0,
"last_edit": "random value",
"precision": 23.8
},
"type": "Feature"
}
],
"hash": "random value",
"name": "random value",
"owner": "clienttestuser",
"properties": {
"created": "random value",
"description": "Stromy v campusu MENDELU public",
"kind": "point",
"last_edit": "random value",
"public": true,
"title": "Stromy v Brn\u011b public"
},
"scheme": "shared",
"type": "Layer"
}
],
"projects": [
{
"hash": "random value",
"layers": [
{
"hash": "random value",
"layer": {
"hash": "random value",
"name": "random value",
"properties": {
"created": "random value",
"description": "Stromy v campusu MENDELU",
"kind": "point",
"last_edit": "random value",
"public": false,
"title": "Stromy v Brn\u011b"
},
"scheme": "clienttestuser",
"type": "Layer"
},
"properties": {
"color": "FFFFFF",
"order": 1,
"symbology": "nazev",
"transparency": 50,
"visibility": true,
"zoom_threshold": 20
},
"type": "LayerInProject"
},
{
"hash": "random value",
"layer": {
"hash": "random value",
"name": "random value",
"properties": {
"created": "random value",
"description": "Stromy v campusu MENDELU public",
"kind": "point",
"last_edit": "random value",
"public": true,
"title": "Stromy v Brn\u011b public"
},
"scheme": "shared",
"type": "Layer"
},
"properties": {
"color": "FFFFFF",
"order": 1,
"symbology": "nazev",
"transparency": 50,
"visibility": true,
"zoom_threshold": 20
},
"type": "LayerInProject"
}
],
"name": "random value",
"properties": {
"description": "This project contains ...",
"last_latitude": 1.1,
"last_longitude": 1.2,
"last_zoom_level": 1.3,
"public": false,
"title": "Mereni v Brne"
},
"scheme": "clienttestuser",
"type": "Project"
}
],
"user": {
"email": "ctu@mendelu.cz",
"name": "random value",
"phone": ""
}
}
200 OK   clienttestuser   Test na sync/begin:
1) generovani docasneho ID zarizeni
2) vrati full sync pro dane schema
251 Sync Read GET /sync/begin   {
"device_id": "random value",
"layers": [
{
"attributes": [
{
"hash": "random value",
"kind": "text",
"name": "random value",
"title": "Date"
},
{
"hash": "random value",
"kind": "text",
"name": "random value",
"title": "E-mail"
},
{
"hash": "random value",
"kind": "text",
"name": "random value",
"title": "Name"
},
{
"hash": "random value",
"kind": "text",
"name": "random value",
"title": "Phone"
},
{
"hash": "random value",
"kind": "text",
"name": "random value",
"title": "Scheme"
},
{
"hash": "random value",
"kind": "integer",
"name": "random value",
"title": "State"
}
],
"features": [],
"hash": "random value",
"name": "random value",
"owner": "admin",
"properties": {
"created": "random value",
"description": "Layer for sharing of device position",
"kind": "point",
"last_edit": "random value",
"public": true,
"title": "Mobile devices tracker"
},
"scheme": "shared",
"type": "Layer"
}
],
"projects": [],
"user": {
"email": "ctu@mendelu.cz",
"name": "random value",
"phone": ""
}
}
200 OK   clienttestuser 1 Test na sync/begin s prazdnou db
252 Sync Read GET /sync/events   [] 200 OK   clienttestuser 1 Test navazani komunikace pro klienta
253 User Read GET /user/clienttestuser   {"name": "Client test user", "email": "ctu@mendelu.cz", "phone": ""} 200 OK   clienttestuser 1 Ziskani informaci o uzivateli.
254 User Read GET /user/not-existing-user     404 Not Found   clienttestuser 1 Ziskani informaci o neexistujicim uzivateli.

(135 rows)