Difference between revisions of "Species Product Discovery: client library"

From Gcube Wiki
Jump to: navigation, search
(Example)
m (QueryManager API)
Line 30: Line 30:
 
=== QueryManager API ===
 
=== QueryManager API ===
  
To submit a query to the system the following method is used
+
* <source lang="java">
 
+
<source lang="java">
+
 
public Stream<ResultElement> search(String query) throws InvalidQueryException, UnsupportedPluginException;
 
public Stream<ResultElement> search(String query) throws InvalidQueryException, UnsupportedPluginException;
 
</source>
 
</source>
 +
This method is used to submit a query to the system.
 +
The query '''MUST''' be defined following the [https://gcube.wiki.gcube-system.org/gcube/index.php/SPQL:_SPecies_Query_Language SPQL grammar].
 +
 +
* <source lang="java">
 +
public List<PluginDescription> getPluginsDescription();
 +
</source>
 +
This method is used to get the list of all external repositories available in the infrastructure and their capabilities.
  
The query '''MUST''' be defined following the [https://gcube.wiki.gcube-system.org/gcube/index.php/SPQL:_SPecies_Query_Language SPQL grammar]. 
 
  
 
==== Example ====
 
==== Example ====

Revision as of 19:21, 20 March 2013

This client library allows user to contact the Species Product Discovery Service.

The spd-client-library is a client library for the Species Product Discovery Service. It helps clients interacting with the service and processing result. This library is part of the FeatherWeight Stack.

Download

The maven coordinates to get the spd-client-library is:

<dependency>
<groupId>org.gcube.data.spd</groupId>
<artifactId>spd-client-library</artifactId>
<version>${version}</version>
</dependency>

the lastest released version is : 2.0.0

the lastest under development version is : 2.1.0-SNAPSHOT


Architecture

The spd-cl is divided into 4 parts:

  • QueryManager: helps clients submitting queries to the service;
  • OccurrencesManager: helps clients retrieving occurrences and generating maps using retrieved occurrences;
  • TaxonManager: help clients retrieving taxa and their ancestor by ids.
  • ExecutorManager: helps clients submitting jobs to the system.

QueryManager API

  • public Stream<ResultElement> search(String query) throws InvalidQueryException, UnsupportedPluginException;

This method is used to submit a query to the system. The query MUST be defined following the SPQL grammar.

  • public List<PluginDescription> getPluginsDescription();

This method is used to get the list of all external repositories available in the infrastructure and their capabilities.


Example