From cdb6d783d392d6d06c0e59c83bf732f8ce9e0f72 Mon Sep 17 00:00:00 2001 From: Fabio Sinibaldi Date: Wed, 22 Sep 2021 17:56:14 +0200 Subject: [PATCH] Concessione : Fixed abstract management --- geoportal-client/pom.xml | 16 +++++++------- .../client/legacy/ConcessioniManagerI.java | 10 +++------ .../legacy/StatefulMongoConcessioni.java | 20 ++++++++++++----- .../clients/StatefulClientTests.java | 22 ++++++++++++++----- .../clients/StatelessClientTests.java | 5 ++++- pom.xml | 9 ++++++-- 6 files changed, 53 insertions(+), 29 deletions(-) diff --git a/geoportal-client/pom.xml b/geoportal-client/pom.xml index a530f34..7e7121f 100644 --- a/geoportal-client/pom.xml +++ b/geoportal-client/pom.xml @@ -17,7 +17,6 @@ https://code-repo.d4science.org/gCubeSystem - 1.0 @@ -54,16 +53,10 @@ [1.0.0,2.0.0) - - - org.gcube.application.cms - cms-test-commons - test - - + com.fasterxml.jackson.datatype jackson-datatype-jsr310 @@ -75,6 +68,13 @@ jersey-media-json-jackson + + + org.gcube.application.cms + cms-test-commons + test + + ch.qos.logback logback-classic diff --git a/geoportal-client/src/main/java/org/gcube/application/geoportal/client/legacy/ConcessioniManagerI.java b/geoportal-client/src/main/java/org/gcube/application/geoportal/client/legacy/ConcessioniManagerI.java index e535f70..97ef9f9 100644 --- a/geoportal-client/src/main/java/org/gcube/application/geoportal/client/legacy/ConcessioniManagerI.java +++ b/geoportal-client/src/main/java/org/gcube/application/geoportal/client/legacy/ConcessioniManagerI.java @@ -1,10 +1,6 @@ package org.gcube.application.geoportal.client.legacy; -import org.gcube.application.geoportal.common.model.legacy.Concessione; -import org.gcube.application.geoportal.common.model.legacy.InputStreamDescriptor; -import org.gcube.application.geoportal.common.model.legacy.LayerConcessione; -import org.gcube.application.geoportal.common.model.legacy.RelazioneScavo; -import org.gcube.application.geoportal.common.model.legacy.UploadedImage; +import org.gcube.application.geoportal.common.model.legacy.*; import org.gcube.application.geoportal.common.rest.MongoConcessioni; import org.gcube.application.geoportal.common.rest.TempFile; @@ -15,14 +11,14 @@ public interface ConcessioniManagerI extends MongoConcessioni{ public Concessione addPiantaFineScavo(LayerConcessione toAdd,TempFile...files)throws Exception; public Concessione setPosizionamento(LayerConcessione toSet,TempFile...files)throws Exception; public Concessione setRelazioneScavo(RelazioneScavo toSet,TempFile...files)throws Exception; - + public Concessione setAbstractRelazioneScavo(AbstractRelazione toSet, TempFile...files)throws Exception; public Concessione addImmagineRappresentativa(UploadedImage toAdd,InputStreamDescriptor f) throws Exception; public Concessione addPiantaFineScavo(LayerConcessione toAdd,InputStreamDescriptor...files)throws Exception; public Concessione setPosizionamento(LayerConcessione toSet,InputStreamDescriptor...files)throws Exception; public Concessione setRelazioneScavo(RelazioneScavo toSet,InputStreamDescriptor f)throws Exception; - + public Concessione setAbstractRelazioneScavo(AbstractRelazione toSet,InputStreamDescriptor f)throws Exception; public Concessione publish() throws Exception; public void delete() throws Exception; diff --git a/geoportal-client/src/main/java/org/gcube/application/geoportal/client/legacy/StatefulMongoConcessioni.java b/geoportal-client/src/main/java/org/gcube/application/geoportal/client/legacy/StatefulMongoConcessioni.java index 0127edb..7a7a578 100644 --- a/geoportal-client/src/main/java/org/gcube/application/geoportal/client/legacy/StatefulMongoConcessioni.java +++ b/geoportal-client/src/main/java/org/gcube/application/geoportal/client/legacy/StatefulMongoConcessioni.java @@ -5,13 +5,9 @@ import java.util.ArrayList; import javax.ws.rs.client.WebTarget; import org.gcube.application.geoportal.client.DefaultMongoConcessioni; +import org.gcube.application.geoportal.common.model.legacy.*; import org.gcube.application.geoportal.common.utils.FileSets; -import org.gcube.application.geoportal.common.model.legacy.Concessione; import org.gcube.application.geoportal.common.model.legacy.Concessione.Paths; -import org.gcube.application.geoportal.common.model.legacy.InputStreamDescriptor; -import org.gcube.application.geoportal.common.model.legacy.LayerConcessione; -import org.gcube.application.geoportal.common.model.legacy.RelazioneScavo; -import org.gcube.application.geoportal.common.model.legacy.UploadedImage; import org.gcube.application.geoportal.common.rest.TempFile; import org.gcube.application.geoportal.common.utils.StorageUtils; import org.gcube.common.clients.delegates.ProxyDelegate; @@ -107,6 +103,16 @@ public class StatefulMongoConcessioni extends DefaultMongoConcessioni implements return currentC; } + @Override + public Concessione setAbstractRelazioneScavo(AbstractRelazione toSet, TempFile... files) throws Exception { + if(currentC==null) throw new Exception("Invalid operation : current Concessione is null."); + currentC.setAbstractRelazione(toSet); + currentC=replace(currentC); + + currentC=super.registerFileSet(currentC.getMongo_id(), + FileSets.build(Paths.ABSTRACT_RELAZIONE,files).getTheRequest()); + return currentC; + } @Override @@ -129,4 +135,8 @@ public class StatefulMongoConcessioni extends DefaultMongoConcessioni implements return setRelazioneScavo(toSet,FileSets.asTemp(storage,f)); } + @Override + public Concessione setAbstractRelazioneScavo(AbstractRelazione toSet, InputStreamDescriptor f) throws Exception { + return setAbstractRelazioneScavo(toSet,FileSets.asTemp(storage,f)); + } } diff --git a/geoportal-client/src/test/java/org/gcube/application/geoportal/clients/StatefulClientTests.java b/geoportal-client/src/test/java/org/gcube/application/geoportal/clients/StatefulClientTests.java index 8762530..59ca661 100644 --- a/geoportal-client/src/test/java/org/gcube/application/geoportal/clients/StatefulClientTests.java +++ b/geoportal-client/src/test/java/org/gcube/application/geoportal/clients/StatefulClientTests.java @@ -34,8 +34,11 @@ public class StatefulClientTests extends BasicVreTests{ Concessione toRegister= TestModel.prepareEmptyConcessione(); toRegister.setNome("Mock module"); manager.createNew(toRegister); - - UploadedImage toRegisterImg= TestModel.prepareConcessione().getImmaginiRappresentative().get(0); + + Concessione source=TestModel.prepareConcessione(); + + + UploadedImage toRegisterImg= source.getImmaginiRappresentative().get(0); // TEMP Files are hosted in INFRASTRUCTURE's VOLATILE AREA TempFile toUpload=storage.putOntoStorage( @@ -52,16 +55,23 @@ public class StatefulClientTests extends BasicVreTests{ //Relazione - manager.setRelazioneScavo(TestModel.prepareConcessione().getRelazioneScavo(), + manager.setRelazioneScavo(source.getRelazioneScavo(), storage.putOntoStorage(new File(TestModel.getBaseFolder(),"relazione.pdf"), "relazione_it.pdf"), storage.putOntoStorage(new File(TestModel.getBaseFolder(),"relazione.pdf"), "relazione_en.pdf")); - + + //Abstract + manager.setAbstractRelazioneScavo( + source.getAbstractRelazione(), + storage.putOntoStorage(new File(TestModel.getBaseFolder(),"relazione.pdf"), "abstract_relazione_it.pdf"), + storage.putOntoStorage(new File(TestModel.getBaseFolder(),"relazione.pdf"), "abstract_relazione_en.pdf")); + + // Posizionamento scavo - manager.setPosizionamento(TestModel.prepareConcessione().getPosizionamentoScavo(), + manager.setPosizionamento(source.getPosizionamentoScavo(), storage.putOntoStorage(new File(TestModel.getBaseFolder(),"pos.shp"), "pos.shp")); // Piante - manager.addPiantaFineScavo(TestModel.prepareConcessione().getPianteFineScavo().get(0), + manager.addPiantaFineScavo(source.getPianteFineScavo().get(0), storage.putOntoStorage(new File(TestModel.getBaseFolder(),"pianta.shp"), "pianta.shp"), storage.putOntoStorage(new File(TestModel.getBaseFolder(),"pianta.shx"), "pianta.shx")); diff --git a/geoportal-client/src/test/java/org/gcube/application/geoportal/clients/StatelessClientTests.java b/geoportal-client/src/test/java/org/gcube/application/geoportal/clients/StatelessClientTests.java index ae41fc9..24a913a 100644 --- a/geoportal-client/src/test/java/org/gcube/application/geoportal/clients/StatelessClientTests.java +++ b/geoportal-client/src/test/java/org/gcube/application/geoportal/clients/StatelessClientTests.java @@ -93,7 +93,10 @@ public class StatelessClientTests extends BasicVreTests{ client.registerFileSet(mongoId, FileSets.prepareRequest(storage,Paths.RELAZIONE,new File(TestModel.getBaseFolder(),"relazione.pdf"))); - + + client.registerFileSet(mongoId, + FileSets.prepareRequest(storage,Paths.RELAZIONE,new File(TestModel.getBaseFolder(),"relazione.pdf"))); + client.registerFileSet(mongoId, FileSets.prepareRequest(storage,Paths.imgByIndex(0),new File(TestModel.getBaseFolder(),"immagine.png"))); diff --git a/pom.xml b/pom.xml index efbcc44..33c419c 100644 --- a/pom.xml +++ b/pom.xml @@ -33,9 +33,10 @@ geoportal-client geoportal-common cms-test-commons + use-cases - + @@ -70,7 +71,11 @@ cms-test-commons [1.0.0-SNAPSHOT,2.0.0) - + + org.gcube.application.cms + use-cases + [1.0.0-SNAPSHOT,2.0.0) + org.projectlombok