From b71db8d1041e1bbe8a4ed90f203f5f7a3ee7603e Mon Sep 17 00:00:00 2001 From: Fabio Sinibaldi Date: Thu, 11 Feb 2021 17:27:18 +0100 Subject: [PATCH] Basic Plugin interface declaration --- CHANGELOG.md | 4 +++ pom.xml | 18 +++++++--- .../data/plugins/GISServicePlugin.java | 5 +++ .../data/sdi/interfaces/GeoNetwork.java | 35 +++++++++++++++++++ 4 files changed, 57 insertions(+), 5 deletions(-) create mode 100644 src/main/java/org/gcube/spatial/data/plugins/GISServicePlugin.java diff --git a/CHANGELOG.md b/CHANGELOG.md index b790be7..1e8ce9c 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,10 @@ This project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.htm # Changelog for sdi-interface +## [v1.3.0-SNAPSHOT] - 2020-09-03 +Added support for generic client plugin + + ## [v1.2.0] - 2020-09-03 ### Fixes diff --git a/pom.xml b/pom.xml index b9b544c..7b697f6 100644 --- a/pom.xml +++ b/pom.xml @@ -1,4 +1,5 @@ - 4.0.0 @@ -8,13 +9,14 @@ org.gcube.spatial.data sdi-interface - 1.2.0 + 1.3.0-SNAPSHOT SDI Interface SDI Service interface and model - + ${project.basedir}/distro https://code-repo.d4science.org/gCubeSystem/ + 3.0.1 @@ -41,12 +43,12 @@ - + org.gcube.common authorization-client - + junit junit @@ -68,6 +70,12 @@ + + org.opengis + geoapi + ${geoAPI-version} + + diff --git a/src/main/java/org/gcube/spatial/data/plugins/GISServicePlugin.java b/src/main/java/org/gcube/spatial/data/plugins/GISServicePlugin.java new file mode 100644 index 0000000..8a5c693 --- /dev/null +++ b/src/main/java/org/gcube/spatial/data/plugins/GISServicePlugin.java @@ -0,0 +1,5 @@ +package org.gcube.spatial.data.plugins; + +public interface GISServicePlugin { + +} diff --git a/src/main/java/org/gcube/spatial/data/sdi/interfaces/GeoNetwork.java b/src/main/java/org/gcube/spatial/data/sdi/interfaces/GeoNetwork.java index c39fe0e..a67a6ea 100644 --- a/src/main/java/org/gcube/spatial/data/sdi/interfaces/GeoNetwork.java +++ b/src/main/java/org/gcube/spatial/data/sdi/interfaces/GeoNetwork.java @@ -1,8 +1,43 @@ package org.gcube.spatial.data.sdi.interfaces; +import org.gcube.spatial.data.sdi.model.faults.ConfigurationException; +import org.gcube.spatial.data.sdi.model.faults.InternalException; +import org.gcube.spatial.data.sdi.model.faults.RemoteException; +import org.gcube.spatial.data.sdi.model.gn.LoginLevel; +import org.gcube.spatial.data.sdi.model.gn.query.GNSearchRequest; +import org.gcube.spatial.data.sdi.model.gn.query.GNSearchResponse; +import org.gcube.spatial.data.sdi.model.metadata.MetadataInfo; + + + public interface GeoNetwork { + // MANAGEMENT + // public Credentials getCredentials(String host); + + public GNSearchResponse query(GNSearchRequest request) + throws InternalException,RemoteException,ConfigurationException; + + + public Metadata getById(long id) throws InternalException,RemoteException,ConfigurationException; + + public Metadata getById(String UUID) throws InternalException,RemoteException,ConfigurationException; + + public String getByIdAsRawString(String UUID) throws InternalException,RemoteException,ConfigurationException; + + + public void login()throws InternalException,RemoteException,ConfigurationException; + + public void login(LoginLevel level)throws InternalException,RemoteException,ConfigurationException; + + public void logout() throws InternalException,RemoteException,ConfigurationException; + + public MetadataInfo getInfo(Long id) throws InternalException,RemoteException,ConfigurationException; + + public MetadataInfo getInfo(String uuid) throws InternalException,RemoteException,ConfigurationException; + + }