geoserver-node-client 1.1.0 → 1.2.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +17 -12
- package/dist/geoserver-rest-client.js +5 -0
- package/dist/package.json +2 -2
- package/dist/src/datastore.js +113 -46
- package/dist/src/imagemosaic.js +1 -1
- package/dist/src/layer.js +344 -120
- package/dist/src/reset-reload.js +160 -0
- package/geoserver-rest-client.js +3 -0
- package/package.json +2 -2
- package/src/datastore.js +35 -0
- package/src/imagemosaic.js +1 -1
- package/src/layer.js +98 -0
- package/src/reset-reload.js +70 -0
package/README.md
CHANGED
|
@@ -1,8 +1,13 @@
|
|
|
1
1
|
# GeoServer Node Client
|
|
2
2
|
|
|
3
3
|
[](https://www.npmjs.com/package/geoserver-node-client)
|
|
4
|
+
[](https://meggsimum.github.io/geoserver-node-client)
|
|
5
|
+

|
|
6
|
+

|
|
4
7
|

|
|
5
8
|
|
|
9
|
+

|
|
10
|
+
|
|
6
11
|
Node.js / JavaScript Client for the [GeoServer REST API](https://docs.geoserver.org/stable/en/user/rest/).
|
|
7
12
|
|
|
8
13
|
### API-Docs ###
|
|
@@ -28,17 +33,18 @@ npm i geoserver-node-client
|
|
|
28
33
|
|
|
29
34
|
usage with require (ES5):
|
|
30
35
|
```js
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
36
|
+
var grcImport = require('geoserver-node-client');
|
|
37
|
+
var GeoServerRestClient = grcImport.GeoServerRestClient;
|
|
38
|
+
|
|
39
|
+
var url = 'http://localhost:8080/geoserver/rest/';
|
|
40
|
+
var user = 'admin';
|
|
41
|
+
var pw = 'geoserver';
|
|
42
|
+
var grc = new GeoServerRestClient(url, user, pw);
|
|
43
|
+
|
|
44
|
+
function main () {
|
|
45
|
+
grc.about.exists().then(function (result) {
|
|
46
|
+
console.log(result);
|
|
47
|
+
});
|
|
42
48
|
};
|
|
43
49
|
|
|
44
50
|
main();
|
|
@@ -105,7 +111,6 @@ First start a GeoServer, e.g. by using this Docker container:
|
|
|
105
111
|
```shell
|
|
106
112
|
docker run \
|
|
107
113
|
-p 8080:8080 \
|
|
108
|
-
-v /path/to/geoserver_mnt:/opt/geoserver_data \
|
|
109
114
|
meggsimum/geoserver:2.20.4
|
|
110
115
|
```
|
|
111
116
|
|
|
@@ -35,6 +35,8 @@ var _namespace = _interopRequireDefault(require("./src/namespace.js"));
|
|
|
35
35
|
|
|
36
36
|
var _about = _interopRequireDefault(require("./src/about.js"));
|
|
37
37
|
|
|
38
|
+
var _resetReload = _interopRequireDefault(require("./src/reset-reload.js"));
|
|
39
|
+
|
|
38
40
|
var _geoserver = require("./src/util/geoserver.js");
|
|
39
41
|
|
|
40
42
|
/**
|
|
@@ -83,5 +85,8 @@ function GeoServerRestClient(url, user, password) {
|
|
|
83
85
|
/** @member {AboutClient} about GeoServer REST client instance for about endpoint */
|
|
84
86
|
|
|
85
87
|
this.about = new _about["default"](this.url, this.auth);
|
|
88
|
+
/** @member {ResetReloadClient} about GeoServer REST client instance for reset/reload endpoints */
|
|
89
|
+
|
|
90
|
+
this.resetReload = new _resetReload["default"](this.url, this.auth);
|
|
86
91
|
});
|
|
87
92
|
exports.GeoServerRestClient = GeoServerRestClient;
|
package/dist/package.json
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "geoserver-node-client",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.2.2",
|
|
4
4
|
"description": "Node.js client for GeoServer REST API",
|
|
5
5
|
"type": "commonjs",
|
|
6
6
|
"main": "geoserver-rest-client.js",
|
|
7
7
|
"scripts": {
|
|
8
8
|
"demo": "node demo/index.js",
|
|
9
|
-
"docs": "./node_modules/.bin/jsdoc geoserver-rest-client.js src/*.js DOCS_HOME.md",
|
|
9
|
+
"docs": "./node_modules/.bin/jsdoc geoserver-rest-client.js src/*.js DOCS_HOME.md && cp img/*.png out/",
|
|
10
10
|
"lint": "eslint src/**/*.js test/**/*.js scripts/**/*.js geoserver-rest-client.js",
|
|
11
11
|
"lint-fix": "eslint --fix src/**/*.js test/**/*.js scripts/**/*.js geoserver-rest-client.js",
|
|
12
12
|
"pretest": "npm run lint",
|
package/dist/src/datastore.js
CHANGED
|
@@ -762,6 +762,73 @@ var DatastoreClient = /*#__PURE__*/function () {
|
|
|
762
762
|
|
|
763
763
|
return createWmsStore;
|
|
764
764
|
}()
|
|
765
|
+
/**
|
|
766
|
+
* Creates a WMTS based data store.
|
|
767
|
+
*
|
|
768
|
+
* @param {String} workspace The WS to create the data store in
|
|
769
|
+
* @param {String} dataStore The data store name
|
|
770
|
+
* @param {String} wmtsCapabilitiesUrl Base WMTS capabilities URL
|
|
771
|
+
*
|
|
772
|
+
* @throws Error if request fails
|
|
773
|
+
*/
|
|
774
|
+
|
|
775
|
+
}, {
|
|
776
|
+
key: "createWmtsStore",
|
|
777
|
+
value: function () {
|
|
778
|
+
var _createWmtsStore = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee15(workspace, dataStore, wmtsCapabilitiesUrl) {
|
|
779
|
+
var body, url, response, geoServerResponse;
|
|
780
|
+
return _regenerator["default"].wrap(function _callee15$(_context15) {
|
|
781
|
+
while (1) {
|
|
782
|
+
switch (_context15.prev = _context15.next) {
|
|
783
|
+
case 0:
|
|
784
|
+
body = {
|
|
785
|
+
wmtsStore: {
|
|
786
|
+
name: dataStore,
|
|
787
|
+
type: 'WMTS',
|
|
788
|
+
capabilitiesURL: wmtsCapabilitiesUrl
|
|
789
|
+
}
|
|
790
|
+
};
|
|
791
|
+
url = this.url + 'workspaces/' + workspace + '/wmtsstores';
|
|
792
|
+
_context15.next = 4;
|
|
793
|
+
return (0, _nodeFetch["default"])(url, {
|
|
794
|
+
credentials: 'include',
|
|
795
|
+
method: 'POST',
|
|
796
|
+
headers: {
|
|
797
|
+
Authorization: this.auth,
|
|
798
|
+
'Content-Type': 'application/json'
|
|
799
|
+
},
|
|
800
|
+
body: JSON.stringify(body)
|
|
801
|
+
});
|
|
802
|
+
|
|
803
|
+
case 4:
|
|
804
|
+
response = _context15.sent;
|
|
805
|
+
|
|
806
|
+
if (response.ok) {
|
|
807
|
+
_context15.next = 10;
|
|
808
|
+
break;
|
|
809
|
+
}
|
|
810
|
+
|
|
811
|
+
_context15.next = 8;
|
|
812
|
+
return (0, _geoserver.getGeoServerResponseText)(response);
|
|
813
|
+
|
|
814
|
+
case 8:
|
|
815
|
+
geoServerResponse = _context15.sent;
|
|
816
|
+
throw new _geoserver.GeoServerResponseError(null, geoServerResponse);
|
|
817
|
+
|
|
818
|
+
case 10:
|
|
819
|
+
case "end":
|
|
820
|
+
return _context15.stop();
|
|
821
|
+
}
|
|
822
|
+
}
|
|
823
|
+
}, _callee15, this);
|
|
824
|
+
}));
|
|
825
|
+
|
|
826
|
+
function createWmtsStore(_x39, _x40, _x41) {
|
|
827
|
+
return _createWmtsStore.apply(this, arguments);
|
|
828
|
+
}
|
|
829
|
+
|
|
830
|
+
return createWmtsStore;
|
|
831
|
+
}()
|
|
765
832
|
/**
|
|
766
833
|
* Creates a WFS based data store.
|
|
767
834
|
*
|
|
@@ -777,11 +844,11 @@ var DatastoreClient = /*#__PURE__*/function () {
|
|
|
777
844
|
}, {
|
|
778
845
|
key: "createWfsStore",
|
|
779
846
|
value: function () {
|
|
780
|
-
var _createWfsStore = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function
|
|
847
|
+
var _createWfsStore = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee16(workspace, dataStore, wfsCapabilitiesUrl, namespaceUrl, useHttpConnectionPooling) {
|
|
781
848
|
var body, url, response, geoServerResponse;
|
|
782
|
-
return _regenerator["default"].wrap(function
|
|
849
|
+
return _regenerator["default"].wrap(function _callee16$(_context16) {
|
|
783
850
|
while (1) {
|
|
784
|
-
switch (
|
|
851
|
+
switch (_context16.prev = _context16.next) {
|
|
785
852
|
case 0:
|
|
786
853
|
body = {
|
|
787
854
|
dataStore: {
|
|
@@ -802,7 +869,7 @@ var DatastoreClient = /*#__PURE__*/function () {
|
|
|
802
869
|
}
|
|
803
870
|
};
|
|
804
871
|
url = this.url + 'workspaces/' + workspace + '/datastores';
|
|
805
|
-
|
|
872
|
+
_context16.next = 4;
|
|
806
873
|
return (0, _nodeFetch["default"])(url, {
|
|
807
874
|
credentials: 'include',
|
|
808
875
|
method: 'POST',
|
|
@@ -814,29 +881,29 @@ var DatastoreClient = /*#__PURE__*/function () {
|
|
|
814
881
|
});
|
|
815
882
|
|
|
816
883
|
case 4:
|
|
817
|
-
response =
|
|
884
|
+
response = _context16.sent;
|
|
818
885
|
|
|
819
886
|
if (response.ok) {
|
|
820
|
-
|
|
887
|
+
_context16.next = 10;
|
|
821
888
|
break;
|
|
822
889
|
}
|
|
823
890
|
|
|
824
|
-
|
|
891
|
+
_context16.next = 8;
|
|
825
892
|
return (0, _geoserver.getGeoServerResponseText)(response);
|
|
826
893
|
|
|
827
894
|
case 8:
|
|
828
|
-
geoServerResponse =
|
|
895
|
+
geoServerResponse = _context16.sent;
|
|
829
896
|
throw new _geoserver.GeoServerResponseError(null, geoServerResponse);
|
|
830
897
|
|
|
831
898
|
case 10:
|
|
832
899
|
case "end":
|
|
833
|
-
return
|
|
900
|
+
return _context16.stop();
|
|
834
901
|
}
|
|
835
902
|
}
|
|
836
|
-
},
|
|
903
|
+
}, _callee16, this);
|
|
837
904
|
}));
|
|
838
905
|
|
|
839
|
-
function createWfsStore(
|
|
906
|
+
function createWfsStore(_x42, _x43, _x44, _x45, _x46) {
|
|
840
907
|
return _createWfsStore.apply(this, arguments);
|
|
841
908
|
}
|
|
842
909
|
|
|
@@ -855,15 +922,15 @@ var DatastoreClient = /*#__PURE__*/function () {
|
|
|
855
922
|
}, {
|
|
856
923
|
key: "deleteDataStore",
|
|
857
924
|
value: function () {
|
|
858
|
-
var _deleteDataStore = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function
|
|
925
|
+
var _deleteDataStore = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee17(workspace, dataStore, recurse) {
|
|
859
926
|
var url, response, geoServerResponse;
|
|
860
|
-
return _regenerator["default"].wrap(function
|
|
927
|
+
return _regenerator["default"].wrap(function _callee17$(_context17) {
|
|
861
928
|
while (1) {
|
|
862
|
-
switch (
|
|
929
|
+
switch (_context17.prev = _context17.next) {
|
|
863
930
|
case 0:
|
|
864
931
|
url = this.url + 'workspaces/' + workspace + '/datastores/' + dataStore;
|
|
865
932
|
url += '?recurse=' + recurse;
|
|
866
|
-
|
|
933
|
+
_context17.next = 4;
|
|
867
934
|
return (0, _nodeFetch["default"])(url, {
|
|
868
935
|
credentials: 'include',
|
|
869
936
|
method: 'DELETE',
|
|
@@ -873,29 +940,29 @@ var DatastoreClient = /*#__PURE__*/function () {
|
|
|
873
940
|
});
|
|
874
941
|
|
|
875
942
|
case 4:
|
|
876
|
-
response =
|
|
943
|
+
response = _context17.sent;
|
|
877
944
|
|
|
878
945
|
if (response.ok) {
|
|
879
|
-
|
|
946
|
+
_context17.next = 10;
|
|
880
947
|
break;
|
|
881
948
|
}
|
|
882
949
|
|
|
883
|
-
|
|
950
|
+
_context17.next = 8;
|
|
884
951
|
return (0, _geoserver.getGeoServerResponseText)(response);
|
|
885
952
|
|
|
886
953
|
case 8:
|
|
887
|
-
geoServerResponse =
|
|
954
|
+
geoServerResponse = _context17.sent;
|
|
888
955
|
throw new _geoserver.GeoServerResponseError(null, geoServerResponse);
|
|
889
956
|
|
|
890
957
|
case 10:
|
|
891
958
|
case "end":
|
|
892
|
-
return
|
|
959
|
+
return _context17.stop();
|
|
893
960
|
}
|
|
894
961
|
}
|
|
895
|
-
},
|
|
962
|
+
}, _callee17, this);
|
|
896
963
|
}));
|
|
897
964
|
|
|
898
|
-
function deleteDataStore(
|
|
965
|
+
function deleteDataStore(_x47, _x48, _x49) {
|
|
899
966
|
return _deleteDataStore.apply(this, arguments);
|
|
900
967
|
}
|
|
901
968
|
|
|
@@ -914,15 +981,15 @@ var DatastoreClient = /*#__PURE__*/function () {
|
|
|
914
981
|
}, {
|
|
915
982
|
key: "deleteCoverageStore",
|
|
916
983
|
value: function () {
|
|
917
|
-
var _deleteCoverageStore = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function
|
|
984
|
+
var _deleteCoverageStore = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee18(workspace, coverageStore, recurse) {
|
|
918
985
|
var url, response, geoServerResponse;
|
|
919
|
-
return _regenerator["default"].wrap(function
|
|
986
|
+
return _regenerator["default"].wrap(function _callee18$(_context18) {
|
|
920
987
|
while (1) {
|
|
921
|
-
switch (
|
|
988
|
+
switch (_context18.prev = _context18.next) {
|
|
922
989
|
case 0:
|
|
923
990
|
url = this.url + 'workspaces/' + workspace + '/coveragestores/' + coverageStore;
|
|
924
991
|
url += '?recurse=' + recurse;
|
|
925
|
-
|
|
992
|
+
_context18.next = 4;
|
|
926
993
|
return (0, _nodeFetch["default"])(url, {
|
|
927
994
|
credentials: 'include',
|
|
928
995
|
method: 'DELETE',
|
|
@@ -932,20 +999,20 @@ var DatastoreClient = /*#__PURE__*/function () {
|
|
|
932
999
|
});
|
|
933
1000
|
|
|
934
1001
|
case 4:
|
|
935
|
-
response =
|
|
1002
|
+
response = _context18.sent;
|
|
936
1003
|
|
|
937
1004
|
if (response.ok) {
|
|
938
|
-
|
|
1005
|
+
_context18.next = 14;
|
|
939
1006
|
break;
|
|
940
1007
|
}
|
|
941
1008
|
|
|
942
|
-
|
|
1009
|
+
_context18.next = 8;
|
|
943
1010
|
return (0, _geoserver.getGeoServerResponseText)(response);
|
|
944
1011
|
|
|
945
1012
|
case 8:
|
|
946
|
-
geoServerResponse =
|
|
947
|
-
|
|
948
|
-
|
|
1013
|
+
geoServerResponse = _context18.sent;
|
|
1014
|
+
_context18.t0 = response.status;
|
|
1015
|
+
_context18.next = _context18.t0 === 401 ? 12 : 13;
|
|
949
1016
|
break;
|
|
950
1017
|
|
|
951
1018
|
case 12:
|
|
@@ -956,13 +1023,13 @@ var DatastoreClient = /*#__PURE__*/function () {
|
|
|
956
1023
|
|
|
957
1024
|
case 14:
|
|
958
1025
|
case "end":
|
|
959
|
-
return
|
|
1026
|
+
return _context18.stop();
|
|
960
1027
|
}
|
|
961
1028
|
}
|
|
962
|
-
},
|
|
1029
|
+
}, _callee18, this);
|
|
963
1030
|
}));
|
|
964
1031
|
|
|
965
|
-
function deleteCoverageStore(
|
|
1032
|
+
function deleteCoverageStore(_x50, _x51, _x52) {
|
|
966
1033
|
return _deleteCoverageStore.apply(this, arguments);
|
|
967
1034
|
}
|
|
968
1035
|
|
|
@@ -981,11 +1048,11 @@ var DatastoreClient = /*#__PURE__*/function () {
|
|
|
981
1048
|
}, {
|
|
982
1049
|
key: "createGpkgStore",
|
|
983
1050
|
value: function () {
|
|
984
|
-
var _createGpkgStore = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function
|
|
1051
|
+
var _createGpkgStore = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee19(workspace, dataStore, gpkgPath) {
|
|
985
1052
|
var body, url, response, geoServerResponse;
|
|
986
|
-
return _regenerator["default"].wrap(function
|
|
1053
|
+
return _regenerator["default"].wrap(function _callee19$(_context19) {
|
|
987
1054
|
while (1) {
|
|
988
|
-
switch (
|
|
1055
|
+
switch (_context19.prev = _context19.next) {
|
|
989
1056
|
case 0:
|
|
990
1057
|
body = {
|
|
991
1058
|
dataStore: {
|
|
@@ -1003,7 +1070,7 @@ var DatastoreClient = /*#__PURE__*/function () {
|
|
|
1003
1070
|
}
|
|
1004
1071
|
};
|
|
1005
1072
|
url = this.url + 'workspaces/' + workspace + '/datastores';
|
|
1006
|
-
|
|
1073
|
+
_context19.next = 4;
|
|
1007
1074
|
return (0, _nodeFetch["default"])(url, {
|
|
1008
1075
|
credentials: 'include',
|
|
1009
1076
|
method: 'POST',
|
|
@@ -1015,29 +1082,29 @@ var DatastoreClient = /*#__PURE__*/function () {
|
|
|
1015
1082
|
});
|
|
1016
1083
|
|
|
1017
1084
|
case 4:
|
|
1018
|
-
response =
|
|
1085
|
+
response = _context19.sent;
|
|
1019
1086
|
|
|
1020
1087
|
if (response.ok) {
|
|
1021
|
-
|
|
1088
|
+
_context19.next = 10;
|
|
1022
1089
|
break;
|
|
1023
1090
|
}
|
|
1024
1091
|
|
|
1025
|
-
|
|
1092
|
+
_context19.next = 8;
|
|
1026
1093
|
return (0, _geoserver.getGeoServerResponseText)(response);
|
|
1027
1094
|
|
|
1028
1095
|
case 8:
|
|
1029
|
-
geoServerResponse =
|
|
1096
|
+
geoServerResponse = _context19.sent;
|
|
1030
1097
|
throw new _geoserver.GeoServerResponseError(null, geoServerResponse);
|
|
1031
1098
|
|
|
1032
1099
|
case 10:
|
|
1033
1100
|
case "end":
|
|
1034
|
-
return
|
|
1101
|
+
return _context19.stop();
|
|
1035
1102
|
}
|
|
1036
1103
|
}
|
|
1037
|
-
},
|
|
1104
|
+
}, _callee19, this);
|
|
1038
1105
|
}));
|
|
1039
1106
|
|
|
1040
|
-
function createGpkgStore(
|
|
1107
|
+
function createGpkgStore(_x53, _x54, _x55) {
|
|
1041
1108
|
return _createGpkgStore.apply(this, arguments);
|
|
1042
1109
|
}
|
|
1043
1110
|
|
package/dist/src/imagemosaic.js
CHANGED
|
@@ -41,7 +41,7 @@ var ImageMosaicClient = /*#__PURE__*/function () {
|
|
|
41
41
|
*
|
|
42
42
|
* @param {String} workspace Workspace of image mosaic
|
|
43
43
|
* @param {String} coverageStore CoverageStore of image mosaic
|
|
44
|
-
* @param {
|
|
44
|
+
* @param {String} coverage Name of image mosaic
|
|
45
45
|
*
|
|
46
46
|
* @throws Error if request fails
|
|
47
47
|
*
|