@@ -37,7 +37,7 @@ Requires:
3737
3838Example build command: ` mvn clean install `
3939
40- Additionally the docker image can be built from the [ staccato-main ] ( ./staccato-main ) package using the command:
40+ Additionally the docker image can be built from the [ staccato-application ] ( ./staccato-application ) package using the command:
4141` mvn dockerfile:build `
4242
4343### Running
@@ -50,15 +50,15 @@ An Elasticsearch instance must be available. To run locally in a docker contain
5050Any of the following methods are acceptable ways of running Staccato
5151- ` ./staccato-{version}.jar (self executing jar) `
5252- ` java -jar staccato-{version}.jar `
53- - ` mvn spring-boot:run ` (from the [ staccato-main ] ( ./staccato-main ) directory)
53+ - ` mvn spring-boot:run ` (from the [ staccato-application ] ( ./staccato-application ) directory)
5454- ` docker run -d -i -t -p:8080:8080 quay.io/boundlessgeo/staccato:{version} `
5555
5656## Endpoints
5757
5858### API Endpoints
5959
60- - GET /stac/ search - dynamic catalog endpoint
61- - GET /stac/ search/{id} - returns an item by ID
60+ - GET /search - dynamic catalog endpoint
61+ - GET /search/{id} - returns an item by ID
6262
6363### Collection Endpoints
6464
@@ -68,27 +68,27 @@ Any of the following methods are acceptable ways of running Staccato
6868
6969### Catalog Endpoints
7070
71- - GET /stac - retrieves the root catalog
71+ - GET / - retrieves the root catalog
7272- GET /stac/{catalog_id} - retrieves a catalog by ID
7373- GET /stac/{catalog_id}/items - retrieves a collection of items belonging to a collection
7474- GET /stac/{collection_id}/items/{id} - retrieves an item by ID from a collection
7575
7676### Transaction Endpoints
7777
78- - POST /stac /{collection_id}/items - creates a new item
79- - PUT /stac /{collection_id}/items/{item_id} - creates a new item
80- - PATCH /stac /{collection_id}/items/{item_id} - updates an item item
81- - DELETE /stac /{collection_id}/items/{item_id} - deletes an item
78+ - POST /collection /{collection_id}/items - creates a new item
79+ - PUT /collection /{collection_id}/items/{item_id} - creates a new item
80+ - PATCH /collection /{collection_id}/items/{item_id} - updates an item item
81+ - DELETE /collection /{collection_id}/items/{item_id} - deletes an item
8282
8383### Stats Endpoints
8484
85- - GET /stac/ stats - retrieves aggregations for all collections
86- - GET /stac/ stats/{collection_id} - retrieves aggregations for a specific collection
85+ - GET /stats - retrieves aggregations for all collections
86+ - GET /stats/{collection_id} - retrieves aggregations for a specific collection
8787
8888### Schema Endpoints
8989
90- - GET /stac/ schema - returns the STAC specification in JSON format
91- - GET /stac/ schema/{collection_id} - returns the JSON schema for the specified collection
90+ - GET /schema - returns the STAC specification in JSON format
91+ - GET /schema/{collection_id} - returns the JSON schema for the specified collection
9292
9393### Actuator Endpoints
9494
@@ -103,15 +103,15 @@ Any of the following methods are acceptable ways of running Staccato
103103- ** query** a Common Query Language text string to query properties of the catalog entry (see below for examples)
104104- ** ids** a list of comma separated IDs to be returned
105105- ** collections** a list of comma separated collection IDs on which to filter the results
106- - ** fields.include ** a comma separated list of json field names to include in the result
107- - ** fields.exclude ** a comma separated list of json field names to exclude in the result
106+ - ** fields** a comma separated list of json field names to include in the result; fields to be excluded can be prefixed with "-"
107+ - ** sortby ** a comma separated list of fields to sort by
108108
109109Examples:
110110_ GET_
111- - < https://stac.boundlessgeo.io/stac/ search?fields.include=id,bbox >
112- - [ https://stac.boundlessgeo.io/stac/ search?query=landsat:wrs_path=105 AND landsat: wrs_row =83] ( https://stac.boundlessgeo.io/stac/search?query=landsat:wrs_path=105%20AND%20landsat:wrs_row=83 )
113- - < https://stac.boundlessgeo.io/stac/ search?ids=LC81050832019135LGN00,LC81050822019135LGN00&collections=landsat-8-l1 >
114- - [ https://stac.boundlessgeo.io/stac/ search?limit=20&page=2&query=eo:cloud_cover <0.1&bbox=27.3245,29.85465,30.5214,31.8685&time=2018-02-12T00:00:00Z/2019-06-12T00:00:00Z] ( https://stac.boundlessgeo.io/stac/search?limit=20&page=2&query=eo:cloud_cover%3C.1&bbox=27.3245,29.85465,30.5214,31.8685&time=2018-02-12T00:00:00Z/2019-06-12T00:00:00Z )
111+ - < https://stac.boundlessgeo.io/search?fields.include=id,bbox >
112+ - [ https://stac.boundlessgeo.io/search?query=landsat:wrs_path=105 AND landsat: wrs_row =83] ( https://stac.boundlessgeo.io/stac/search?query=landsat:wrs_path=105%20AND%20landsat:wrs_row=83 )
113+ - < https://stac.boundlessgeo.io/search?ids=LC81050832019135LGN00,LC81050822019135LGN00&collections=landsat-8-l1 >
114+ - [ https://stac.boundlessgeo.io/search?limit=20&page=2&query=eo:cloud_cover <0.1&bbox=27.3245,29.85465,30.5214,31.8685&time=2018-02-12T00:00:00Z/2019-06-12T00:00:00Z] ( https://stac.boundlessgeo.io/stac/search?limit=20&page=2&query=eo:cloud_cover%3C.1&bbox=27.3245,29.85465,30.5214,31.8685&time=2018-02-12T00:00:00Z/2019-06-12T00:00:00Z )
115115
116116_ POST_
117117
@@ -163,7 +163,7 @@ _POST_
163163## Configuration
164164
165165The STAC API has several properties that are configurable from the command line, as environment properties in the
166- [ application.yml] ( ./staccato-main /src/main/resources/application.yml ) file. The table below details the properties that
166+ [ application.yml] ( ./staccato-application /src/main/resources/application.yml ) file. The table below details the properties that
167167are available for configuration.
168168
169169Property | Default Value | Description
@@ -257,7 +257,7 @@ Each query interface defines a method to return the list of item types that the
257257the actual ` doFilter ` method which does the actual work. The basic premise is that the ` doFilter ` method accepts an
258258Item as input and returns an item as output. This can be used to automatically add data, remove data, or transform
259259data. Several examples of some included filters can be found in the
260- [ filter] ( ./staccato-main /src/main/java/com/planet/staccato/filter ) package. Collections can also provide custom
260+ [ filter] ( ./staccato-application /src/main/java/com/planet/staccato/filter ) package. Collections can also provide custom
261261filters to accomplish various tasks, such as automatically generating links to related items based on values found in
262262the item's properties.
263263
@@ -311,7 +311,7 @@ the `collection` field in every item. Because each collection will have a differ
311311implement several different extension interfaces or custom fieldsExtension, Jackson cannot deserialize Item classes without
312312more information on which properties class to deserialize to. Having the "collections" field in each item provides an
313313extremely convenient 1:1 relationship between the item and it's properties implementation. The Jackson configuration
314- for this can be found [ here] ( ./staccato-main /src/main/java/com/planet/staccato/config/ExtensionConfig.java ) .
314+ for this can be found [ here] ( ./staccato-application /src/main/java/com/planet/staccato/config/ExtensionConfig.java ) .
315315
316316### Custom annotations
317317
@@ -326,7 +326,7 @@ Set type `type` attribute to one of the enumerated values found in
326326
327327The ` @Subcatalog ` annotation, when applied to a ` getter ` interface method, will make that field eligible to be
328328automatically subcataloged via the ` /stac/{catalog} ` endpoint. The
329- [ catalog spec implementation] ( ./staccato-main /src/main/java/com/planet/staccato/catalog ) will automatically detect
329+ [ catalog spec implementation] ( ./staccato-application /src/main/java/com/planet/staccato/catalog ) will automatically detect
330330methods with this annotation and build a subcatalog link containing the field name. That subcatalog will build links
331331containing all unique values in Elasticsearch for that field. After all eligible subcatalog fieldsExtension have been
332332traversed, the links section will be populated with links to all items that match the selected subcatalog values.
@@ -421,11 +421,11 @@ actual index it belongs to and update it on that index.
421421
422422STAC will need to be configured with the mappings between the Elasticsearch alias name and the collection ID (eg, the
423423value used in the ` items.properties.collection ` field). This can be set in
424- [ application.yml] ( ./staccato-main /src/main/resources/application.yml ) under the path
424+ [ application.yml] ( ./staccato-application /src/main/resources/application.yml ) under the path
425425` stac.es.index.aliases ` . The key should be the name of the write alias used in Elasticsearch (not the actual index
426426name!). The value should be the collection id. So in our example case, the key would be ` my-index-name ` and the value
427427would be the collection ID. STAC will automatically append ` -search ` to the alias for executing searches.
428428
429429At this point, you should be good to start inserting items. See the
430- [ transaction API controller] ( ./staccato-main /src/main/java/com/planet/staccato/transaction/TransactionApi.java )
430+ [ transaction API controller] ( ./staccato-application /src/main/java/com/planet/staccato/transaction/TransactionApi.java )
431431for the proper methods to use for creating new items.
0 commit comments