Interface ResourceRegistryQueryTemplateClient
- All Superinterfaces:
org.gcube.informationsystem.resourceregistry.api.request.RequestInfo
- All Known Implementing Classes:
ResourceRegistryQueryTemplateClientImpl
The interface is the authoritative caller-facing contract. Stable invocation options are represented by immutable request options, while HTTP metadata is available through the opt-in response executor without changing ordinary domain-oriented return values.
- Author:
- Luca Frosini (ISTI - CNR)
-
Field Summary
Fields inherited from interface org.gcube.informationsystem.resourceregistry.api.request.RequestInfo
DEFAULT_LIMIT, DEFAULT_OFFSET, UNBOUNDED_LIMIT -
Method Summary
Modifier and TypeMethodDescriptionvoidDeprecated.voidDeprecated.use per-request custom headers fromResourceRegistryRequestOptionsList<org.gcube.informationsystem.queries.templates.reference.entities.QueryTemplate>all()Retrieves all query templates from the Resource Registry.createOrUpdate(String queryTemplate) Creates a new query template, or updates the existing one with the same name (versioned upsert), from its JSON representation, which is sent as it is.org.gcube.informationsystem.queries.templates.reference.entities.QueryTemplatecreateOrUpdate(org.gcube.informationsystem.queries.templates.reference.entities.QueryTemplate queryTemplate) Creates a new query template, or updates the existing one with the same name (versioned upsert).booleanDeletes an existing query template from the Resource Registry by its name.booleandelete(org.gcube.informationsystem.queries.templates.reference.entities.QueryTemplate queryTemplate) Deletes an existing query template from the Resource Registry.booleanChecks if a query template exists in the Resource Registry using template name.booleanexist(org.gcube.informationsystem.queries.templates.reference.entities.QueryTemplate queryTemplate) Checks if a query template exists in the Resource Registry.booleanWhetherrun(java.lang.String)executes a query template's underlying query polymorphically (including subtypes).Executes a JSON Query against the Query Template collection itself (e.g. by name), as opposed torun(String), which executes a named template's own stored query.List<org.gcube.informationsystem.queries.templates.reference.entities.QueryTemplate>jsonQuery(org.gcube.com.fasterxml.jackson.databind.JsonNode jsonNode) Executes a JSON Query against the Query Template collection itself and deserializes the matching definitions.default List<org.gcube.informationsystem.queries.templates.reference.entities.QueryTemplate>list()Alias forall().List<org.gcube.informationsystem.queries.templates.reference.entities.QueryTemplate>Executes a JSON Query against the Query Template collection itself and returns the matching definitions.org.gcube.informationsystem.queries.templates.reference.entities.QueryTemplateReads an existing query template from the Resource Registry by its name.org.gcube.informationsystem.queries.templates.reference.entities.QueryTemplateread(org.gcube.informationsystem.queries.templates.reference.entities.QueryTemplate queryTemplate) Reads an existing query template from the Resource Registry using a provided template object.readAsString(String queryTemplateName) Reads an existing query template from the Resource Registry as JSON string.<E extends org.gcube.informationsystem.model.reference.ERElement>
List<E>Executes the named query template with no parameters.Executes the named query template, substituting the given JSON parameter values into its template variables.<E extends org.gcube.informationsystem.model.reference.ERElement>
List<E>Executes the named query template, substituting the given parameter values.<E extends org.gcube.informationsystem.model.reference.ERElement>
List<E>run(org.gcube.informationsystem.queries.templates.reference.entities.QueryTemplate queryTemplate) Executes the query template with no parameters; the name is taken from the givenQueryTemplate.<E extends org.gcube.informationsystem.model.reference.ERElement>
List<E>run(org.gcube.informationsystem.queries.templates.reference.entities.QueryTemplate queryTemplate, org.gcube.com.fasterxml.jackson.databind.JsonNode jsonNode) Executes the query template, substituting the given parameter values; the name is taken from the givenQueryTemplate.runGetString(String name) Executes the named query template with no parameters and returns the results as a JSON array string.voidsetPolymorphic(boolean polymorphic) Configures whetherrun(java.lang.String)executes a query template's underlying query polymorphically (including subtypes).Methods inherited from interface org.gcube.informationsystem.resourceregistry.api.request.RequestInfo
allMeta, getContextsPolicy, getLimit, getMembershipScope, getOffset, includeMeta, isHierarchicalMode, serverResponses, setAllMeta, setContextsPolicy, setHierarchicalMode, setIncludeMeta, setLimit, setMembershipScope, setOffset
-
Method Details
-
addHeader
Deprecated.use per-request custom headers fromResourceRegistryRequestOptionsAdds a custom HTTP header to be included in requests.Invocation-specific options and immutable response metadata are available through
RequestInfo.serverResponses().- Parameters:
name- Header namevalue- Header value
-
addHeader
Deprecated.use per-request custom headers fromResourceRegistryRequestOptionsAdds a custom HTTP header to be included in requests.Invocation-specific options and immutable response metadata are available through
RequestInfo.serverResponses().- Parameters:
name- Header namevalue- boolean value
-
all
List<org.gcube.informationsystem.queries.templates.reference.entities.QueryTemplate> all() throws org.gcube.informationsystem.resourceregistry.api.exceptions.ResourceRegistryExceptionRetrieves all query templates from the Resource Registry.Invocation-specific options and immutable response metadata are available through
RequestInfo.serverResponses(), including RFC 8288 paginationLinkheaders andX-Warning. Request options configured viaResourceRegistryRequestOptionsmay specify pagination (limit,offset) andmetadataPolicy.- Returns:
- List of all query templates accessible to the current user, or an empty list if none exist
- Throws:
org.gcube.informationsystem.resourceregistry.api.exceptions.ResourceRegistryException- If an error occurs during query template retrieval
-
list
default List<org.gcube.informationsystem.queries.templates.reference.entities.QueryTemplate> list() throws org.gcube.informationsystem.resourceregistry.api.exceptions.ResourceRegistryExceptionAlias forall().- Returns:
- List of all query templates accessible to the current user, or an empty list if none exist
- Throws:
org.gcube.informationsystem.resourceregistry.api.exceptions.ResourceRegistryException- If an error occurs during query template retrieval
-
createOrUpdate
org.gcube.informationsystem.queries.templates.reference.entities.QueryTemplate createOrUpdate(org.gcube.informationsystem.queries.templates.reference.entities.QueryTemplate queryTemplate) throws org.gcube.informationsystem.resourceregistry.api.exceptions.queries.templates.QueryTemplateAlreadyPresentException, org.gcube.informationsystem.resourceregistry.api.exceptions.ResourceRegistryException Creates a new query template, or updates the existing one with the same name (versioned upsert). The name is taken from the givenQueryTemplate, whoseversionandchangelogare sent as they are.The server creates the template when the name is absent, updates it when the submitted
versionis higher than the persisted one, and leaves it untouched when the sameversioncarries an identical definition. Every successful outcome returns the persisted representation.Invocation-specific options and immutable response metadata are available through
RequestInfo.serverResponses(). Request options configured viaResourceRegistryRequestOptionsmay specifymetadataPolicy.- Parameters:
queryTemplate- the query template to create or update; must not benulland must have a non-blank name- Returns:
- the created/updated query template, as returned by the server
- Throws:
IllegalArgumentException- ifqueryTemplateisnullorg.gcube.informationsystem.resourceregistry.api.exceptions.queries.templates.QueryTemplateAlreadyPresentException- if the submitted definition conflicts with the persisted one (sameversionwith a different definition, lower or insufficiently advancedversion, alteredchangeloghistory, differentid)org.gcube.informationsystem.resourceregistry.api.exceptions.ResourceRegistryException- if the template definition is invalid or the operation fails
-
createOrUpdate
String createOrUpdate(String queryTemplate) throws org.gcube.informationsystem.resourceregistry.api.exceptions.queries.templates.QueryTemplateAlreadyPresentException, org.gcube.informationsystem.resourceregistry.api.exceptions.ResourceRegistryException Creates a new query template, or updates the existing one with the same name (versioned upsert), from its JSON representation, which is sent as it is. The name is taken from the JSONnameproperty. SeecreateOrUpdate(QueryTemplate)for the outcomes.Invocation-specific options and immutable response metadata are available through
RequestInfo.serverResponses(). Request options configured viaResourceRegistryRequestOptionsmay specifymetadataPolicy.- Parameters:
queryTemplate- JSON representation of the query template to create or update; must not benullor blank- Returns:
- JSON representation of the created/updated query template, as returned by the server
- Throws:
IllegalArgumentException- ifqueryTemplateisnullor blankorg.gcube.informationsystem.resourceregistry.api.exceptions.queries.templates.QueryTemplateAlreadyPresentException- if the submitted definition conflicts with the persisted one (sameversionwith a different definition, lower or insufficiently advancedversion, alteredchangeloghistory, differentid)org.gcube.informationsystem.resourceregistry.api.exceptions.ResourceRegistryException- if the template definition is invalid or the operation fails
-
exist
boolean exist(org.gcube.informationsystem.queries.templates.reference.entities.QueryTemplate queryTemplate) throws org.gcube.informationsystem.resourceregistry.api.exceptions.ResourceRegistryException Checks if a query template exists in the Resource Registry.Invocation-specific options and immutable response metadata are available through
RequestInfo.serverResponses().- Parameters:
queryTemplate- The query template to check for existence; must not benulland must have a valid name- Returns:
- true if the query template exists and is accessible, false if not found
- Throws:
IllegalArgumentException- ifqueryTemplateisnullorg.gcube.informationsystem.resourceregistry.api.exceptions.ResourceRegistryException- If an error occurs during the existence check
-
exist
boolean exist(String queryTemplateName) throws org.gcube.informationsystem.resourceregistry.api.exceptions.ResourceRegistryException Checks if a query template exists in the Resource Registry using template name.Invocation-specific options and immutable response metadata are available through
RequestInfo.serverResponses().- Parameters:
queryTemplateName- The name of the query template to check for existence; must not benullor blank- Returns:
- true if the query template exists and is accessible, false if not found
- Throws:
IllegalArgumentException- ifqueryTemplateNameisnullor blankorg.gcube.informationsystem.resourceregistry.api.exceptions.ResourceRegistryException- If an error occurs during the existence check
-
read
org.gcube.informationsystem.queries.templates.reference.entities.QueryTemplate read(org.gcube.informationsystem.queries.templates.reference.entities.QueryTemplate queryTemplate) throws org.gcube.informationsystem.resourceregistry.api.exceptions.queries.templates.QueryTemplateNotFoundException, org.gcube.informationsystem.resourceregistry.api.exceptions.ResourceRegistryException Reads an existing query template from the Resource Registry using a provided template object.Invocation-specific options and immutable response metadata are available through
RequestInfo.serverResponses(). Request options configured viaResourceRegistryRequestOptionsmay specifymetadataPolicy.- Parameters:
queryTemplate- Template object containing at least the name; must not benull- Returns:
- The complete query template from the Resource Registry
- Throws:
IllegalArgumentException- ifqueryTemplateisnullorg.gcube.informationsystem.resourceregistry.api.exceptions.queries.templates.QueryTemplateNotFoundException- If no query template is found with the specified nameorg.gcube.informationsystem.resourceregistry.api.exceptions.ResourceRegistryException- If an error occurs during template retrieval
-
read
org.gcube.informationsystem.queries.templates.reference.entities.QueryTemplate read(String queryTemplateName) throws org.gcube.informationsystem.resourceregistry.api.exceptions.queries.templates.QueryTemplateNotFoundException, org.gcube.informationsystem.resourceregistry.api.exceptions.ResourceRegistryException Reads an existing query template from the Resource Registry by its name.Invocation-specific options and immutable response metadata are available through
RequestInfo.serverResponses(), including canonicalContent-Location,Link: rel="collection", andX-Warning. Request options configured viaResourceRegistryRequestOptionsmay specifymetadataPolicy.- Parameters:
queryTemplateName- The name of the query template to read; must not benullor blank- Returns:
- The complete query template from the Resource Registry
- Throws:
IllegalArgumentException- ifqueryTemplateNameisnullor blankorg.gcube.informationsystem.resourceregistry.api.exceptions.queries.templates.QueryTemplateNotFoundException- If no query template is found with the specified nameorg.gcube.informationsystem.resourceregistry.api.exceptions.ResourceRegistryException- If an error occurs during template retrieval
-
readAsString
String readAsString(String queryTemplateName) throws org.gcube.informationsystem.resourceregistry.api.exceptions.queries.templates.QueryTemplateNotFoundException, org.gcube.informationsystem.resourceregistry.api.exceptions.ResourceRegistryException Reads an existing query template from the Resource Registry as JSON string.Invocation-specific options and immutable response metadata are available through
RequestInfo.serverResponses(), including canonicalContent-Location,Link: rel="collection", andX-Warning. Request options configured viaResourceRegistryRequestOptionsmay specifymetadataPolicy.- Parameters:
queryTemplateName- The name of the query template to read; must not benullor blank- Returns:
- JSON representation of the complete query template from the Resource Registry
- Throws:
IllegalArgumentException- ifqueryTemplateNameisnullor blankorg.gcube.informationsystem.resourceregistry.api.exceptions.queries.templates.QueryTemplateNotFoundException- If no query template is found with the specified nameorg.gcube.informationsystem.resourceregistry.api.exceptions.ResourceRegistryException- If an error occurs during template retrieval
-
runGetString
String runGetString(String name) throws org.gcube.informationsystem.resourceregistry.api.exceptions.queries.templates.QueryTemplateNotFoundException, org.gcube.informationsystem.resourceregistry.api.exceptions.ResourceRegistryException Executes the named query template with no parameters and returns the results as a JSON array string.Invocation-specific options and immutable response metadata are available through
RequestInfo.serverResponses(). Client options andResourceRegistryRequestOptionsconfigurepolymorphic,hierarchicalMode,contextsPolicy,membershipScope,metadataPolicy,limit, andoffset.- Parameters:
name- the name of the query template to execute; must not benullor blank- Returns:
- JSON array string containing the query results, or empty array string "[]" if no results match
- Throws:
IllegalArgumentException- ifnameisnullor blankorg.gcube.informationsystem.resourceregistry.api.exceptions.queries.templates.QueryTemplateNotFoundException- if no query template with the given name existsorg.gcube.informationsystem.resourceregistry.api.exceptions.ResourceRegistryException- if the execution fails
-
run
<E extends org.gcube.informationsystem.model.reference.ERElement> List<E> run(String name) throws org.gcube.informationsystem.resourceregistry.api.exceptions.queries.templates.QueryTemplateNotFoundException, org.gcube.informationsystem.resourceregistry.api.exceptions.ResourceRegistryException Executes the named query template with no parameters. SeerunGetString(String)for the underlying contract.Invocation-specific options and immutable response metadata are available through
RequestInfo.serverResponses(). Client options andResourceRegistryRequestOptionsconfigurepolymorphic,hierarchicalMode,contextsPolicy,membershipScope,metadataPolicy,limit, andoffset.- Type Parameters:
E- the expected Information System element type- Parameters:
name- the name of the query template to execute; must not benullor blank- Returns:
- the query results, deserialized, or an empty list if no results match
- Throws:
IllegalArgumentException- ifnameisnullor blankorg.gcube.informationsystem.resourceregistry.api.exceptions.queries.templates.QueryTemplateNotFoundException- if no query template with the given name existsorg.gcube.informationsystem.resourceregistry.api.exceptions.ResourceRegistryException- if the execution fails
-
run
<E extends org.gcube.informationsystem.model.reference.ERElement> List<E> run(org.gcube.informationsystem.queries.templates.reference.entities.QueryTemplate queryTemplate) throws org.gcube.informationsystem.resourceregistry.api.exceptions.queries.templates.QueryTemplateNotFoundException, org.gcube.informationsystem.resourceregistry.api.exceptions.ResourceRegistryException Executes the query template with no parameters; the name is taken from the givenQueryTemplate. SeerunGetString(String)for the underlying contract.Invocation-specific options and immutable response metadata are available through
RequestInfo.serverResponses(). Client options andResourceRegistryRequestOptionsconfigurepolymorphic,hierarchicalMode,contextsPolicy,membershipScope,metadataPolicy,limit, andoffset.- Type Parameters:
E- the expected Information System element type- Parameters:
queryTemplate- the query template to execute (only its name is used); must not benull- Returns:
- the query results, deserialized, or an empty list if no results match
- Throws:
IllegalArgumentException- ifqueryTemplateisnullorg.gcube.informationsystem.resourceregistry.api.exceptions.queries.templates.QueryTemplateNotFoundException- if no query template with the given name existsorg.gcube.informationsystem.resourceregistry.api.exceptions.ResourceRegistryException- if the execution fails
-
run
String run(String name, String params) throws org.gcube.informationsystem.resourceregistry.api.exceptions.queries.templates.QueryTemplateNotFoundException, org.gcube.informationsystem.resourceregistry.api.exceptions.ResourceRegistryException Executes the named query template, substituting the given JSON parameter values into its template variables. SeerunGetString(String)for the underlying contract.Invocation-specific options and immutable response metadata are available through
RequestInfo.serverResponses(). Client options andResourceRegistryRequestOptionsconfigurepolymorphic,hierarchicalMode,contextsPolicy,membershipScope,metadataPolicy,limit, andoffset.- Parameters:
name- the name of the query template to execute; must not benullor blankparams- JSON object with parameter values for template substitution, ornull/empty for defaults; parameters omitted fall back to their declared default value, if any- Returns:
- JSON array string containing the query results, or empty array string "[]" if no results match
- Throws:
IllegalArgumentException- ifnameisnullor blankorg.gcube.informationsystem.resourceregistry.api.exceptions.queries.templates.QueryTemplateNotFoundException- if no query template with the given name existsorg.gcube.informationsystem.resourceregistry.api.exceptions.ResourceRegistryException- if the execution fails
-
run
<E extends org.gcube.informationsystem.model.reference.ERElement> List<E> run(String name, org.gcube.com.fasterxml.jackson.databind.JsonNode jsonNode) throws org.gcube.informationsystem.resourceregistry.api.exceptions.queries.templates.QueryTemplateNotFoundException, org.gcube.informationsystem.resourceregistry.api.exceptions.ResourceRegistryException Executes the named query template, substituting the given parameter values. Seerun(String, String)for the underlying contract.Invocation-specific options and immutable response metadata are available through
RequestInfo.serverResponses(). Client options andResourceRegistryRequestOptionsconfigurepolymorphic,hierarchicalMode,contextsPolicy,membershipScope,metadataPolicy,limit, andoffset.- Type Parameters:
E- the expected Information System element type- Parameters:
name- the name of the query template to execute; must not benullor blankjsonNode- parameter values for template substitution, ornullfor defaults- Returns:
- the query results, deserialized, or an empty list if no results match
- Throws:
IllegalArgumentException- ifnameisnullor blankorg.gcube.informationsystem.resourceregistry.api.exceptions.queries.templates.QueryTemplateNotFoundException- if no query template with the given name existsorg.gcube.informationsystem.resourceregistry.api.exceptions.ResourceRegistryException- if the execution fails
-
run
<E extends org.gcube.informationsystem.model.reference.ERElement> List<E> run(org.gcube.informationsystem.queries.templates.reference.entities.QueryTemplate queryTemplate, org.gcube.com.fasterxml.jackson.databind.JsonNode jsonNode) throws org.gcube.informationsystem.resourceregistry.api.exceptions.queries.templates.QueryTemplateNotFoundException, org.gcube.informationsystem.resourceregistry.api.exceptions.ResourceRegistryException Executes the query template, substituting the given parameter values; the name is taken from the givenQueryTemplate. Seerun(String, String)for the underlying contract.Invocation-specific options and immutable response metadata are available through
RequestInfo.serverResponses(). Client options andResourceRegistryRequestOptionsconfigurepolymorphic,hierarchicalMode,contextsPolicy,membershipScope,metadataPolicy,limit, andoffset.- Type Parameters:
E- the expected Information System element type- Parameters:
queryTemplate- the query template to execute (only its name is used); must not benulljsonNode- parameter values for template substitution, ornullfor defaults- Returns:
- the query results, deserialized, or an empty list if no results match
- Throws:
IllegalArgumentException- ifqueryTemplateisnullorg.gcube.informationsystem.resourceregistry.api.exceptions.queries.templates.QueryTemplateNotFoundException- if no query template with the given name existsorg.gcube.informationsystem.resourceregistry.api.exceptions.ResourceRegistryException- if the execution fails
-
delete
boolean delete(org.gcube.informationsystem.queries.templates.reference.entities.QueryTemplate queryTemplate) throws org.gcube.informationsystem.resourceregistry.api.exceptions.queries.templates.QueryTemplateNotFoundException, org.gcube.informationsystem.resourceregistry.api.exceptions.ResourceRegistryException Deletes an existing query template from the Resource Registry.Invocation-specific options and immutable response metadata are available through
RequestInfo.serverResponses().- Parameters:
queryTemplate- The query template to delete (must have a valid name); must not benull- Returns:
- true if the query template was successfully deleted
- Throws:
IllegalArgumentException- ifqueryTemplateisnullorg.gcube.informationsystem.resourceregistry.api.exceptions.queries.templates.QueryTemplateNotFoundException- If no query template is found with the specified nameorg.gcube.informationsystem.resourceregistry.api.exceptions.ResourceRegistryException- If an error occurs during template deletion
-
delete
boolean delete(String queryTemplateName) throws org.gcube.informationsystem.resourceregistry.api.exceptions.queries.templates.QueryTemplateNotFoundException, org.gcube.informationsystem.resourceregistry.api.exceptions.ResourceRegistryException Deletes an existing query template from the Resource Registry by its name.Invocation-specific options and immutable response metadata are available through
RequestInfo.serverResponses().- Parameters:
queryTemplateName- The name of the query template to delete; must not benullor blank- Returns:
- true if the query template was successfully deleted
- Throws:
IllegalArgumentException- ifqueryTemplateNameisnullor blankorg.gcube.informationsystem.resourceregistry.api.exceptions.queries.templates.QueryTemplateNotFoundException- If no query template is found with the specified nameorg.gcube.informationsystem.resourceregistry.api.exceptions.ResourceRegistryException- If an error occurs during template deletion
-
isPolymorphic
boolean isPolymorphic()Whetherrun(java.lang.String)executes a query template's underlying query polymorphically (including subtypes). Default:true.Invocation-specific options and immutable response metadata are available through
RequestInfo.serverResponses().- Returns:
- the currently configured polymorphic flag
-
setPolymorphic
void setPolymorphic(boolean polymorphic) Configures whetherrun(java.lang.String)executes a query template's underlying query polymorphically (including subtypes).Invocation-specific options and immutable response metadata are available through
RequestInfo.serverResponses().- Parameters:
polymorphic-trueto include subtypes (default),falsefor exact type match only
-
jsonQuery
String jsonQuery(String query) throws org.gcube.informationsystem.resourceregistry.api.exceptions.queries.InvalidQueryException, org.gcube.informationsystem.resourceregistry.api.exceptions.ResourceRegistryException Executes a JSON Query against the Query Template collection itself (e.g. by name), as opposed torun(String), which executes a named template's own stored query.Invocation-specific options and immutable response metadata are available through
RequestInfo.serverResponses(). Request options configured viaResourceRegistryRequestOptionsmay specify pagination (limit,offset) andmetadataPolicy.- Parameters:
query- JSON object describing the Query Template structure to search for; must not benullor blank- Returns:
- JSON array string of matching query template definitions, or empty array string "[]" if none match
- Throws:
IllegalArgumentException- ifqueryisnullor blankorg.gcube.informationsystem.resourceregistry.api.exceptions.queries.InvalidQueryException- if the query syntax is invalidorg.gcube.informationsystem.resourceregistry.api.exceptions.ResourceRegistryException- if the lookup fails
-
jsonQuery
List<org.gcube.informationsystem.queries.templates.reference.entities.QueryTemplate> jsonQuery(org.gcube.com.fasterxml.jackson.databind.JsonNode jsonNode) throws org.gcube.informationsystem.resourceregistry.api.exceptions.queries.InvalidQueryException, org.gcube.informationsystem.resourceregistry.api.exceptions.ResourceRegistryException Executes a JSON Query against the Query Template collection itself and deserializes the matching definitions. SeejsonQuery(String)for the underlying contract.Invocation-specific options and immutable response metadata are available through
RequestInfo.serverResponses(). Request options configured viaResourceRegistryRequestOptionsmay specify pagination (limit,offset) andmetadataPolicy.- Parameters:
jsonNode- JsonNode describing the Query Template structure to search for; must not benull- Returns:
- the matching query template definitions, or an empty list if none match
- Throws:
IllegalArgumentException- ifjsonNodeisnullorg.gcube.informationsystem.resourceregistry.api.exceptions.queries.InvalidQueryException- if the query syntax is invalidorg.gcube.informationsystem.resourceregistry.api.exceptions.ResourceRegistryException- if the lookup fails
-
query
List<org.gcube.informationsystem.queries.templates.reference.entities.QueryTemplate> query(String query) throws org.gcube.informationsystem.resourceregistry.api.exceptions.queries.InvalidQueryException, org.gcube.informationsystem.resourceregistry.api.exceptions.ResourceRegistryException Executes a JSON Query against the Query Template collection itself and returns the matching definitions.Convenience alias delegating to
jsonQuery(String)followed by deserialization to a list ofQueryTemplateentities.Invocation-specific options and immutable response metadata are available through
RequestInfo.serverResponses(). Request options configured viaResourceRegistryRequestOptionsmay specify pagination (limit,offset) andmetadataPolicy.- Parameters:
query- JSON Query-By-Example string describing the Query Template structure to search for; must not benullor blank- Returns:
- a list of matching query templates, or an empty list if no query templates match
- Throws:
IllegalArgumentException- ifqueryisnullor blankorg.gcube.informationsystem.resourceregistry.api.exceptions.queries.InvalidQueryException- if the query syntax is invalidorg.gcube.informationsystem.resourceregistry.api.exceptions.ResourceRegistryException- if the lookup fails or an error occurs during retrieval
-
ResourceRegistryRequestOptions