Difference between revisions of "GCube-SDI-Suite"

From Gcube Wiki
Jump to: navigation, search
(Using java clients)
(Using java clients)
Line 46: Line 46:
 
The best way to interact with the SDI is by using a provided java client described from [[SDI_Library]].
 
The best way to interact with the SDI is by using a provided java client described from [[SDI_Library]].
  
Following clients can be selectively used to support GIS resources management :
+
Following clients can be selectively used to support publication and access :
  
* [[SDI_Library#Metadata Interface| Metadata]]: allows for common '''ISO Metadata publication''' use cases in the gCube SDI;
+
* [[SDI_Library#Metadata Interface| Metadata ]] client: allows for common '''ISO Metadata publication''' use cases in the gCube SDI;
* [[SDI_Library#gcube GeoNetwork Cilent| gCube GeoNetwork]]: offers a java client towards '''GeoNetwork REST API''', fully integrated with gCube Infrastructure;
+
* [[SDI_Library#gcube GeoNetwork Cilent| gCube GeoNetwork]] client: offers a java client towards '''GeoNetwork REST API''', fully integrated with gCube Infrastructure;
* [[SDI_Library#Datasets Interface| Datasets]]: allows for common '''GIS Dataset publication''' use cases in the gCube SDI;
+
* [[SDI_Library#Datasets Interface| Datasets]] client: allows for common '''GIS Dataset publication''' use cases in the gCube SDI;
* [[SDI_Library#gcube GeoNetwork Cilent| gCube GeoNetwork]]: offers a java client towards '''GeoServer REST API''', fully integrated with gCube Infrastructure;
+
* [[SDI_Library#gcube GeoServer Cilent| gCube GeoServer]] client : offers a java client towards '''GeoServer REST API''', fully integrated with gCube Infrastructure;
 +
 
 +
Furthermore, the [[SDI_Library#SDI Management| gCube GeoNetwork]] can be used to :
 +
 
 +
* Manage SDI subsystems in the VRE (i.e. GeoNetwork, GeoServer, Thredds..)
 +
* Manage metadata templates
 +
* Manage Application profiles
 +
* Manage Credentials and configurations
  
 
===Managing configurations===
 
===Managing configurations===
 
===REST Interfaces===
 
===REST Interfaces===

Revision as of 16:13, 23 February 2021

gCube-SDI-Suite is a set of gCube java components that allows for the management of GIS resources (i.e. GeoSpatial DataSets, Metadata, Services..) in D4Science Spatial Data e-Infrastructure. It provides Java implementations of both client-side and service-side features, and it is built on top of OGC standards implementations. It is powered by gCube Features, fully integrating with the infrastructure.

Design

gCube-SDI-Suite is designed as a modular set of components, each of which can be used as dependency by another application. It fully relies on gCube for infrastructure integration.

The suite code can be found at [[1]], and it is distributed as the following maven artifact in gCube repositories :

<dependency>
  <groupId>org.gcube.spatial.data</groupId>
  <artifactId>gcube-sdi-suite</artifactId>
  <type>pom</type>
</dependency>

Philosophy

gCube-SDI-Suite aim is to to simplify developpers' life in managing GIS resources by

  • Offering easy ways to perform common tasks
  • Encouraging reuse of code by modularization of feature and reduction of dependency tree
  • Isolating complexity of GIS resources management and infrastructure integration
  • Allowing for easy extension of behaviour

Components

gCube-SDI-Suite main components are :

Following components are also part of the suite :

  • SDI-Interface java library with common classes definition;
  • SDI-Test-Commons common library for test purposes;
  • SDI-Generic-Client common library for Dynamic Clients;
  • gCube-GeoServer-Client Dynamic Clients towards GeoServer REST API;
  • gCube-GeoNetwork-Client Dynamic Clients towards GeoNetwork REST API;
  • gcube-GeoServer-Connector internal library used to authenticate gCube calls towards Geoserver;

Use cases

Common use cases can be achieved as described in this section.

Using java clients

The best way to interact with the SDI is by using a provided java client described from SDI_Library.

Following clients can be selectively used to support publication and access :

  • Metadata client: allows for common ISO Metadata publication use cases in the gCube SDI;
  • gCube GeoNetwork client: offers a java client towards GeoNetwork REST API, fully integrated with gCube Infrastructure;
  • Datasets client: allows for common GIS Dataset publication use cases in the gCube SDI;
  • gCube GeoServer client : offers a java client towards GeoServer REST API, fully integrated with gCube Infrastructure;

Furthermore, the gCube GeoNetwork can be used to :

  • Manage SDI subsystems in the VRE (i.e. GeoNetwork, GeoServer, Thredds..)
  • Manage metadata templates
  • Manage Application profiles
  • Manage Credentials and configurations

Managing configurations

REST Interfaces