diff --git a/cms-test-commons/pom.xml b/cms-test-commons/pom.xml
index 1156066..601fc78 100644
--- a/cms-test-commons/pom.xml
+++ b/cms-test-commons/pom.xml
@@ -22,9 +22,9 @@
- scm:git:${gitBaseUrl}/${project.artifactId}.git
- scm:git:${gitBaseUrl}/${project.artifactId}.git
- ${gitBaseUrl}/${project.artifactId}.git
+ scm:git:${gitBaseUrl}/gcube-cms-suite
+ scm:git:${gitBaseUrl}/gcube-cms-suite
+ ${gitBaseUrl}/gcube-cms-suite
diff --git a/geoportal-client/pom.xml b/geoportal-client/pom.xml
index a69fed2..82ca912 100644
--- a/geoportal-client/pom.xml
+++ b/geoportal-client/pom.xml
@@ -20,9 +20,9 @@
- scm:git:${gitBaseUrl}/${project.artifactId}.git
- scm:git:${gitBaseUrl}/${project.artifactId}.git
- ${gitBaseUrl}/${project.artifactId}.git
+ scm:git:${gitBaseUrl}/gcube-cms-suite
+ scm:git:${gitBaseUrl}/gcube-cms-suite
+ ${gitBaseUrl}/gcube-cms-suite
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 495f853..15f9ff6 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
@@ -15,7 +15,7 @@ import org.gcube.application.cms.tests.model.TestFilters;
import org.gcube.application.cms.tests.model.TestModel;
import org.gcube.application.cms.tests.model.TestQueries;
import org.gcube.application.geoportal.client.utils.Queries;
-import org.gcube.application.geoportal.common.model.legacy.Concessione;
+import org.gcube.application.geoportal.common.model.legacy.*;
import org.gcube.application.geoportal.common.model.legacy.Concessione.Paths;
import org.gcube.application.geoportal.common.model.legacy.report.ValidationReport.ValidationStatus;
import org.gcube.application.geoportal.common.model.rest.AddSectionToConcessioneRequest;
@@ -142,12 +142,23 @@ public class StatelessClientTests extends BasicVreTests{
public void testCleanFileSet() throws Exception {
Concessione testObject=prepare();
+ System.out.println("Object is "+testObject.getPosizionamentoScavo());
//Precheck to be sure
assertFalse(testObject.getPosizionamentoScavo().getActualContent().isEmpty());
assertFalse(testObject.getPianteFineScavo().get(0).getActualContent().isEmpty());
client.unPublish(testObject.getMongo_id());
+ // check unpublish
+ testObject= client.getById(testObject.getMongo_id());
+ for(LayerConcessione l:testObject.getPianteFineScavo())
+ for(PersistedContent pc: l.getActualContent())
+ if(pc instanceof GeoServerContent) throw new Exception ("Concessione not properly unpublished");
+
+ for(PersistedContent pc: testObject.getPosizionamentoScavo().getActualContent())
+ if(pc instanceof GeoServerContent) throw new Exception ("Concessione not properly unpublished");
+
+
//Clear pos
testObject=client.cleanFileSet(testObject.getMongo_id(),Paths.POSIZIONAMENTO);
assertTrue(testObject.getPosizionamentoScavo().getActualContent().isEmpty());
@@ -159,7 +170,7 @@ public class StatelessClientTests extends BasicVreTests{
private Concessione prepare() throws Exception {
- int numImgs=5;
+ int numImgs=1;
Concessione c= client.createNew(TestModel.prepareConcessione(1,numImgs));
StorageUtils storage = new StorageUtils();
@@ -171,10 +182,12 @@ public class StatelessClientTests extends BasicVreTests{
client.registerFileSet(mongoId,
FileSets.prepareRequest(storage,Paths.RELAZIONE,new File(TestModel.getBaseFolder(),"relazione.pdf")));
+
+
for(int i=0;i
- scm:git:${gitBaseUrl}/${project.artifactId}.git
- scm:git:${gitBaseUrl}/${project.artifactId}.git
- ${gitBaseUrl}/${project.artifactId}.git
+ scm:git:${gitBaseUrl}/gcube-cms-suite
+ scm:git:${gitBaseUrl}/gcube-cms-suite
+ ${gitBaseUrl}/gcube-cms-suite
diff --git a/geoportal-common/src/main/java/org/gcube/application/geoportal/common/model/legacy/Concessione.java b/geoportal-common/src/main/java/org/gcube/application/geoportal/common/model/legacy/Concessione.java
index f215e17..0a67088 100644
--- a/geoportal-common/src/main/java/org/gcube/application/geoportal/common/model/legacy/Concessione.java
+++ b/geoportal-common/src/main/java/org/gcube/application/geoportal/common/model/legacy/Concessione.java
@@ -312,25 +312,31 @@ public class Concessione extends Record{
setLicenzaID(ConstraintCheck.defaultFor(getLicenzaID(), "CC0-1.0").evaluate());
-
- if(relazioneScavo!=null) {
+ if(relazioneScavo == null) relazioneScavo=new RelazioneScavo();
+
relazioneScavo.setTitolo(ConstraintCheck.defaultFor(relazioneScavo.getTitolo(),getNome()+" relazione di scavo").evaluate());
relazioneScavo.setSoggetto(ConstraintCheck.defaultFor(relazioneScavo.getSoggetto(),getSoggetto()).evaluate());
relazioneScavo.setCreationTime(ConstraintCheck.defaultFor(relazioneScavo.getCreationTime(),getCreationTime()).evaluate());
relazioneScavo.setLicenseID(ConstraintCheck.defaultFor(getLicenzaID(), "CC-BY-4.0").evaluate());
relazioneScavo.setPolicy(getPolicy());
- }
- if(abstractRelazione!=null) {
+
+ if(abstractRelazione == null) abstractRelazione = new AbstractRelazione();
abstractRelazione.setTitolo(ConstraintCheck.defaultFor(abstractRelazione.getTitolo(),getNome()+" abstract relazione di scavo").evaluate());
abstractRelazione.setCreationTime(ConstraintCheck.defaultFor(abstractRelazione.getCreationTime(),getCreationTime()).evaluate());
abstractRelazione.setLicenseID(ConstraintCheck.defaultFor(getLicenzaID(), "CC-BY-4.0").evaluate());
abstractRelazione.setPolicy(getPolicy());
- }
if(immaginiRappresentative!=null)
for(UploadedImage img : immaginiRappresentative) {
+// String evaluatedTitle="Empty img";
+// img.setTitolo(ConstraintCheck.defaultFor(img.getTitolo(),
+// getNome()+" abstract relazione di scavo").evaluate());
+//
+// if(!img.getActualContent().isEmpty()){
+//
+// }
img.setSoggetto(ConstraintCheck.defaultFor(img.getSoggetto(),getSoggetto()).evaluate());
img.setCreationTime(ConstraintCheck.defaultFor(img.getCreationTime(),getCreationTime()).evaluate());
img.setPolicy(ConstraintCheck.defaultFor(img.getPolicy(),getPolicy()).evaluate());
diff --git a/geoportal-service/CHANGELOG.md b/geoportal-service/CHANGELOG.md
index cc4f7b9..42651a9 100644
--- a/geoportal-service/CHANGELOG.md
+++ b/geoportal-service/CHANGELOG.md
@@ -4,7 +4,7 @@ This project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.htm
## [v1.0.6] 2021-09-20
Refactored repositories
-
+Fixes #22193
## [v1.0.5-SNAPSHOT] 2021-07-23
Upgrade to gcube-smartgears-bom 2.1.0
diff --git a/geoportal-service/pom.xml b/geoportal-service/pom.xml
index 91ea819..4c95743 100644
--- a/geoportal-service/pom.xml
+++ b/geoportal-service/pom.xml
@@ -23,9 +23,9 @@
- scm:git:${gitBaseUrl}/${project.artifactId}.git
- scm:git:${gitBaseUrl}/${project.artifactId}.git
- ${gitBaseUrl}/${project.artifactId}.git
+ scm:git:${gitBaseUrl}/gcube-cms-suite
+ scm:git:${gitBaseUrl}/gcube-cms-suite
+ ${gitBaseUrl}/gcube-cms-suite
diff --git a/geoportal-service/src/main/java/org/gcube/application/geoportal/service/engine/mongo/ConcessioniMongoManager.java b/geoportal-service/src/main/java/org/gcube/application/geoportal/service/engine/mongo/ConcessioniMongoManager.java
index afcb221..8cdfc95 100644
--- a/geoportal-service/src/main/java/org/gcube/application/geoportal/service/engine/mongo/ConcessioniMongoManager.java
+++ b/geoportal-service/src/main/java/org/gcube/application/geoportal/service/engine/mongo/ConcessioniMongoManager.java
@@ -316,7 +316,7 @@ public class ConcessioniMongoManager extends MongoManager{
index.removeCentroid(record);
report.addMessage(ValidationStatus.PASSED, "Removed centroid");
} catch (SDIInteractionException | SQLException | ConfigurationException e) {
- log.error("Unable to reove from index {} ",record,e);
+ log.error("Unable to remove from index {} ",record,e);
report.addMessage(ValidationStatus.WARNING, "Internal error while removing from index.");
}
return record;
@@ -386,16 +386,24 @@ public class ConcessioniMongoManager extends MongoManager{
try {
sdi.deleteContent((GeoServerContent) p);
toRemove.add(p);
- } catch (MalformedURLException e) {
- e.printStackTrace();
- } catch (RemoteServiceException e) {
- e.printStackTrace();
+ } catch (Throwable t) {
+ report.addMessage(ValidationStatus.WARNING,"Cannot delete "+((GeoServerContent) p).getFeatureType());
}
}
}
+ // Remove GIS coordinates
+ ((LayerConcessione) c).setLayerID(null);
+ ((LayerConcessione) c).setBbox(null);
+ ((LayerConcessione) c).setWmsLink(null);
+ ((LayerConcessione) c).setWorkspace(null);
+
+ //Remove reference to removed content
c.getActualContent().removeAll(toRemove);
}
}
+
+ concessione.setCentroidLat(null);
+ concessione.setCentroidLong(null);
}catch(SDIInteractionException e){
report.addMessage(ValidationStatus.WARNING, "Unable to unpublish layers "+e.getMessage());
}
diff --git a/geoportal-service/src/test/java/org/gcube/application/geoportal/service/ConcessioniOverMongoTest.java b/geoportal-service/src/test/java/org/gcube/application/geoportal/service/ConcessioniOverMongoTest.java
index b8ffc04..15cdc48 100644
--- a/geoportal-service/src/test/java/org/gcube/application/geoportal/service/ConcessioniOverMongoTest.java
+++ b/geoportal-service/src/test/java/org/gcube/application/geoportal/service/ConcessioniOverMongoTest.java
@@ -268,6 +268,8 @@ public class ConcessioniOverMongoTest extends BasicServiceTestUnit{
//Expecting error for deletion
assertTrue(resp.getStatus()>=300);
System.out.println("Error for deletion is "+resp.readEntity(String.class));
+
+ //unpublish
resp=
target.path(InterfaceConstants.Methods.PUBLISH_PATH).path(published.getMongo_id()).
request(MediaType.APPLICATION_JSON).delete();
diff --git a/geoportal-service/src/test/java/org/gcube/application/geoportal/service/engine/caches/Caches.java b/geoportal-service/src/test/java/org/gcube/application/geoportal/service/engine/caches/Caches.java
index 95b29d3..00c5081 100644
--- a/geoportal-service/src/test/java/org/gcube/application/geoportal/service/engine/caches/Caches.java
+++ b/geoportal-service/src/test/java/org/gcube/application/geoportal/service/engine/caches/Caches.java
@@ -123,10 +123,11 @@ public class Caches extends BasicServiceTestUnit {
@Override
public void run() {
try {
-// System.out.println(ImplementationProvider.get().getStorageProvider().getObject().getURL(id));
- storage.getURL(id);
-// } catch (ConfigurationException e) {
-// e.printStackTrace();
+ try {Thread.sleep(1000);} catch (InterruptedException i) {}
+ System.out.println(ImplementationProvider.get().getStorageProvider().getObject().getURL(id));
+// storage.getURL(id);
+ } catch (ConfigurationException e) {
+ e.printStackTrace();
} catch (MongoWaitQueueFullException e) {
log.info("Too many connections... ");
}finally{
diff --git a/geoportal-service/src/test/resources/logback.xml b/geoportal-service/src/test/resources/logback.xml
index 8ec1f7c..ef54588 100644
--- a/geoportal-service/src/test/resources/logback.xml
+++ b/geoportal-service/src/test/resources/logback.xml
@@ -10,7 +10,7 @@
-
+
diff --git a/pom.xml b/pom.xml
index bc646ea..bec41f5 100644
--- a/pom.xml
+++ b/pom.xml
@@ -25,9 +25,9 @@
- scm:git:${gitBaseUrl}/${project.artifactId}.git
- scm:git:${gitBaseUrl}/${project.artifactId}.git
- ${gitBaseUrl}/${project.artifactId}.git
+ scm:git:${gitBaseUrl}/gcube-cms-suite
+ scm:git:${gitBaseUrl}/gcube-cms-suite
+ ${gitBaseUrl}/gcube-cms-suite
diff --git a/use-cases/CHANGELOG.md b/use-cases/CHANGELOG.md
index af727d5..ab99ae3 100644
--- a/use-cases/CHANGELOG.md
+++ b/use-cases/CHANGELOG.md
@@ -3,4 +3,4 @@ This project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.htm
# Changelog for org.gcube.application.geoportal-client
## [v1.0.0] - 2021-09-20
-First release, extracted from client
+First release, extracted from client
\ No newline at end of file
diff --git a/use-cases/pom.xml b/use-cases/pom.xml
index 0c20fba..646bac3 100644
--- a/use-cases/pom.xml
+++ b/use-cases/pom.xml
@@ -18,9 +18,9 @@
- scm:git:${gitBaseUrl}/${project.artifactId}.git
- scm:git:${gitBaseUrl}/${project.artifactId}.git
- ${gitBaseUrl}/${project.artifactId}.git
+ scm:git:${gitBaseUrl}/gcube-cms-suite
+ scm:git:${gitBaseUrl}/gcube-cms-suite
+ ${gitBaseUrl}/gcube-cms-suite
diff --git a/use-cases/src/test/java/org/gcube/application/cms/usecases/ClearConcessioni.java b/use-cases/src/test/java/org/gcube/application/cms/usecases/ClearConcessioni.java
index 7103a6e..b065cf3 100644
--- a/use-cases/src/test/java/org/gcube/application/cms/usecases/ClearConcessioni.java
+++ b/use-cases/src/test/java/org/gcube/application/cms/usecases/ClearConcessioni.java
@@ -35,7 +35,7 @@ public class ClearConcessioni {
Iterator it=null;
// it=manager.getList();
- it=manager.search("{\"creationUser\" : {\"$ne\" : \"francesco.mangiacrapa\"}}");
+ it=manager.search("{\"creationUser\" : {\"$exists\" : \"false\"}}");
ExecutorService service = Executors.newFixedThreadPool(10);
@@ -62,6 +62,7 @@ public class ClearConcessioni {
}catch(Throwable throwable){
System.err.println(throwable);
errCount.incrementAndGet();
+ try {Thread.sleep(1000);} catch (InterruptedException i) {}
}finally {
count.incrementAndGet();
}
diff --git a/use-cases/src/test/java/org/gcube/application/cms/usecases/StressTest.java b/use-cases/src/test/java/org/gcube/application/cms/usecases/StressTest.java
index eb23ef1..2412cdc 100644
--- a/use-cases/src/test/java/org/gcube/application/cms/usecases/StressTest.java
+++ b/use-cases/src/test/java/org/gcube/application/cms/usecases/StressTest.java
@@ -4,8 +4,13 @@ import lombok.extern.slf4j.Slf4j;
import org.gcube.application.cms.tests.TokenSetter;
import org.gcube.application.cms.tests.model.TestModel;
import org.gcube.application.geoportal.common.model.legacy.Concessione;
+import org.gcube.application.geoportal.common.model.rest.AddSectionToConcessioneRequest;
import org.gcube.application.geoportal.common.rest.MongoConcessioni;
+import org.gcube.application.geoportal.common.utils.FileSets;
+import org.gcube.application.geoportal.common.utils.StorageUtils;
+import java.io.File;
+import java.io.FileNotFoundException;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
import java.util.concurrent.TimeUnit;
@@ -17,26 +22,33 @@ import static org.gcube.application.geoportal.client.GeoportalAbstractPlugin.mon
public class StressTest {
- private static ExecutorService service = Executors.newFixedThreadPool(100);
+ private static ExecutorService service = Executors.newFixedThreadPool(5);
- public static void main(String[] args) {
+ public static void main(String[] args) throws FileNotFoundException {
TokenSetter.set("/gcube/devsec/devVRE");
AtomicLong executed=new AtomicLong(0);
- int numRequests=10000;
+ AddSectionToConcessioneRequest request= FileSets.prepareRequest(
+ new StorageUtils(), Concessione.Paths.RELAZIONE,new File(TestModel.getBaseFolder(),"relazione.pdf"));
+
+ int numRequests=100000;
for(int i=0;i