From 84cc92c4fa83c958958586415f6fd298e622d693 Mon Sep 17 00:00:00 2001 From: Costantino Perciante Date: Mon, 6 Nov 2017 17:56:15 +0000 Subject: [PATCH] lost some enhancements, reverted up to this point git-svn-id: http://svn.research-infrastructures.eu/public/d4science/gcube/trunk/portlets/widgets/grsf-manage-widget@158240 82a268e6-3cf1-43bd-a215-b396298e98cf --- .../events/HideManagementPanelEvent.java | 35 ++++++++++ .../HideManagementPanelEventHandler.java | 17 +++++ .../manage/GRSFNotificationService.java | 14 ++-- .../shared/SimilarGRSFRecord.java | 68 +++++++++++++++++++ .../shared/SourceRecord.java | 50 ++++++++++++++ 5 files changed, 177 insertions(+), 7 deletions(-) create mode 100644 src/main/java/org/gcube/datacatalogue/grsf_manage_widget/client/events/HideManagementPanelEvent.java create mode 100644 src/main/java/org/gcube/datacatalogue/grsf_manage_widget/client/events/HideManagementPanelEventHandler.java create mode 100644 src/main/java/org/gcube/datacatalogue/grsf_manage_widget/shared/SimilarGRSFRecord.java create mode 100644 src/main/java/org/gcube/datacatalogue/grsf_manage_widget/shared/SourceRecord.java diff --git a/src/main/java/org/gcube/datacatalogue/grsf_manage_widget/client/events/HideManagementPanelEvent.java b/src/main/java/org/gcube/datacatalogue/grsf_manage_widget/client/events/HideManagementPanelEvent.java new file mode 100644 index 0000000..1f0565d --- /dev/null +++ b/src/main/java/org/gcube/datacatalogue/grsf_manage_widget/client/events/HideManagementPanelEvent.java @@ -0,0 +1,35 @@ +package org.gcube.datacatalogue.grsf_manage_widget.client.events; + +import com.google.gwt.event.shared.GwtEvent; + + +/** + * Hide management panel + * @author Costantino Perciante at ISTI-CNR (costantino.perciante@isti.cnr.it) + */ +public class HideManagementPanelEvent extends GwtEvent { + public static Type TYPE = new Type(); + + /** + * Instantiates a new hide event. + */ + public HideManagementPanelEvent() { + } + + /* (non-Javadoc) + * @see com.google.gwt.event.shared.GwtEvent#getAssociatedType() + */ + @Override + public Type getAssociatedType() { + return TYPE; + } + + /* (non-Javadoc) + * @see com.google.gwt.event.shared.GwtEvent#dispatch(com.google.gwt.event.shared.EventHandler) + */ + @Override + protected void dispatch(HideManagementPanelEventHandler handler) { + handler.onEvent(this); + } + +} diff --git a/src/main/java/org/gcube/datacatalogue/grsf_manage_widget/client/events/HideManagementPanelEventHandler.java b/src/main/java/org/gcube/datacatalogue/grsf_manage_widget/client/events/HideManagementPanelEventHandler.java new file mode 100644 index 0000000..d340303 --- /dev/null +++ b/src/main/java/org/gcube/datacatalogue/grsf_manage_widget/client/events/HideManagementPanelEventHandler.java @@ -0,0 +1,17 @@ +package org.gcube.datacatalogue.grsf_manage_widget.client.events; + +import com.google.gwt.event.shared.EventHandler; + + +/** + * Hide management panel event handler + * @author Costantino Perciante at ISTI-CNR (costantino.perciante@isti.cnr.it) + */ +public interface HideManagementPanelEventHandler extends EventHandler { + + /** + * @param onEvent + */ + void onEvent(HideManagementPanelEvent hideEvent); + +} \ No newline at end of file diff --git a/src/main/java/org/gcube/datacatalogue/grsf_manage_widget/server/manage/GRSFNotificationService.java b/src/main/java/org/gcube/datacatalogue/grsf_manage_widget/server/manage/GRSFNotificationService.java index 370fb1f..d065e2a 100644 --- a/src/main/java/org/gcube/datacatalogue/grsf_manage_widget/server/manage/GRSFNotificationService.java +++ b/src/main/java/org/gcube/datacatalogue/grsf_manage_widget/server/manage/GRSFNotificationService.java @@ -121,16 +121,16 @@ public class GRSFNotificationService extends RemoteServiceServlet implements GRS else{ // check it is a grsf record - String systemType = record.getExtrasAsHashMap().get(Constants.SYSTEM_TYPE); - if(systemType == null || systemType.isEmpty() || !systemType.equals(Constants.GRSF)) + String systemType = record.getExtrasAsHashMap().get(Constants.SYSTEM_TYPE_CUSTOM_KEY); + if(systemType == null || systemType.isEmpty() || systemType.equals(Constants.SYSTEM_TYPE_FOR_SOURCES_VALUE)) throw new NoGRSFRecordException("This is not a GRSF Item"); Map extrasAsHashMap = record.getExtrasAsHashMap(); // fetch map for namespaces Map fieldsNamespacesMap = Utils.getFieldToFieldNameSpaceMapping(getThreadLocalRequest().getSession(), - extrasAsHashMap.get(Constants.GRSF_DOMAIN).equals(Constants.STOCK) ? Utils.GENERIC_RESOURCE_NAME_MAP_KEY_NAMESPACES_STOCK - : Utils.GENERIC_RESOURCE_NAME_MAP_KEY_NAMESPACES_FISHERY); + extrasAsHashMap.get(Constants.DOMAIN_CUSTOM_KEY).equals(Constants.STOCK_NAME_CUSTOM_KEY) ? Constants.GENERIC_RESOURCE_NAME_MAP_KEY_NAMESPACES_STOCK + : Constants.GENERIC_RESOURCE_NAME_MAP_KEY_NAMESPACES_FISHERY); Map extrasWithoutNamespaces = Utils.replaceFieldsKey(extrasAsHashMap, fieldsNamespacesMap); @@ -313,7 +313,7 @@ public class GRSFNotificationService extends RemoteServiceServlet implements GRS // manage the custom fields List extras = dataset.getExtras(); for (CkanPair ckanPair : extras) { - if(ckanPair.getKey().equals(Constants.STATUS_CUSTOM_FIELD_KEY) && ckanPair.getValue().equals(bean.getCurrentStatus().toString())) + if(ckanPair.getKey().equals(Constants.STATUS_OF_THE_GRSF_RECORD_CUSTOM_KEY) && ckanPair.getValue().equals(bean.getCurrentStatus().toString())) continue; JSONObject obj = new JSONObject(); @@ -324,12 +324,12 @@ public class GRSFNotificationService extends RemoteServiceServlet implements GRS // add the new one and the annotation message JSONObject newStatus = new JSONObject(); - newStatus.put("key", Constants.STATUS_CUSTOM_FIELD_KEY); + newStatus.put("key", Constants.STATUS_OF_THE_GRSF_RECORD_CUSTOM_KEY); newStatus.put("value", bean.getNewStatus().toString()); customFieldsAsJson.add(newStatus); JSONObject newAnnotation = new JSONObject(); - newAnnotation.put("key", Constants.ANNOTATION_KEY); + newAnnotation.put("key", Constants.ANNOTATION_CUSTOM_KEY); newAnnotation.put("value", "date: " + DATE_FORMAT.format(new Date()) + ", admin: " + new LiferayUserManager().getUserByUsername(username).getFullname() + ", message: " + (bean.getAnnotation() != null ? bean.getAnnotation().replaceAll("\"", "") : "none") diff --git a/src/main/java/org/gcube/datacatalogue/grsf_manage_widget/shared/SimilarGRSFRecord.java b/src/main/java/org/gcube/datacatalogue/grsf_manage_widget/shared/SimilarGRSFRecord.java new file mode 100644 index 0000000..356f916 --- /dev/null +++ b/src/main/java/org/gcube/datacatalogue/grsf_manage_widget/shared/SimilarGRSFRecord.java @@ -0,0 +1,68 @@ +package org.gcube.datacatalogue.grsf_manage_widget.shared; + +import java.io.Serializable; + + +/** + * A similar grsf record + * @author Costantino Perciante at ISTI-CNR (costantino.perciante@isti.cnr.it) + */ +public class SimilarGRSFRecord implements Serializable{ + + + private static final long serialVersionUID = 6501670015333073045L; + private String description; + private String semanticIdentifier; + private String shortName; + private String url; // within the catalogue + + public SimilarGRSFRecord() { + super(); + } + + /** + * @param description + * @param semanticIdentifier + * @param shortName + * @param url + */ + public SimilarGRSFRecord(String description, String semanticIdentifier, + String shortName, String url) { + super(); + this.description = description; + this.semanticIdentifier = semanticIdentifier; + this.shortName = shortName; + this.url = url; + } + public String getIdentifier() { + return description; + } + public void setIdentifier(String description) { + this.description = description; + } + public String getSemanticIdentifier() { + return semanticIdentifier; + } + public void setSemanticIdentifier(String semanticIdentifier) { + this.semanticIdentifier = semanticIdentifier; + } + public String getShortName() { + return shortName; + } + public void setShortName(String shortName) { + this.shortName = shortName; + } + public String getUrl() { + return url; + } + public void setUrl(String url) { + this.url = url; + } + @Override + public String toString() { + return "SimilarGRSFRecord [description=" + description + + ", semanticIdentifier=" + semanticIdentifier + ", shortName=" + + shortName + ", url=" + url + "]"; + } + +} diff --git a/src/main/java/org/gcube/datacatalogue/grsf_manage_widget/shared/SourceRecord.java b/src/main/java/org/gcube/datacatalogue/grsf_manage_widget/shared/SourceRecord.java new file mode 100644 index 0000000..3bc718a --- /dev/null +++ b/src/main/java/org/gcube/datacatalogue/grsf_manage_widget/shared/SourceRecord.java @@ -0,0 +1,50 @@ +package org.gcube.datacatalogue.grsf_manage_widget.shared; + +import java.io.Serializable; + + +/** + * A source record for this grsf record: source type (i.e. fishsource, ram, firms), name and identifier + * @author Costantino Perciante at ISTI-CNR (costantino.perciante@isti.cnr.it) + */ +public class SourceRecord implements Serializable{ + + private static final long serialVersionUID = -5144710283443577518L; + private String name; + private String url; // within the catalogue + + public SourceRecord() { + super(); + } + + /** + * @param name + * @param url + */ + public SourceRecord(String name, String url) { + super(); + this.name = name; + this.url = url; + } + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + public String getUrl() { + return url; + } + + public void setUrl(String url) { + this.url = url; + } + + @Override + public String toString() { + return "SourceRecord [name=" + name + ", url=" + url + "]"; + } +} \ No newline at end of file