From 43ddf88ba89ae940861a10c37274b2a00b1a70d5 Mon Sep 17 00:00:00 2001 From: Fabio Sinibaldi Date: Mon, 12 Sep 2022 18:29:00 +0200 Subject: [PATCH] Available collections panel --- .classpath | 39 ---- .gitignore | 2 - .project | 47 ----- .../com.gwtplugins.gdt.eclipse.core.prefs | 4 - .../com.gwtplugins.gwt.eclipse.core.prefs | 2 - .settings/org.eclipse.jdt.core.prefs | 11 -- .settings/org.eclipse.wst.common.component | 171 ------------------ ....eclipse.wst.common.project.facet.core.xml | 7 - pom.xml | 10 +- .../client/GeoportalDataViewer.java | 3 + .../client/ui/GeonaDataViewMainPanel.java | 102 ++++++++--- .../client/ui/GeonaDataViewMainPanel.ui.xml | 17 +- .../mongoservice/ConcessioniMongoService.java | 66 ------- .../ConcessioniMongoServiceIdentityProxy.java | 5 +- .../shared/GCubeCollection.java | 15 +- .../shared/gis/IndexLayer.java | 5 + .../ConcessioneReader.java | 60 ------ 17 files changed, 122 insertions(+), 444 deletions(-) delete mode 100644 .classpath delete mode 100644 .gitignore delete mode 100644 .project delete mode 100644 .settings/com.gwtplugins.gdt.eclipse.core.prefs delete mode 100644 .settings/com.gwtplugins.gwt.eclipse.core.prefs delete mode 100644 .settings/org.eclipse.jdt.core.prefs delete mode 100644 .settings/org.eclipse.wst.common.component delete mode 100644 .settings/org.eclipse.wst.common.project.facet.core.xml delete mode 100644 src/main/java/org/gcube/portlets/user/geoportaldataviewer/server/mongoservice/ConcessioniMongoService.java create mode 100644 src/main/java/org/gcube/portlets/user/geoportaldataviewer/shared/gis/IndexLayer.java delete mode 100644 src/test/java/org/gcube/portlets/user/geoportaldataviewer/ConcessioneReader.java diff --git a/.classpath b/.classpath deleted file mode 100644 index c1c10e2..0000000 --- a/.classpath +++ /dev/null @@ -1,39 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/.gitignore b/.gitignore deleted file mode 100644 index 09e3bc9..0000000 --- a/.gitignore +++ /dev/null @@ -1,2 +0,0 @@ -/bin/ -/target/ diff --git a/.project b/.project deleted file mode 100644 index 55933fa..0000000 --- a/.project +++ /dev/null @@ -1,47 +0,0 @@ - - - geoportal-data-viewer-app-ws - - - - - - org.eclipse.jdt.core.javabuilder - - - - - org.eclipse.wst.common.project.facet.core.builder - - - - - com.gwtplugins.gdt.eclipse.core.webAppProjectValidator - - - - - com.gwtplugins.gwt.eclipse.core.gwtProjectValidator - - - - - org.eclipse.wst.validation.validationbuilder - - - - - org.eclipse.m2e.core.maven2Builder - - - - - - org.eclipse.jem.workbench.JavaEMFNature - org.eclipse.wst.common.modulecore.ModuleCoreNature - org.eclipse.jdt.core.javanature - org.eclipse.m2e.core.maven2Nature - org.eclipse.wst.common.project.facet.core.nature - com.gwtplugins.gwt.eclipse.core.gwtNature - - diff --git a/.settings/com.gwtplugins.gdt.eclipse.core.prefs b/.settings/com.gwtplugins.gdt.eclipse.core.prefs deleted file mode 100644 index c19da06..0000000 --- a/.settings/com.gwtplugins.gdt.eclipse.core.prefs +++ /dev/null @@ -1,4 +0,0 @@ -eclipse.preferences.version=1 -lastWarOutDir=/home/francescomangiacrapa/git/geoportal-data-viewer-app/target/geoportal-data-viewer-app-2.3.0-SNAPSHOT -warSrcDir=src/main/webapp -warSrcDirIsOutput=false diff --git a/.settings/com.gwtplugins.gwt.eclipse.core.prefs b/.settings/com.gwtplugins.gwt.eclipse.core.prefs deleted file mode 100644 index 65cc113..0000000 --- a/.settings/com.gwtplugins.gwt.eclipse.core.prefs +++ /dev/null @@ -1,2 +0,0 @@ -eclipse.preferences.version=1 -gwtSyncCodeServer=true diff --git a/.settings/org.eclipse.jdt.core.prefs b/.settings/org.eclipse.jdt.core.prefs deleted file mode 100644 index ca4c66e..0000000 --- a/.settings/org.eclipse.jdt.core.prefs +++ /dev/null @@ -1,11 +0,0 @@ -eclipse.preferences.version=1 -org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled -org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8 -org.eclipse.jdt.core.compiler.compliance=1.8 -org.eclipse.jdt.core.compiler.problem.assertIdentifier=error -org.eclipse.jdt.core.compiler.problem.enablePreviewFeatures=disabled -org.eclipse.jdt.core.compiler.problem.enumIdentifier=error -org.eclipse.jdt.core.compiler.problem.forbiddenReference=warning -org.eclipse.jdt.core.compiler.problem.reportPreviewFeatures=warning -org.eclipse.jdt.core.compiler.release=disabled -org.eclipse.jdt.core.compiler.source=1.8 diff --git a/.settings/org.eclipse.wst.common.component b/.settings/org.eclipse.wst.common.component deleted file mode 100644 index 3cb7586..0000000 --- a/.settings/org.eclipse.wst.common.component +++ /dev/null @@ -1,171 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/.settings/org.eclipse.wst.common.project.facet.core.xml b/.settings/org.eclipse.wst.common.project.facet.core.xml deleted file mode 100644 index cd892cb..0000000 --- a/.settings/org.eclipse.wst.common.project.facet.core.xml +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - - diff --git a/pom.xml b/pom.xml index dd48178..2987c57 100644 --- a/pom.xml +++ b/pom.xml @@ -73,13 +73,19 @@ org.gcube.application geoportal-data-common - [1.0.0-SNAPSHOT, 1.5.0-SNAPSHOT) + [1.0.0-SNAPSHOT, 2.0.0-SNAPSHOT) compile + + + org.gcube.application + geoportal-client + + org.gcube.application geoportal-client - [1.0.0, 1.1.0-SNAPSHOT) + [1.0.0, 2.0.0-SNAPSHOT) compile diff --git a/src/main/java/org/gcube/portlets/user/geoportaldataviewer/client/GeoportalDataViewer.java b/src/main/java/org/gcube/portlets/user/geoportaldataviewer/client/GeoportalDataViewer.java index 1a79ec6..9d3eb2b 100644 --- a/src/main/java/org/gcube/portlets/user/geoportaldataviewer/client/GeoportalDataViewer.java +++ b/src/main/java/org/gcube/portlets/user/geoportaldataviewer/client/GeoportalDataViewer.java @@ -371,6 +371,9 @@ public class GeoportalDataViewer implements EntryPoint { applicationBus.addHandler(ZoomOutOverMinimumEvent.TYPE, zoomOutEvent -> { + + + // TODO if (mainPanel.getDisplayedRecord() == null && !olMapMng.isQueryPointActive()) { olMapMng.hidePopInfo(); layerManager.removeAllDetailLayers(); diff --git a/src/main/java/org/gcube/portlets/user/geoportaldataviewer/client/ui/GeonaDataViewMainPanel.java b/src/main/java/org/gcube/portlets/user/geoportaldataviewer/client/ui/GeonaDataViewMainPanel.java index cc7d5b3..dd7678d 100644 --- a/src/main/java/org/gcube/portlets/user/geoportaldataviewer/client/ui/GeonaDataViewMainPanel.java +++ b/src/main/java/org/gcube/portlets/user/geoportaldataviewer/client/ui/GeonaDataViewMainPanel.java @@ -2,10 +2,8 @@ package org.gcube.portlets.user.geoportaldataviewer.client.ui; import java.util.List; -import org.gcube.application.geoportalcommon.shared.GeoNaItemRef; import org.gcube.application.geoportalcommon.shared.ItemField; import org.gcube.application.geoportalcommon.shared.SearchingFilter; -import org.gcube.application.geoportalcommon.shared.products.ConcessioneDV; import org.gcube.application.geoportalcommon.shared.products.model.RecordDV; import org.gcube.portlets.user.geoportaldataviewer.client.GeoportalDataViewerConstants.MAP_PROJECTION; import org.gcube.portlets.user.geoportaldataviewer.client.events.application.ChangeBaseMapLayerEvent; @@ -15,16 +13,16 @@ import org.gcube.portlets.user.geoportaldataviewer.client.resources.GNAIcons; import org.gcube.portlets.user.geoportaldataviewer.client.resources.GNAImages; import org.gcube.portlets.user.geoportaldataviewer.client.ui.map.ExtentMapUtil; import org.gcube.portlets.user.geoportaldataviewer.client.ui.map.ExtentMapUtil.Location; +import org.gcube.portlets.user.geoportaldataviewer.shared.GCubeCollection; import org.gcube.portlets.user.geoportaldataviewer.shared.gis.BaseMapLayer; import com.github.gwtbootstrap.client.ui.Button; +import com.github.gwtbootstrap.client.ui.CheckBox; import com.github.gwtbootstrap.client.ui.DropdownButton; import com.github.gwtbootstrap.client.ui.NavLink; import com.github.gwtbootstrap.client.ui.Paragraph; import com.github.gwtbootstrap.client.ui.constants.IconType; import com.google.gwt.core.client.GWT; -import com.google.gwt.core.client.Scheduler; -import com.google.gwt.core.client.Scheduler.ScheduledCommand; import com.google.gwt.dom.client.Style.Unit; import com.google.gwt.event.dom.client.ClickEvent; import com.google.gwt.event.dom.client.ClickHandler; @@ -92,14 +90,26 @@ public class GeonaDataViewMainPanel extends Composite { @UiField Button linkLayers; + + //TODO Search By Collection, postponed +// @UiField +// DropdownButton searchFacilityButton; +// +// @UiField +// ScrollPanel searchFacilityPanel; +// + @UiField - DropdownButton searchFacilityButton; + DropdownButton openCollectionDropDown; + @UiField + HTMLPanel openCollectionPanel; + + @UiField ScrollPanel overlayLayersPanel; - @UiField - ScrollPanel searchFacilityPanel; + @UiField HTMLPanel panelAttribution; @@ -128,7 +138,8 @@ public class GeonaDataViewMainPanel extends Composite { * @param applicationBus the application bus * @param mapHeight the map height */ - public GeonaDataViewMainPanel(HandlerManager applicationBus, int mapHeight, List sortByFields, + public GeonaDataViewMainPanel(HandlerManager applicationBus, int mapHeight, + List sortByFields, List searchForFields, SearchingFilter initialSortFilter) { initWidget(uiBinder.createAndBindUi(this)); this.applicationBus = applicationBus; @@ -155,6 +166,11 @@ public class GeonaDataViewMainPanel extends Composite { linkPresetLocation.setCustomIconStyle(GNAIcons.CustomIconType.PRESET_LOCATION.get()); linkLayers.setCustomIconStyle(GNAIcons.CustomIconType.LAYERS.get()); + openCollectionDropDown.setCustomIconStyle(GNAIcons.CustomIconType.MAP.get()); + + + + // TODO GWT.log("!!! NB TODO : Search facility is skipped "); @@ -174,6 +190,9 @@ public class GeonaDataViewMainPanel extends Composite { // // }); + + + // layersDDB.setToggle(true); bindEvents(); @@ -196,15 +215,17 @@ public class GeonaDataViewMainPanel extends Composite { } }); - searchFacilityButton.addDomHandler(new ClickHandler() { - - @Override - public void onClick(ClickEvent event) { - //event.preventDefault(); - event.stopPropagation(); - - } - }, ClickEvent.getType()); + + // TODO Search +// searchFacilityButton.addDomHandler(new ClickHandler() { +// +// @Override +// public void onClick(ClickEvent event) { +// //event.preventDefault(); +// event.stopPropagation(); +// +// } +// }, ClickEvent.getType()); } @@ -313,16 +334,19 @@ public class GeonaDataViewMainPanel extends Composite { } - /** - * Show as details. - * - * @param concessioneDV the concessione DV - * @param geonaItemRef the geona item ref - */ - public void showAsDetails(ConcessioneDV concessioneDV, GeoNaItemRef geonaItemRef) { - detailsPanel.showDetailsFor(concessioneDV, geonaItemRef); - - } + + // TODO Generic Open Details + +// /** +// * Show as details. +// * +// * @param concessioneDV the concessione DV +// * @param geonaItemRef the geona item ref +// */ +// public void showAsDetails(ConcessioneDV concessioneDV, GeoNaItemRef geonaItemRef) { +// detailsPanel.showDetailsFor(concessioneDV, geonaItemRef); +// +// } /** * Hide panel details. @@ -332,6 +356,9 @@ public class GeonaDataViewMainPanel extends Composite { } + + // TODO Check method + /** * Gets the displyed record. * @@ -399,6 +426,27 @@ public class GeonaDataViewMainPanel extends Composite { panelAttribution.add(p); } + + public void setAvailableCollections(List toSetAvailableCollections) { + GWT.log("Init Available collections menu"); + if(toSetAvailableCollections == null || toSetAvailableCollections.isEmpty()) + GWT.log("!!! No Available collections"); + + + for(GCubeCollection coll : toSetAvailableCollections) { + String label = coll.getUcd().getName(); + String id=coll.getUcd().getId(); + + CheckBox checkbox = new CheckBox(label); + checkbox.setId("gcubeCollectionSelector_"+id); + openCollectionPanel.add(checkbox); + } + + + } + + + public void setBaseLayers(List listBaseLayers) { if(listBaseLayers==null) diff --git a/src/main/java/org/gcube/portlets/user/geoportaldataviewer/client/ui/GeonaDataViewMainPanel.ui.xml b/src/main/java/org/gcube/portlets/user/geoportaldataviewer/client/ui/GeonaDataViewMainPanel.ui.xml index 22022a9..51c4726 100644 --- a/src/main/java/org/gcube/portlets/user/geoportaldataviewer/client/ui/GeonaDataViewMainPanel.ui.xml +++ b/src/main/java/org/gcube/portlets/user/geoportaldataviewer/client/ui/GeonaDataViewMainPanel.ui.xml @@ -35,16 +35,29 @@ - - + --> + + + + + + + + + + + diff --git a/src/main/java/org/gcube/portlets/user/geoportaldataviewer/server/mongoservice/ConcessioniMongoService.java b/src/main/java/org/gcube/portlets/user/geoportaldataviewer/server/mongoservice/ConcessioniMongoService.java deleted file mode 100644 index 2d1dc18..0000000 --- a/src/main/java/org/gcube/portlets/user/geoportaldataviewer/server/mongoservice/ConcessioniMongoService.java +++ /dev/null @@ -1,66 +0,0 @@ -package org.gcube.portlets.user.geoportaldataviewer.server.mongoservice; - -import static org.gcube.application.geoportal.client.GeoportalAbstractPlugin.statefulMongoConcessioni; - -import org.gcube.application.geoportal.client.legacy.ConcessioniManagerI; -import org.gcube.application.geoportal.common.model.legacy.Concessione; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; - - -/** - * The Class ConcessioniMongoService. - * - * @author Francesco Mangiacrapa at ISTI-CNR francesco.mangiacrapa@isti.cnr.it - * - * Sep 23, 2021 - */ -public class ConcessioniMongoService { - - private static final Logger LOG = LoggerFactory.getLogger(ConcessioniMongoService.class); - - /** - * Instantiates a new concessioni mongo service. - */ - protected ConcessioniMongoService() { - } - - /** - * Gets the item by id. - * - * @param mongoItemId the mongo item id - * @return the item by id - * @throws Exception the exception - */ - protected Concessione getItemById(String mongoItemId) throws Exception { - LOG.info("called getItemById: " + mongoItemId); - ConcessioniManagerI concessioniManager = statefulMongoConcessioni().build(); - // Returning item by Id - return concessioniManager.getById(mongoItemId); - } - - - /** - * To concessione. - * - * @param jsonString the json string - * @return the concessione - */ - protected Concessione toConcessione(String jsonString) { - LOG.info("toConcessione called"); - try { - return org.gcube.application.geoportal.client.utils.Serialization.read(jsonString, Concessione.class); - } catch (Exception e) { - LOG.warn("Error on serializing: ", e); - return null; - } - } - - /* - * For testing public Concessione iamClientGetItemBy(HttpServletRequest request, - * String mongoItemId, String clientId, String secret) throws Exception { String - * scope = SessionUtil.getCurrentContext(request, true); return - * iamClientGetItemBy(scope, mongoItemId, clientId, secret); } - */ - -} diff --git a/src/main/java/org/gcube/portlets/user/geoportaldataviewer/server/mongoservice/ConcessioniMongoServiceIdentityProxy.java b/src/main/java/org/gcube/portlets/user/geoportaldataviewer/server/mongoservice/ConcessioniMongoServiceIdentityProxy.java index 5fd7bb7..cadd38f 100644 --- a/src/main/java/org/gcube/portlets/user/geoportaldataviewer/server/mongoservice/ConcessioniMongoServiceIdentityProxy.java +++ b/src/main/java/org/gcube/portlets/user/geoportaldataviewer/server/mongoservice/ConcessioniMongoServiceIdentityProxy.java @@ -67,9 +67,10 @@ public class ConcessioniMongoServiceIdentityProxy { try { // Obtain the client - ConcessioniMongoService concessioniManager = new ConcessioniMongoService(); +// ConcessioniMongoService concessioniManager = new ConcessioniMongoService(); // Returning item by Id - return concessioniManager.getItemById(mongoItemId); +// return concessioniManager.getItemById(mongoItemId); + return null; }catch(Exception e) { LOG.error("Error on reading itemById: "+mongoItemId, e); throw(e); diff --git a/src/main/java/org/gcube/portlets/user/geoportaldataviewer/shared/GCubeCollection.java b/src/main/java/org/gcube/portlets/user/geoportaldataviewer/shared/GCubeCollection.java index 38c3841..36ea3b8 100644 --- a/src/main/java/org/gcube/portlets/user/geoportaldataviewer/shared/GCubeCollection.java +++ b/src/main/java/org/gcube/portlets/user/geoportaldataviewer/shared/GCubeCollection.java @@ -2,13 +2,24 @@ package org.gcube.portlets.user.geoportaldataviewer.shared; import java.io.Serializable; +import java.util.List; + +import org.gcube.application.geoportal.common.model.useCaseDescriptor.UseCaseDescriptor; +import org.gcube.portlets.user.geoportaldataviewer.shared.gis.IndexLayer; public class GCubeCollection implements Serializable { -// private Document ucd; -// private List indexes; + private UseCaseDescriptor ucd; + private List indexes; + public UseCaseDescriptor getUcd() { + return ucd; + } + + public List getIndexes() { + return indexes; + } } diff --git a/src/main/java/org/gcube/portlets/user/geoportaldataviewer/shared/gis/IndexLayer.java b/src/main/java/org/gcube/portlets/user/geoportaldataviewer/shared/gis/IndexLayer.java new file mode 100644 index 0000000..c79d071 --- /dev/null +++ b/src/main/java/org/gcube/portlets/user/geoportaldataviewer/shared/gis/IndexLayer.java @@ -0,0 +1,5 @@ +package org.gcube.portlets.user.geoportaldataviewer.shared.gis; + +public class IndexLayer { + +} diff --git a/src/test/java/org/gcube/portlets/user/geoportaldataviewer/ConcessioneReader.java b/src/test/java/org/gcube/portlets/user/geoportaldataviewer/ConcessioneReader.java deleted file mode 100644 index dce5720..0000000 --- a/src/test/java/org/gcube/portlets/user/geoportaldataviewer/ConcessioneReader.java +++ /dev/null @@ -1,60 +0,0 @@ -package org.gcube.portlets.user.geoportaldataviewer; - -import static org.gcube.application.geoportal.client.GeoportalAbstractPlugin.statefulMongoConcessioni; - -import org.gcube.application.geoportal.client.legacy.ConcessioniManagerI; -import org.gcube.application.geoportal.common.model.legacy.Concessione; -import org.gcube.application.geoportalcommon.ConvertToDataViewModel; -import org.gcube.application.geoportalcommon.shared.products.ConcessioneDV; -import org.gcube.common.authorization.library.provider.SecurityTokenProvider; -import org.gcube.common.scope.api.ScopeProvider; - -public class ConcessioneReader { - - private static final String YOUR_TOKEN = ""; - - public static String SCOPE = "/gcube/devsec/devVRE"; - public static String mongoConcessioneID = "6102c07002ad3d05b5f81ddc"; - - //@Before - public void setEnviroment() { - ScopeProvider.instance.set(SCOPE); - SecurityTokenProvider.instance.set(YOUR_TOKEN); - - } - - //@Test - public void readConcessione() throws Exception { - System.out.println("getConcessioneForId " + mongoConcessioneID + "called"); - - ConcessioneDV concessionDV = null; - - if (mongoConcessioneID == null) - throw new Exception("Invalid parameter. The Id is null"); - - try { - System.out.println("Trying to get record for id " + mongoConcessioneID); - ConcessioniManagerI concessioniManager = statefulMongoConcessioni().build(); - Concessione concessione = concessioniManager.getById(mongoConcessioneID); - System.out.println("For id " + mongoConcessioneID + ", got concessione " + concessione); - System.out.println("Immagini Rappresentative are: " + concessione.getImmaginiRappresentative()); - System.out.println("Relazione scavo: " + concessione.getRelazioneScavo()); - System.out.println("Pianta Fine scavo: " + concessione.getPianteFineScavo()); - System.out.println("Posizionamento scavo: " + concessione.getPosizionamentoScavo()); - - if (concessione != null) { - concessionDV = ConvertToDataViewModel.toConcessione(concessione); - } - - if (concessionDV == null) - throw new Exception("Concessione not retrieved"); - - System.out.println("Got concessione: " + concessionDV); - - } catch (Exception e) { - String erroMsg = Concessione.class.getSimpleName() + " with id " + mongoConcessioneID + " not available"; - throw new Exception(erroMsg); - } - } - -}