refactored

This commit is contained in:
Francesco Mangiacrapa 2022-10-18 17:32:12 +02:00
parent a3c10d1b18
commit 9b0d36f232
18 changed files with 334 additions and 46 deletions

View File

@ -5,7 +5,7 @@ import java.util.List;
import java.util.Set; import java.util.Set;
import org.gcube.application.geoportalcommon.shared.GNADataViewerConfigProfile; import org.gcube.application.geoportalcommon.shared.GNADataViewerConfigProfile;
import org.gcube.application.geoportalcommon.shared.GeoNaItemRef; import org.gcube.application.geoportalcommon.shared.GeoportalItemReferences;
import org.gcube.application.geoportalcommon.shared.geoportal.DocumentDV; import org.gcube.application.geoportalcommon.shared.geoportal.DocumentDV;
import org.gcube.application.geoportalcommon.shared.geoportal.materialization.IndexLayerDV; import org.gcube.application.geoportalcommon.shared.geoportal.materialization.IndexLayerDV;
import org.gcube.application.geoportalcommon.shared.geoportal.view.ProjectView; import org.gcube.application.geoportalcommon.shared.geoportal.view.ProjectView;
@ -225,7 +225,7 @@ public class GeoportalDataViewer implements EntryPoint {
+ paramGeonaItemID); + paramGeonaItemID);
return; return;
} }
GeoNaItemRef gir = new GeoNaItemRef(paramGeonaItemID, paramGeonaItemType); GeoportalItemReferences gir = new GeoportalItemReferences(paramGeonaItemID, paramGeonaItemType);
applicationBus.fireEvent(new ShowDetailsEvent(gir, null, null)); applicationBus.fireEvent(new ShowDetailsEvent(gir, null, null));
} }

View File

