Skip to content

Commit

Permalink
Part of #1885. Add WFS-T insert and transaction. (#1886)
Browse files Browse the repository at this point in the history
- Implemented insert and transaction
- Moved and tested GML generation stuff from filterutils
- Added WFS utilities to generate XML for GML features
  • Loading branch information
offtherailz authored May 29, 2017
1 parent 897288c commit 5ac7612
Show file tree
Hide file tree
Showing 17 changed files with 744 additions and 150 deletions.
1 change: 1 addition & 0 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,7 @@
"istanbul-instrumenter-loader": "2.0.0",
"jsdoc": "3.4.3",
"jsdoc-jsx": "0.1.0",
"json-loader": "0.5.4",
"karma": "1.5.0",
"karma-chrome-launcher": "2.0.0",
"karma-cli": "1.0.1",
Expand Down
44 changes: 44 additions & 0 deletions web/client/test-resources/wfs/describe-pois.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
{
"elementFormDefault":"qualified",
"targetNamespace":"http://www.census.gov",
"targetPrefix":"tiger",
"featureTypes":[
{
"typeName":"poi",
"properties":[
{
"name":"the_geom",
"maxOccurs":1,
"minOccurs":0,
"nillable":true,
"type":"gml:Point",
"localType":"Point"
},
{
"name":"NAME",
"maxOccurs":1,
"minOccurs":0,
"nillable":true,
"type":"xsd:string",
"localType":"string"
},
{
"name":"THUMBNAIL",
"maxOccurs":1,
"minOccurs":0,
"nillable":true,
"type":"xsd:string",
"localType":"string"
},
{
"name":"MAINPAGE",
"maxOccurs":1,
"minOccurs":0,
"nillable":true,
"type":"xsd:string",
"localType":"string"
}
]
}
]
}
196 changes: 196 additions & 0 deletions web/client/test-resources/wfs/describe-states.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,196 @@
{
"elementFormDefault":"qualified",
"targetNamespace":"http://www.openplans.org/topp",
"targetPrefix":"topp",
"featureTypes":[
{
"typeName":"states",
"properties":[
{
"name":"the_geom",
"maxOccurs":1,
"minOccurs":0,
"nillable":true,
"type":"gml:MultiPolygon",
"localType":"MultiPolygon"
},
{
"name":"STATE_NAME",
"maxOccurs":1,
"minOccurs":0,
"nillable":true,
"type":"xsd:string",
"localType":"string"
},
{
"name":"STATE_FIPS",
"maxOccurs":1,
"minOccurs":0,
"nillable":true,
"type":"xsd:string",
"localType":"string"
},
{
"name":"SUB_REGION",
"maxOccurs":1,
"minOccurs":0,
"nillable":true,
"type":"xsd:string",
"localType":"string"
},
{
"name":"STATE_ABBR",
"maxOccurs":1,
"minOccurs":0,
"nillable":true,
"type":"xsd:string",
"localType":"string"
},
{
"name":"LAND_KM",
"maxOccurs":1,
"minOccurs":0,
"nillable":true,
"type":"xsd:number",
"localType":"number"
},
{
"name":"WATER_KM",
"maxOccurs":1,
"minOccurs":0,
"nillable":true,
"type":"xsd:number",
"localType":"number"
},
{
"name":"PERSONS",
"maxOccurs":1,
"minOccurs":0,
"nillable":true,
"type":"xsd:number",
"localType":"number"
},
{
"name":"FAMILIES",
"maxOccurs":1,
"minOccurs":0,
"nillable":true,
"type":"xsd:number",
"localType":"number"
},
{
"name":"HOUSHOLD",
"maxOccurs":1,
"minOccurs":0,
"nillable":true,
"type":"xsd:number",
"localType":"number"
},
{
"name":"MALE",
"maxOccurs":1,
"minOccurs":0,
"nillable":true,
"type":"xsd:number",
"localType":"number"
},
{
"name":"FEMALE",
"maxOccurs":1,
"minOccurs":0,
"nillable":true,
"type":"xsd:number",
"localType":"number"
},
{
"name":"WORKERS",
"maxOccurs":1,
"minOccurs":0,
"nillable":true,
"type":"xsd:number",
"localType":"number"
},
{
"name":"DRVALONE",
"maxOccurs":1,
"minOccurs":0,
"nillable":true,
"type":"xsd:number",
"localType":"number"
},
{
"name":"CARPOOL",
"maxOccurs":1,
"minOccurs":0,
"nillable":true,
"type":"xsd:number",
"localType":"number"
},
{
"name":"PUBTRANS",
"maxOccurs":1,
"minOccurs":0,
"nillable":true,
"type":"xsd:number",
"localType":"number"
},
{
"name":"EMPLOYED",
"maxOccurs":1,
"minOccurs":0,
"nillable":true,
"type":"xsd:number",
"localType":"number"
},
{
"name":"UNEMPLOY",
"maxOccurs":1,
"minOccurs":0,
"nillable":true,
"type":"xsd:number",
"localType":"number"
},
{
"name":"SERVICE",
"maxOccurs":1,
"minOccurs":0,
"nillable":true,
"type":"xsd:number",
"localType":"number"
},
{
"name":"MANUAL",
"maxOccurs":1,
"minOccurs":0,
"nillable":true,
"type":"xsd:number",
"localType":"number"
},
{
"name":"P_MALE",
"maxOccurs":1,
"minOccurs":0,
"nillable":true,
"type":"xsd:number",
"localType":"number"
},
{
"name":"P_FEMALE",
"maxOccurs":1,
"minOccurs":0,
"nillable":true,
"type":"xsd:number",
"localType":"number"
},
{
"name":"SAMP_POP",
"maxOccurs":1,
"minOccurs":0,
"nillable":true,
"type":"xsd:number",
"localType":"number"
}
]
}
]
}
29 changes: 29 additions & 0 deletions web/client/test-resources/wfs/museam.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
{
"type":"FeatureCollection",
"totalFeatures":6,
"features":[
{
"type":"Feature",
"id":"poi.1",
"geometry":{
"type":"Point",
"coordinates":[
-74.0104611,
40.70758763
]
},
"geometry_name":"the_geom",
"properties":{
"NAME":"museam",
"THUMBNAIL":"pics/22037827-Ti.jpg",
"MAINPAGE":"pics/22037827-L.jpg"
}
}
],
"crs":{
"type":"name",
"properties":{
"name":"urn:ogc:def:crs:EPSG::4326"
}
}
}
1 change: 1 addition & 0 deletions web/client/test-resources/wfst/insert/Wyoming_1_1_0.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
<wfs:Transaction service="WFS" version="1.1.0" xmlns:wfs="http://www.opengis.net/wfs" xmlns:gml="http://www.opengis.net/gml" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.opengis.net/wfs http://schemas.opengis.net/wfs/1.1.0/WFS-transaction.xsd" xmlns:topp="http://www.openplans.org/topp"><wfs:Insert><topp:states><topp:STATE_NAME>Wyoming</topp:STATE_NAME><topp:STATE_FIPS>56</topp:STATE_FIPS><topp:SUB_REGION>Mtn</topp:SUB_REGION><topp:STATE_ABBR>WY</topp:STATE_ABBR><topp:LAND_KM>251500.801</topp:LAND_KM><topp:WATER_KM>1848.149</topp:WATER_KM><topp:PERSONS>453588</topp:PERSONS><topp:FAMILIES>119825</topp:FAMILIES><topp:HOUSHOLD>168839</topp:HOUSHOLD><topp:MALE>227007</topp:MALE><topp:FEMALE>226581</topp:FEMALE><topp:WORKERS>164561</topp:WORKERS><topp:DRVALONE>153679</topp:DRVALONE><topp:CARPOOL>28109</topp:CARPOOL><topp:PUBTRANS>2963</topp:PUBTRANS><topp:EMPLOYED>207868</topp:EMPLOYED><topp:UNEMPLOY>13112</topp:UNEMPLOY><topp:SERVICE>71419</topp:SERVICE><topp:MANUAL>29157</topp:MANUAL><topp:P_MALE>0.5</topp:P_MALE><topp:P_FEMALE>0.5</topp:P_FEMALE><topp:SAMP_POP>83202</topp:SAMP_POP><topp:the_geom><gml:MultiPolygon srsName="EPSG:4326"><gml:polygonMember><gml:Polygon srsName="EPSG:4326"><gml:exterior><gml:LinearRing><gml:posList>-104.053108 41.698246 -104.054993 41.564247 -104.053505 41.388107 -104.051201 41.003227 -104.933968 40.994305 -105.278259 40.996365 -106.202896 41.000111 -106.328545 41.001316 -106.864838 40.998489 -107.303436 41.000168 -107.918037 41.00341 -109.047638 40.998474 -110.001457 40.997646 -110.062477 40.99794 -111.050285 40.996635 -111.050911 41.25848 -111.050323 41.578648 -111.047951 41.996265 -111.046028 42.503323 -111.048447 43.019962 -111.04673 43.284813 -111.045998 43.515606 -111.049629 43.982632 -111.050789 44.473396 -111.050842 44.664562 -111.05265 44.995766 -110.428894 44.992348 -110.392006 44.998688 -109.994789 45.002853 -109.798653 44.99958 -108.624573 44.997643 -108.258568 45.00016 -107.893715 44.999813 -106.258644 44.996174 -106.020576 44.997227 -105.084465 44.999832 -105.04126 45.001091 -104.059349 44.997349 -104.058975 44.574368 -104.060547 44.181843 -104.059242 44.145844 -104.05899 43.852928 -104.057426 43.503738 -104.05867 43.47916 -104.05571 43.003094 -104.055725 42.614704 -104.053009 41.999851 -104.053108 41.698246</gml:posList></gml:LinearRing></gml:exterior></gml:Polygon></gml:polygonMember></gml:MultiPolygon></topp:the_geom></topp:states></wfs:Insert></wfs:Transaction>
1 change: 1 addition & 0 deletions web/client/test-resources/wfst/insert/museam_1_1_0.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
<wfs:Transaction service="WFS" version="1.1.0" xmlns:wfs="http://www.opengis.net/wfs" xmlns:gml="http://www.opengis.net/gml" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.opengis.net/wfs http://schemas.opengis.net/wfs/1.1.0/WFS-transaction.xsd" xmlns:tiger="http://www.census.gov"><wfs:Insert><tiger:poi><tiger:NAME>museam</tiger:NAME><tiger:THUMBNAIL>pics/22037827-Ti.jpg</tiger:THUMBNAIL><tiger:MAINPAGE>pics/22037827-L.jpg</tiger:MAINPAGE><tiger:the_geom><gml:Point srsDimension="2" srsName="EPSG:4326"><gml:pos>-74.0104611 40.70758763</gml:pos></gml:Point></tiger:the_geom></tiger:poi></wfs:Insert></wfs:Transaction>
Loading

0 comments on commit 5ac7612

Please sign in to comment.