From 1ff6ca4b94e811e7618660b75b082771002c40c1 Mon Sep 17 00:00:00 2001 From: Costantino Perciante Date: Tue, 19 Jan 2016 13:35:51 +0000 Subject: [PATCH] Fixed ClientFeed exchange problem between this portlet and the news-feed one on posting. git-svn-id: https://svn.research-infrastructures.eu/d4science/gcube/trunk/portlets/user/share-updates@122313 82a268e6-3cf1-43bd-a215-b396298e98cf --- .settings/org.eclipse.wst.common.component | 5 +-- .../client/view/ShareUpdateForm.java | 39 +++++++++++++++++-- .../server/ShareUpdateServiceImpl.java | 2 +- src/main/webapp/ShareUpdates.html | 7 ++++ 4 files changed, 44 insertions(+), 9 deletions(-) diff --git a/.settings/org.eclipse.wst.common.component b/.settings/org.eclipse.wst.common.component index cfc5846..3804aaa 100644 --- a/.settings/org.eclipse.wst.common.component +++ b/.settings/org.eclipse.wst.common.component @@ -4,10 +4,7 @@ - - uses - - + uses diff --git a/src/main/java/org/gcube/portlets/user/shareupdates/client/view/ShareUpdateForm.java b/src/main/java/org/gcube/portlets/user/shareupdates/client/view/ShareUpdateForm.java index 0e47e08..f55062d 100644 --- a/src/main/java/org/gcube/portlets/user/shareupdates/client/view/ShareUpdateForm.java +++ b/src/main/java/org/gcube/portlets/user/shareupdates/client/view/ShareUpdateForm.java @@ -6,6 +6,7 @@ import java.util.List; import net.eliasbalasis.tibcopagebus4gwt.client.PageBusAdapter; import net.eliasbalasis.tibcopagebus4gwt.client.PageBusAdapterException; + import org.gcube.portal.databook.shared.ClientFeed; import org.gcube.portal.databook.shared.ClientFeed.ClientFeedJsonizer; import org.gcube.portal.databook.shared.FeedType; @@ -246,6 +247,33 @@ public class ShareUpdateForm extends Composite { GWT.log("Drag and drop not supported."); } + +// ClientFeed notification = new ClientFeed(); +// //Subscribe to message and associate subsequent receptions with custom subscriber data +// try { +// pageBusAdapter.PageBusSubscribe("org.gcube.portal.databook.shared", null, null, notification, (Jsonizer)GWT.create(ClientFeedJsonizer.class)); +// } +// catch (PageBusAdapterException e1) { +// GWT.log(e1.toString()); +// } +// +// pageBusAdapter.addPageBusSubscriptionCallbackListener(new PageBusListener() { +// public void onPageBusSubscriptionCallback(PageBusEvent event) { +// // translate JavaScript message contents and subscriber data to their Java equivalents +// try { +// +// GWT.log("Receiving..."); +// ClientFeed feed = (ClientFeed)event.getMessage((Jsonizer)GWT.create(ClientFeedJsonizer.class)); +// GWT.log("Received client feed " + feed); +// +// } catch (PageBusAdapterException e) { +// e.printStackTrace(); +// } +// } +// public String getName() { +// return null; +// } +// }); } }); } @@ -367,7 +395,7 @@ public class ShareUpdateForm extends Composite { if(numberOfAttachmentsUploaded() > 0){ postContent = PostContent.TEXT_AND_ATTACHMENTS; - if(toShare.equals("")) + if(toShare.equals("") || toShare.equals(SHARE_UPDATE_TEXT) || toShare.equals(ERROR_UPDATE_TEXT)) toShare = NO_TEXT_FILE_SHARE; } @@ -458,7 +486,9 @@ public class ShareUpdateForm extends Composite { else { // publish a message with the refresh notification try { + pageBusAdapter.PageBusPublish("org.gcube.portal.databook.shared", feed, (Jsonizer)GWT.create(ClientFeedJsonizer.class)); + } catch (PageBusAdapterException ex) { GWT.log(ex.getMessage()); } @@ -493,7 +523,7 @@ public class ShareUpdateForm extends Composite { shareupdateService.sharePostWithAttachments(toShareText, FeedType.TWEET, getPrivacyLevel(), vreId, uploadedFiles, mentionedUsers, notifyGroup, saveInWorkspaceCheckbox.getValue(), new AsyncCallback() { @Override - public void onSuccess(ClientFeed result) { + public void onSuccess(ClientFeed feed) { submitButton.setEnabled(true); shareTextArea.setEnabled(true); @@ -503,12 +533,13 @@ public class ShareUpdateForm extends Composite { preview.clear(); listOfAttachedFiles.clear(); - if (result == null) + if (feed == null) Window.alert("Ops! we encountered some problems delivering your message, please try again in a short while."); else { // publish a message with the refresh notification try { - pageBusAdapter.PageBusPublish("org.gcube.portal.databook.shared", result, (Jsonizer)GWT.create(ClientFeedJsonizer.class)); + pageBusAdapter.PageBusPublish("org.gcube.portal.databook.shared", feed, (Jsonizer)GWT.create(ClientFeedJsonizer.class)); + GWT.log("SENT"); } catch (PageBusAdapterException ex) { GWT.log(ex.getMessage()); } diff --git a/src/main/java/org/gcube/portlets/user/shareupdates/server/ShareUpdateServiceImpl.java b/src/main/java/org/gcube/portlets/user/shareupdates/server/ShareUpdateServiceImpl.java index cd0c784..5ecb9b4 100644 --- a/src/main/java/org/gcube/portlets/user/shareupdates/server/ShareUpdateServiceImpl.java +++ b/src/main/java/org/gcube/portlets/user/shareupdates/server/ShareUpdateServiceImpl.java @@ -124,7 +124,7 @@ public class ShareUpdateServiceImpl extends RemoteServiceServlet implements Shar } public String getDevelopmentUser() { String user = TEST_USER; - user = "costantino.perciante"; +// user = "costantino.perciante"; return user; } /** diff --git a/src/main/webapp/ShareUpdates.html b/src/main/webapp/ShareUpdates.html index 82ce4e3..61f2f01 100644 --- a/src/main/webapp/ShareUpdates.html +++ b/src/main/webapp/ShareUpdates.html @@ -29,6 +29,13 @@ }); + + +