@ -3,7 +3,7 @@ package org.gcube.portlets.user.geoportaldataviewer.client;
import java.util.List; import java.util.List;
import org.gcube.application.geoportalcommon.shared.GNADataViewerConfigProfile; import org.gcube.application.geoportalcommon.shared.GNADataViewerConfigProfile;
import org.gcube.application.geoportalcommon.shared.GeoNaItemRef; import org.gcube.application.geoportalcommon.shared.GeoportalItemReferences;
import org.gcube.application.geoportalcommon.shared.ResultSetPaginatedData; import org.gcube.application.geoportalcommon.shared.ResultSetPaginatedData;
import org.gcube.application.geoportalcommon.shared.SearchingFilter; import org.gcube.application.geoportalcommon.shared.SearchingFilter;
import org.gcube.application.geoportalcommon.shared.geoportal.materialization.GCubeSDIViewerLayerDV; import org.gcube.application.geoportalcommon.shared.geoportal.materialization.GCubeSDIViewerLayerDV;
@ -105,7 +105,7 @@ public interface GeoportalDataViewerService extends RemoteService {
* @return the public links for * @return the public links for
* @throws Exception the exception * @throws Exception the exception
*/ */
GeoNaItemRef getPublicLinksFor(GeoNaItemRef item) throws Exception; GeoportalItemReferences getPublicLinksFor(GeoportalItemReferences item) throws Exception;
/** /**
* Gets the layers for id. * Gets the layers for id.

View File

@ -3,7 +3,7 @@ package org.gcube.portlets.user.geoportaldataviewer.client;
import java.util.List; import java.util.List;
import org.gcube.application.geoportalcommon.shared.GNADataViewerConfigProfile; import org.gcube.application.geoportalcommon.shared.GNADataViewerConfigProfile;
import org.gcube.application.geoportalcommon.shared.GeoNaItemRef; import org.gcube.application.geoportalcommon.shared.GeoportalItemReferences;
import org.gcube.application.geoportalcommon.shared.ResultSetPaginatedData; import org.gcube.application.geoportalcommon.shared.ResultSetPaginatedData;
import org.gcube.application.geoportalcommon.shared.SearchingFilter; import org.gcube.application.geoportalcommon.shared.SearchingFilter;
import org.gcube.application.geoportalcommon.shared.geoportal.materialization.GCubeSDIViewerLayerDV; import org.gcube.application.geoportalcommon.shared.geoportal.materialization.GCubeSDIViewerLayerDV;
@ -56,7 +56,7 @@ public interface GeoportalDataViewerServiceAsync {
void getUploadedImagesForId(String itemType, String itemId, Integer maxImages, void getUploadedImagesForId(String itemType, String itemId, Integer maxImages,
AsyncCallback<List<UploadedImageDV>> callback); AsyncCallback<List<UploadedImageDV>> callback);
void getPublicLinksFor(GeoNaItemRef item, AsyncCallback<GeoNaItemRef> asyncCallback); void getPublicLinksFor(GeoportalItemReferences item, AsyncCallback<GeoportalItemReferences> asyncCallback);
void getLayersForId(String theProfileID, String theProductID, AsyncCallback<List<GCubeSDIViewerLayerDV>> asyncCallback); void getLayersForId(String theProfileID, String theProductID, AsyncCallback<List<GCubeSDIViewerLayerDV>> asyncCallback);

View File

@ -331,7 +331,8 @@ public class LayerManager {
List<GCubeSDIViewerLayerDV> result) { List<GCubeSDIViewerLayerDV> result) {
for (GCubeSDIViewerLayerDV layer : result) { for (GCubeSDIViewerLayerDV layer : result) {
GWT.log("Adding layer: " + layer.getLayerName()); GWT.log("Adding layer: "
+ layer.getLayerName());
addLayer(LayerObjectType.PROJECT_LAYER, addLayer(LayerObjectType.PROJECT_LAYER,
layer.getLayerName(), layer.getLayerName(),
layer.getLayerName(), layer.getLayerName(),
@ -455,10 +456,6 @@ public class LayerManager {
GWT.log("Layers management : Add layer " + object); GWT.log("Layers management : Add layer " + object);
switch (object.getType()) { switch (object.getType()) {
case BASE_LAYER: {
GWT.log("ERROR : cannot add base layers ");
break;
}
case GENERIC_LAYER: { case GENERIC_LAYER: {
GWT.log("SUPPORT TO EXTERNAL LAYERS TO BE IMPLEMENTED"); GWT.log("SUPPORT TO EXTERNAL LAYERS TO BE IMPLEMENTED");
break; break;
@ -541,6 +538,15 @@ public class LayerManager {
lo.setType(lot); lo.setType(lot);
lo.setProjectId(projectID); lo.setProjectId(projectID);
switch (lot) {
case INDEX_LAYER:
break;
case PROJECT_LAYER:
default:
break;
}
String key = layerItem.getName(); // should be unique // String key = layerItem.getName(); // should be unique //
// layerObjects.put(key, lo); // layerObjects.put(key, lo);

View File

@ -1,6 +1,6 @@
package org.gcube.portlets.user.geoportaldataviewer.client.events; package org.gcube.portlets.user.geoportaldataviewer.client.events;
import org.gcube.application.geoportalcommon.shared.GeoNaItemRef; import org.gcube.application.geoportalcommon.shared.GeoportalItemReferences;
import org.gcube.portlets.user.geoportaldataviewer.shared.gis.wfs.FeatureRow; import org.gcube.portlets.user.geoportaldataviewer.shared.gis.wfs.FeatureRow;
import com.google.gwt.event.shared.GwtEvent; import com.google.gwt.event.shared.GwtEvent;
@ -45,7 +45,7 @@ public class ShowDetailsEvent extends GwtEvent<ShowDetailsEventHandler> {
* @param itemName the item name * @param itemName the item name
* @param featureRow the feature row * @param featureRow the feature row
*/ */
public ShowDetailsEvent(GeoNaItemRef gir, String itemName, FeatureRow featureRow) { public ShowDetailsEvent(GeoportalItemReferences gir, String itemName, FeatureRow featureRow) {
this.layerObjectType = gir.getLayerObjectType(); this.layerObjectType = gir.getLayerObjectType();
this.profileID = gir.getProfileID(); this.profileID = gir.getProfileID();
this.projectID = gir.getProjectID(); this.projectID = gir.getProjectID();
@ -122,8 +122,8 @@ public class ShowDetailsEvent extends GwtEvent<ShowDetailsEventHandler> {
* *
* @return the geona item ref * @return the geona item ref
*/ */
public GeoNaItemRef getGeonaItemRef() { public GeoportalItemReferences getGeonaItemRef() {
return new GeoNaItemRef(projectID, profileID, layerObjectType); return new GeoportalItemReferences(projectID, profileID, layerObjectType);
} }
} }

View File

@ -1,6 +1,6 @@
package org.gcube.portlets.user.geoportaldataviewer.client.ui; package org.gcube.portlets.user.geoportaldataviewer.client.ui;
import org.gcube.application.geoportalcommon.shared.GeoNaItemRef; import org.gcube.application.geoportalcommon.shared.GeoportalItemReferences;
import org.gcube.application.geoportalcommon.shared.geoportal.view.ProjectView; import org.gcube.application.geoportalcommon.shared.geoportal.view.ProjectView;
import org.gcube.portlets.user.geoportaldataviewer.client.events.ClosedViewDetailsEvent; import org.gcube.portlets.user.geoportaldataviewer.client.events.ClosedViewDetailsEvent;
import org.gcube.portlets.user.geoportaldataviewer.client.ui.cms.project.ProjectViewer; import org.gcube.portlets.user.geoportaldataviewer.client.ui.cms.project.ProjectViewer;
@ -62,7 +62,7 @@ public class DetailsPanel extends Composite {
} }
public void showDetailsFor(ProjectView result, GeoNaItemRef geonaItemRef) { public void showDetailsFor(ProjectView result, GeoportalItemReferences geonaItemRef) {
this.displayedProject = result; this.displayedProject = result;
datailsContainerPanel.clear(); datailsContainerPanel.clear();

View File

@ -4,7 +4,7 @@ import java.util.ArrayList;
import java.util.Collection; import java.util.Collection;
import java.util.List; import java.util.List;
import org.gcube.application.geoportalcommon.shared.GeoNaItemRef; import org.gcube.application.geoportalcommon.shared.GeoportalItemReferences;
import org.gcube.application.geoportalcommon.shared.SearchingFilter; import org.gcube.application.geoportalcommon.shared.SearchingFilter;
import org.gcube.application.geoportalcommon.shared.SearchingFilter.ORDER; import org.gcube.application.geoportalcommon.shared.SearchingFilter.ORDER;
import org.gcube.application.geoportalcommon.shared.geoportal.config.ItemFieldDV; import org.gcube.application.geoportalcommon.shared.geoportal.config.ItemFieldDV;
@ -379,7 +379,7 @@ public class GeonaDataViewMainPanel extends Composite {
* @param result the result * @param result the result
* @param geonaItemRef the geona item ref * @param geonaItemRef the geona item ref
*/ */
public void showAsDetails(ProjectView result, GeoNaItemRef geonaItemRef) { public void showAsDetails(ProjectView result, GeoportalItemReferences geonaItemRef) {
detailsPanel.showDetailsFor(result, geonaItemRef); detailsPanel.showDetailsFor(result, geonaItemRef);
} }

View File

@ -313,7 +313,7 @@
// //
// @Override // @Override
// public void onClick(ClickEvent event) { // public void onClick(ClickEvent event) {
// GeoNaItemRef gir = new GeoNaItemRef(concessione.getItemId(), GeoportalDataViewerConstants.RECORD_TYPE.CONCESSIONE.toString()); // GeoportalItemReferences gir = new GeoportalItemReferences(concessione.getItemId(), GeoportalDataViewerConstants.RECORD_TYPE.CONCESSIONE.toString());
// appManagerBus.fireEvent(new ShowDetailsEvent(gir, null, null)); // appManagerBus.fireEvent(new ShowDetailsEvent(gir, null, null));
// appManagerBus.fireEvent(new ShowPopupOnCentroiEvent(concessione)); // appManagerBus.fireEvent(new ShowPopupOnCentroiEvent(concessione));
// //

View File

@ -1,6 +1,9 @@
package org.gcube.portlets.user.geoportaldataviewer.client.ui.cms.project; package org.gcube.portlets.user.geoportaldataviewer.client.ui.cms.project;
import org.gcube.application.geoportalcommon.shared.GeoNaItemRef; import java.util.List;
import org.gcube.application.geoportalcommon.shared.GeoportalItemReferences;
import org.gcube.application.geoportalcommon.shared.geoportal.project.RelationshipDV;
import org.gcube.application.geoportalcommon.shared.geoportal.view.ProjectView; import org.gcube.application.geoportalcommon.shared.geoportal.view.ProjectView;
import org.gcube.application.geoportalcommon.shared.geoportal.view.SectionView; import org.gcube.application.geoportalcommon.shared.geoportal.view.SectionView;
import org.gcube.portlets.user.geoportaldataviewer.client.GeoportalDataViewerConstants; import org.gcube.portlets.user.geoportaldataviewer.client.GeoportalDataViewerConstants;
@ -53,12 +56,15 @@ public class ProjectViewer extends Composite {
@UiField @UiField
Button expandButton; Button expandButton;
@UiField
Button relationshipsButton;
private ProjectView theProjectView; private ProjectView theProjectView;
private CustomFlexTable customTable = new CustomFlexTable(); private CustomFlexTable customTable = new CustomFlexTable();
private GeoNaItemRef geonaItemRef; private GeoportalItemReferences geoportalItemReferences;
private String myLogin; private String myLogin;
@ -71,16 +77,16 @@ public class ProjectViewer extends Composite {
pageViewDetails.getElement().setId("page-view-details"); pageViewDetails.getElement().setId("page-view-details");
} }
public ProjectViewer(GeoNaItemRef item, ProjectView projectView) { public ProjectViewer(GeoportalItemReferences geoportalItemRefs, ProjectView projectView) {
this(item, projectView, true, true); this(geoportalItemRefs, projectView, true, true);
} }
public ProjectViewer(GeoNaItemRef item, final ProjectView projectView, boolean viewImageButtonVisible, public ProjectViewer(GeoportalItemReferences geoportalItemRefs, final ProjectView projectView, boolean viewImageButtonVisible,
boolean openImageButtonVisible) { boolean openImageButtonVisible) {
this(); this();
GWT.log("Rendering " + projectView.getTheProjectDV().getId()); GWT.log("Rendering " + projectView.getTheProjectDV().getId());
this.theProjectView = projectView; this.theProjectView = projectView;
this.geonaItemRef = item; this.geoportalItemReferences = geoportalItemRefs;
this.viewImageButtonVisible = viewImageButtonVisible; this.viewImageButtonVisible = viewImageButtonVisible;
this.openImageButtonVisible = openImageButtonVisible; this.openImageButtonVisible = openImageButtonVisible;
@ -98,7 +104,7 @@ public class ProjectViewer extends Composite {
@Override @Override
public void onClick(ClickEvent event) { public void onClick(ClickEvent event) {
DialogShareableLink dg = new DialogShareableLink(geonaItemRef, null); DialogShareableLink dg = new DialogShareableLink(geoportalItemReferences, null);
} }
}); });
@ -112,7 +118,7 @@ public class ProjectViewer extends Composite {
@Override @Override
public void onClick(ClickEvent event) { public void onClick(ClickEvent event) {
ProjectViewer cv = new ProjectViewer(geonaItemRef, theProjectView, false, openImageButtonVisible); ProjectViewer cv = new ProjectViewer(geoportalItemReferences, theProjectView, false, openImageButtonVisible);
cv.setExpandViewButtonVisible(false); cv.setExpandViewButtonVisible(false);
int width = Window.getClientWidth() * 75 / 100; int width = Window.getClientWidth() * 75 / 100;
int height = Window.getClientHeight() * 70 / 100; int height = Window.getClientHeight() * 70 / 100;
@ -124,6 +130,17 @@ public class ProjectViewer extends Composite {
} }
}); });
relationshipsButton.setType(ButtonType.LINK);
relationshipsButton.setIcon(IconType.LINK);
relationshipsButton.setTitle("Show Relationships of this Project");
List<RelationshipDV> relationships = projectView.getTheProjectDV().getRelationships();
if(relationships!=null && relationships.size()>0) {
relationshipsButton.setVisible(true);
}else
relationshipsButton.setVisible(false);
GeoportalDataViewerServiceAsync.Util.getInstance().getMyLogin(new AsyncCallback<String>() { GeoportalDataViewerServiceAsync.Util.getInstance().getMyLogin(new AsyncCallback<String>() {

View File

@ -39,6 +39,7 @@
addStyleNames="{style.margin-bottom-10}"> addStyleNames="{style.margin-bottom-10}">
<b:Button ui:field="shareButton">Share</b:Button> <b:Button ui:field="shareButton">Share</b:Button>
<b:Button ui:field="expandButton">Expand</b:Button> <b:Button ui:field="expandButton">Expand</b:Button>
<b:Button ui:field="relationshipsButton">Relationships</b:Button>
</g:HorizontalPanel> </g:HorizontalPanel>
<g:HTMLPanel ui:field="centroidPanel"></g:HTMLPanel> <g:HTMLPanel ui:field="centroidPanel"></g:HTMLPanel>
</g:HTMLPanel> </g:HTMLPanel>

View File

@ -0,0 +1,198 @@
package org.gcube.portlets.user.geoportaldataviewer.client.ui.cms.project.relation;
import java.util.HashMap;
import java.util.Map;
import java.util.Map.Entry;
import org.gcube.application.geoportalcommon.shared.geoportal.ResultDocumentDV;
import org.gcube.application.geoportalcommon.shared.geoportal.project.ProjectDV;
import org.gcube.application.geoportalcommon.shared.geoportal.project.RelationshipDV;
import com.github.gwtbootstrap.client.ui.Button;
import com.github.gwtbootstrap.client.ui.Label;
import com.github.gwtbootstrap.client.ui.Modal;
import com.github.gwtbootstrap.client.ui.constants.ButtonType;
import com.github.gwtbootstrap.client.ui.constants.IconSize;
import com.github.gwtbootstrap.client.ui.constants.IconType;
import com.github.gwtbootstrap.client.ui.constants.LabelType;
import com.google.gwt.core.client.GWT;
import com.google.gwt.event.dom.client.ClickEvent;
import com.google.gwt.event.dom.client.ClickHandler;
import com.google.gwt.event.shared.HandlerManager;
import com.google.gwt.uibinder.client.UiBinder;
import com.google.gwt.uibinder.client.UiField;
import com.google.gwt.user.client.Window;
import com.google.gwt.user.client.ui.Composite;
import com.google.gwt.user.client.ui.FlexTable;
import com.google.gwt.user.client.ui.FlowPanel;
import com.google.gwt.user.client.ui.HTML;
import com.google.gwt.user.client.ui.HTMLPanel;
import com.google.gwt.user.client.ui.Widget;
public class ViewRelationshipPanel extends Composite {
private static ViewRelationshipPanelUiBinder uiBinder = GWT.create(ViewRelationshipPanelUiBinder.class);
interface ViewRelationshipPanelUiBinder extends UiBinder<Widget, ViewRelationshipPanel> {
}
private String profileID;
@UiField
HTMLPanel firstPanelContainer;
@UiField
HTMLPanel panelTitle;
@UiField
HTMLPanel secondPanelContainer;
@UiField
FlowPanel firstProjectPanelContainer;
@UiField
FlowPanel secondProjectPanelContainer;
@UiField
Button closeButton;
@UiField
Button buttonExpand;
private HashMap<Integer, ResultDocumentDV> selectedProjects = new HashMap<Integer, ResultDocumentDV>(2);
private HandlerManager appManagerBus;
private Map<String, ResultDocumentDV> mapOfTargetProjectForId = new HashMap<String, ResultDocumentDV>();
public ViewRelationshipPanel(HandlerManager appManagerBus, ProjectDV fromProject, boolean showExpand) {
initWidget(uiBinder.createAndBindUi(this));
this.appManagerBus = appManagerBus;
closeButton.setType(ButtonType.LINK);
closeButton.setIcon(IconType.REMOVE);
closeButton.setIconSize(IconSize.LARGE);
closeButton.addClickHandler(new ClickHandler() {
@Override
public void onClick(ClickEvent event) {
}
});
buttonExpand.setType(ButtonType.LINK);
buttonExpand.setIcon(IconType.EXPAND);
buttonExpand.setTitle("Show this view in new Window");
buttonExpand.addClickHandler(new ClickHandler() {
@Override
public void onClick(ClickEvent event) {
Modal mw = new Modal(true, true);
mw.setTitle("Relationships");
int width = 0;
try {
width = Window.getClientWidth() * 75 / 100;
} catch (Exception e) {
// TODO: handle exception
}
if (width > 500)
mw.setWidth(width);
mw.add(new ViewRelationshipPanel(appManagerBus, fromProject, false));
mw.show();
}
});
if (!showExpand) {
buttonExpand.setVisible(false);
panelTitle.setVisible(false);
closeButton.setVisible(false);
}
showRelationsOf(fromProject);
}
public void showRelationsOf(ProjectDV project) {
firstProjectPanelContainer.clear();
secondProjectPanelContainer.clear();
Entry<String, Object> firstEntrySet = project.getTheDocument().getFirstEntryOfMap();
String htmlMsg = firstEntrySet.getKey() + ": <b>" + firstEntrySet.getValue() + "</b> (id: " + project.getId()
+ ")";
firstProjectPanelContainer.add(new HTML(htmlMsg));
HTML labelNoRelations = new HTML("No relationship/s found");
secondProjectPanelContainer.add(labelNoRelations);
if (project.getRelationships() != null && project.getRelationships().size() > 0) {
secondProjectPanelContainer.clear();
for (RelationshipDV relationDV : project.getRelationships()) {
final FlexTable flexTable = new FlexTable();
flexTable.getElement().addClassName("box-table-diplay-project");
Label label = new Label();
label.setType(LabelType.INFO);
label.setText(relationDV.getRelationshipName());
FlowPanel panelContainer = new FlowPanel();
Button deleteRelation = new Button("", IconType.SAVE);
deleteRelation.setTitle("Open this project");
deleteRelation.setType(ButtonType.LINK);
deleteRelation.addClickHandler(new ClickHandler() {
@Override
public void onClick(ClickEvent event) {
ResultDocumentDV toProject = mapOfTargetProjectForId.get(relationDV.getTargetUCD());
// appManagerBus.fireEvent(
// new RelationActionHandlerEvent(project, relationDV.getRelationshipName(), toProject));
}
});
panelContainer.add(label);
panelContainer.add(deleteRelation);
flexTable.setWidget(0, 0, panelContainer);
// flexTable.setWidget(1, 0, new LoaderIcon("loading project.."));
// GeoportalDataEntryServiceAsync.Util.getInstance().getResultDocumentFoProjectByID(
// relationDV.getTargetUCD(), relationDV.getTargetID(), new AsyncCallback<ResultDocumentDV>() {
//
// @Override
// public void onFailure(Throwable caught) {
// flexTable.setWidget(1, 0, new HTML(caught.getMessage()));
//
// }
//
// @Override
// public void onSuccess(ResultDocumentDV result) {
// mapOfTargetProjectForId.put(relationDV.getTargetUCD(), result);
// Entry<String, Object> firstEntrySet = result.getFirstEntryOfMap();
// String htmlMsg = firstEntrySet.getKey() + ": <b>" + firstEntrySet.getValue()
// + "</b> (id: " + result.getId() + ")";
//
// flexTable.setWidget(1, 0, new HTML(htmlMsg));
//
// ReportTemplateToHTML rtth2 = new ReportTemplateToHTML("", result.getDocumentAsJSON(),
// false, false);
// rtth2.showAsJSON(false);
//
// flexTable.setWidget(2, 0, rtth2);
// }
// });
secondProjectPanelContainer.add(flexTable);
}
}
}
}

View File

@ -0,0 +1,68 @@
<!DOCTYPE ui:UiBinder SYSTEM "http://dl.google.com/gwt/DTD/xhtml.ent">
<ui:UiBinder xmlns:ui="urn:ui:com.google.gwt.uibinder"
xmlns:g="urn:import:com.google.gwt.user.client.ui"
xmlns:b="urn:import:com.github.gwtbootstrap.client.ui">
<ui:style>
.view-rel-title {
font-size: 18px;
font-weight: bold;
text-align: center;
padding: 18px;
background: #eee;
}
.butt-create {
float: right;
margin-top: 10px;
}
.to-align-right {
position: absolute;
right: 5px;
}
.panel-style {
margin-top: 10px;
padding: 5px;
}
.panel-style table {
margin-top: 0px !important;
}
.panel-container-style {
padding-left: 10px;
padding-top: 5px;
}
.float-right {
float: right;
}
</ui:style>
<g:HTMLPanel>
<b:Button ui:field="closeButton"
addStyleNames="{style.to-align-right}"></b:Button>
<g:HTMLPanel ui:field="panelTitle"
addStyleNames="{style.view-rel-title}">View Relations</g:HTMLPanel>
<b:Button ui:field="buttonExpand"
addStyleNames="{style.float-right}">Expand</b:Button>
<g:HTMLPanel ui:field="firstPanelContainer"
addStyleNames="{style.panel-style}">
<g:FlowPanel>
<b:Label>From Project</b:Label>
</g:FlowPanel>
<g:FlowPanel ui:field="firstProjectPanelContainer"
addStyleNames="{style.panel-container-style}"></g:FlowPanel>
</g:HTMLPanel>
<g:HTMLPanel ui:field="secondPanelContainer"
addStyleNames="{style.panel-style}">
<g:FlowPanel>
<b:Label>To Project/s</b:Label>
</g:FlowPanel>
<g:FlowPanel ui:field="secondProjectPanelContainer"
addStyleNames="{style.panel-container-style}"></g:FlowPanel>
</g:HTMLPanel>
</g:HTMLPanel>
</ui:UiBinder>

View File

@ -306,8 +306,8 @@ public class SearchFacilityUI extends Composite {
* *
* locateOnMap.addClickHandler(new ClickHandler() { * locateOnMap.addClickHandler(new ClickHandler() {
* *
* @Override public void onClick(ClickEvent event) { GeoNaItemRef gir = new * @Override public void onClick(ClickEvent event) { GeoportalItemReferences gir = new
* GeoNaItemRef(concessione.getItemId(), * GeoportalItemReferences(concessione.getItemId(),
* GeoportalDataViewerConstants.RECORD_TYPE.CONCESSIONE.toString()); * GeoportalDataViewerConstants.RECORD_TYPE.CONCESSIONE.toString());
* appManagerBus.fireEvent(new ShowDetailsEvent(gir, null, null)); * appManagerBus.fireEvent(new ShowDetailsEvent(gir, null, null));
* appManagerBus.fireEvent(new ShowPopupOnCentroiEvent(concessione)); * appManagerBus.fireEvent(new ShowPopupOnCentroiEvent(concessione));

View File

@ -1,6 +1,6 @@
package org.gcube.portlets.user.geoportaldataviewer.client.ui.dialogs; package org.gcube.portlets.user.geoportaldataviewer.client.ui.dialogs;
import org.gcube.application.geoportalcommon.shared.GeoNaItemRef; import org.gcube.application.geoportalcommon.shared.GeoportalItemReferences;
import org.gcube.application.geoportalcommon.shared.PublicLink; import org.gcube.application.geoportalcommon.shared.PublicLink;
import org.gcube.portlets.user.geoportaldataviewer.client.GeoportalDataViewerServiceAsync; import org.gcube.portlets.user.geoportaldataviewer.client.GeoportalDataViewerServiceAsync;
import org.gcube.portlets.user.geoportaldataviewer.client.util.LoaderIcon; import org.gcube.portlets.user.geoportaldataviewer.client.util.LoaderIcon;
@ -117,7 +117,7 @@ public class DialogShareableLink extends Composite {
// @UiField // @UiField
// HTMLPanel panelFieldsContainer; // HTMLPanel panelFieldsContainer;
private GeoNaItemRef geonItemRef; private GeoportalItemReferences geonItemRef;
private String fileVersion; private String fileVersion;
@ -149,7 +149,7 @@ public class DialogShareableLink extends Composite {
* @param item the item * @param item the item
* @param version the version * @param version the version
*/ */
public DialogShareableLink(GeoNaItemRef item, String version) { public DialogShareableLink(GeoportalItemReferences item, String version) {
initWidget(uiBinder.createAndBindUi(this)); initWidget(uiBinder.createAndBindUi(this));
this.geonItemRef = item; this.geonItemRef = item;
@ -409,12 +409,12 @@ public class DialogShareableLink extends Composite {
* *
* @param item the item * @param item the item
*/ */
private void loadAndShowPublicLinksForItem(GeoNaItemRef item) { private void loadAndShowPublicLinksForItem(GeoportalItemReferences item) {
GeoportalDataViewerServiceAsync.Util.getInstance().getPublicLinksFor(item, new AsyncCallback<GeoNaItemRef>() { GeoportalDataViewerServiceAsync.Util.getInstance().getPublicLinksFor(item, new AsyncCallback<GeoportalItemReferences>() {
@Override @Override
public void onSuccess(GeoNaItemRef itemReferences) { public void onSuccess(GeoportalItemReferences itemReferences) {
showLoadingIcon(false); showLoadingIcon(false);
openPublicLink = itemReferences.getOpenLink(); openPublicLink = itemReferences.getOpenLink();
restrictedPublicLink = itemReferences.getRestrictedLink(); restrictedPublicLink = itemReferences.getRestrictedLink();

View File

@ -3,7 +3,7 @@
//import java.util.ArrayList; //import java.util.ArrayList;
//import java.util.List; //import java.util.List;
// //
//import org.gcube.application.geoportalcommon.shared.GeoNaItemRef; //import org.gcube.application.geoportalcommon.shared.GeoportalItemReferences;
//import org.gcube.application.geoportalcommon.shared.products.ConcessioneDV; //import org.gcube.application.geoportalcommon.shared.products.ConcessioneDV;
//import org.gcube.application.geoportalcommon.shared.products.model.AbstractRelazioneScavoDV; //import org.gcube.application.geoportalcommon.shared.products.model.AbstractRelazioneScavoDV;
//import org.gcube.application.geoportalcommon.shared.products.model.LayerConcessioneDV; //import org.gcube.application.geoportalcommon.shared.products.model.LayerConcessioneDV;
@ -87,7 +87,7 @@
// //
// private CustomFlexTable customTable = new CustomFlexTable(); // private CustomFlexTable customTable = new CustomFlexTable();
// //
// private GeoNaItemRef geonaItemRef; // private GeoportalItemReferences geonaItemRef;
// //
// private String myLogin; // private String myLogin;
// //
@ -100,11 +100,11 @@
// pageViewDetails.getElement().setId("page-view-details"); // pageViewDetails.getElement().setId("page-view-details");
// } // }
// //
// public ConcessioneView(GeoNaItemRef item, ConcessioneDV concDV) { // public ConcessioneView(GeoportalItemReferences item, ConcessioneDV concDV) {
// this(item, concDV, true, true); // this(item, concDV, true, true);
// } // }
// //
// public ConcessioneView(GeoNaItemRef item, ConcessioneDV concDV, boolean viewImageButtonVisible, // public ConcessioneView(GeoportalItemReferences item, ConcessioneDV concDV, boolean viewImageButtonVisible,
// boolean openImageButtonVisible) { // boolean openImageButtonVisible) {
// this(); // this();
// GWT.log("Rendering " + concDV.getNome()); // GWT.log("Rendering " + concDV.getNome());

View File

@ -30,7 +30,7 @@ import org.gcube.application.geoportalcommon.geoportal.GeoportalClientCaller;
import org.gcube.application.geoportalcommon.geoportal.ProjectsCaller; import org.gcube.application.geoportalcommon.geoportal.ProjectsCaller;
import org.gcube.application.geoportalcommon.geoportal.UseCaseDescriptorCaller; import org.gcube.application.geoportalcommon.geoportal.UseCaseDescriptorCaller;
import org.gcube.application.geoportalcommon.shared.GNADataViewerConfigProfile; import org.gcube.application.geoportalcommon.shared.GNADataViewerConfigProfile;
import org.gcube.application.geoportalcommon.shared.GeoNaItemRef; import org.gcube.application.geoportalcommon.shared.GeoportalItemReferences;
import org.gcube.application.geoportalcommon.shared.LayerItem; import org.gcube.application.geoportalcommon.shared.LayerItem;
import org.gcube.application.geoportalcommon.shared.ResultSetPaginatedData; import org.gcube.application.geoportalcommon.shared.ResultSetPaginatedData;
import org.gcube.application.geoportalcommon.shared.SearchingFilter; import org.gcube.application.geoportalcommon.shared.SearchingFilter;
@ -504,7 +504,7 @@ public class GeoportalDataViewerServiceImpl extends RemoteServiceServlet impleme
* @throws Exception the exception * @throws Exception the exception
*/ */
@Override @Override
public GeoNaItemRef getPublicLinksFor(GeoNaItemRef item) throws Exception { public GeoportalItemReferences getPublicLinksFor(GeoportalItemReferences item) throws Exception {
LOG.info("getPublicLinksFor called for: " + item); LOG.info("getPublicLinksFor called for: " + item);
try { try {
@ -1076,6 +1076,7 @@ public class GeoportalDataViewerServiceImpl extends RemoteServiceServlet impleme
UseCaseDescriptor ucd = GeoportalClientCaller.useCaseDescriptors().getUCDForId(profileID); UseCaseDescriptor ucd = GeoportalClientCaller.useCaseDescriptors().getUCDForId(profileID);
Project theProject = GeoportalClientCaller.projects().getProjectByID(profileID, projectID); Project theProject = GeoportalClientCaller.projects().getProjectByID(profileID, projectID);
ProjectDVBuilder projectBuilder = ProjectDVBuilder.newBuilder().fullDocumentMap(true); ProjectDVBuilder projectBuilder = ProjectDVBuilder.newBuilder().fullDocumentMap(true);
projectBuilder.relationships(true);
ProjectDV theProjectDV = ConvertToDataValueObjectModel.toProjectDV(theProject, projectBuilder); ProjectDV theProjectDV = ConvertToDataValueObjectModel.toProjectDV(theProject, projectBuilder);
theProjectDV.setProfileName(ucd.getName()); theProjectDV.setProfileName(ucd.getName());

View File

@ -1,5 +1,5 @@
package org.gcube.portlets.user.geoportaldataviewer.shared.gis; package org.gcube.portlets.user.geoportaldataviewer.shared.gis;
public enum LayerObjectType { public enum LayerObjectType {
BASE_LAYER, PROJECT_LAYER, INDEX_LAYER, GENERIC_LAYER PROJECT_LAYER, INDEX_LAYER, GENERIC_LAYER
} }

View File

@ -13,10 +13,7 @@ import org.gcube.application.geoportalcommon.shared.geoportal.project.ProjectDV;
import org.gcube.application.geoportalcommon.shared.geoportal.view.ProjectView; import org.gcube.application.geoportalcommon.shared.geoportal.view.ProjectView;
import org.gcube.common.authorization.library.provider.SecurityTokenProvider; import org.gcube.common.authorization.library.provider.SecurityTokenProvider;
import org.gcube.common.scope.api.ScopeProvider; import org.gcube.common.scope.api.ScopeProvider;
import org.gcube.portlets.user.geoportaldataviewer.server.GeoportalDataViewerServiceImpl;
import org.gcube.portlets.user.geoportaldataviewer.server.Geoportal_JSON_Mapper; import org.gcube.portlets.user.geoportaldataviewer.server.Geoportal_JSON_Mapper;
import org.gcube.portlets.user.geoportaldataviewer.server.mongoservice.GeoportalServiceIdentityProxy;
import org.gcube.portlets.user.geoportaldataviewer.server.util.SessionUtil;
import org.junit.Before; import org.junit.Before;
import org.junit.Test; import org.junit.Test;