From dea1958869b6e6995d6f8e607f5ad256d19c222b Mon Sep 17 00:00:00 2001 From: Giancarlo Panichi Date: Thu, 28 May 2015 15:16:55 +0000 Subject: [PATCH] 81: Allow the creation and use of expressions on multi column in TDM portlet Task-Url: https://support.d4science.org/issues/81 Added Detach rule on table git-svn-id: https://svn.d4science.research-infrastructures.eu/gcube/trunk/portlets/user/tabular-data-expression-widget@115126 82a268e6-3cf1-43bd-a215-b396298e98cf --- .../client/rpc/ExpressionService.java | 5 ++++ .../client/rpc/ExpressionServiceAsync.java | 5 ++++ .../server/ExpressionServiceImpl.java | 25 +++++++++++++++++++ 3 files changed, 35 insertions(+) diff --git a/src/main/java/org/gcube/portlets/user/td/expressionwidget/client/rpc/ExpressionService.java b/src/main/java/org/gcube/portlets/user/td/expressionwidget/client/rpc/ExpressionService.java index 7782206..9d08cff 100644 --- a/src/main/java/org/gcube/portlets/user/td/expressionwidget/client/rpc/ExpressionService.java +++ b/src/main/java/org/gcube/portlets/user/td/expressionwidget/client/rpc/ExpressionService.java @@ -9,6 +9,7 @@ import org.gcube.portlets.user.td.gwtservice.shared.exception.TDGWTServiceExcept import org.gcube.portlets.user.td.gwtservice.shared.rule.AppliedRulesResponseData; import org.gcube.portlets.user.td.gwtservice.shared.rule.ApplyTableRuleSession; import org.gcube.portlets.user.td.gwtservice.shared.rule.DetachColumnRulesSession; +import org.gcube.portlets.user.td.gwtservice.shared.rule.DetachTableRulesSession; import org.gcube.portlets.user.td.gwtservice.shared.rule.RuleScopeType; import org.gcube.portlets.user.td.gwtservice.shared.rule.ApplyAndDetachColumnRulesSession; import org.gcube.portlets.user.td.gwtservice.shared.rule.description.RuleDescriptionData; @@ -78,6 +79,10 @@ public interface ExpressionService extends RemoteService { public void setDetachColumnRules(DetachColumnRulesSession detachColumnRulesSession) throws TDGWTServiceException; + public void setDetachTableRules(DetachTableRulesSession detachTableRulesSession) + throws TDGWTServiceException; + + public String startApplyTableRule(ApplyTableRuleSession applyTableRuleSession) throws TDGWTServiceException; diff --git a/src/main/java/org/gcube/portlets/user/td/expressionwidget/client/rpc/ExpressionServiceAsync.java b/src/main/java/org/gcube/portlets/user/td/expressionwidget/client/rpc/ExpressionServiceAsync.java index 5953fcd..e06a040 100644 --- a/src/main/java/org/gcube/portlets/user/td/expressionwidget/client/rpc/ExpressionServiceAsync.java +++ b/src/main/java/org/gcube/portlets/user/td/expressionwidget/client/rpc/ExpressionServiceAsync.java @@ -9,6 +9,7 @@ import org.gcube.portlets.user.td.gwtservice.shared.rule.AppliedRulesResponseDat import org.gcube.portlets.user.td.gwtservice.shared.rule.ApplyAndDetachColumnRulesSession; import org.gcube.portlets.user.td.gwtservice.shared.rule.ApplyTableRuleSession; import org.gcube.portlets.user.td.gwtservice.shared.rule.DetachColumnRulesSession; +import org.gcube.portlets.user.td.gwtservice.shared.rule.DetachTableRulesSession; import org.gcube.portlets.user.td.gwtservice.shared.rule.RuleScopeType; import org.gcube.portlets.user.td.gwtservice.shared.rule.description.RuleDescriptionData; import org.gcube.portlets.user.td.gwtservice.shared.tr.column.AddColumnSession; @@ -67,6 +68,10 @@ public interface ExpressionServiceAsync { void setDetachColumnRules( DetachColumnRulesSession detachColumnRulesSession, AsyncCallback callback); + + void setDetachTableRules( + DetachTableRulesSession detachTableRulesSession, + AsyncCallback callback); void startApplyTableRule( ApplyTableRuleSession applyTableRuleSession, diff --git a/src/main/java/org/gcube/portlets/user/td/expressionwidget/server/ExpressionServiceImpl.java b/src/main/java/org/gcube/portlets/user/td/expressionwidget/server/ExpressionServiceImpl.java index d99e972..9d2844e 100644 --- a/src/main/java/org/gcube/portlets/user/td/expressionwidget/server/ExpressionServiceImpl.java +++ b/src/main/java/org/gcube/portlets/user/td/expressionwidget/server/ExpressionServiceImpl.java @@ -33,6 +33,7 @@ import org.gcube.portlets.user.td.gwtservice.shared.rule.AppliedRulesResponseDat import org.gcube.portlets.user.td.gwtservice.shared.rule.ApplyAndDetachColumnRulesSession; import org.gcube.portlets.user.td.gwtservice.shared.rule.ApplyTableRuleSession; import org.gcube.portlets.user.td.gwtservice.shared.rule.DetachColumnRulesSession; +import org.gcube.portlets.user.td.gwtservice.shared.rule.DetachTableRulesSession; import org.gcube.portlets.user.td.gwtservice.shared.rule.RuleScopeType; import org.gcube.portlets.user.td.gwtservice.shared.rule.description.RuleDescriptionData; import org.gcube.portlets.user.td.gwtservice.shared.tr.column.AddColumnSession; @@ -674,4 +675,28 @@ public class ExpressionServiceImpl extends TDGWTServiceImpl implements } + + /** + * + * {@inheritDoc} + */ + @Override + public void setDetachTableRules( + DetachTableRulesSession detachTableRulesSession) + throws TDGWTServiceException { + try { + HttpSession session = this.getThreadLocalRequest().getSession(); + setDetachTableRules(detachTableRulesSession, session); + return; + + } catch (TDGWTServiceException e) { + throw e; + } catch (Throwable e) { + e.printStackTrace(); + throw new TDGWTServiceException(e.getLocalizedMessage()); + } + + } + + } \ No newline at end of file