diff --git a/.classpath b/.classpath index 2f8f88c..7ee9f9b 100644 --- a/.classpath +++ b/.classpath @@ -1,12 +1,12 @@ - + - + @@ -39,5 +39,5 @@ - + diff --git a/.settings/org.eclipse.wst.common.component b/.settings/org.eclipse.wst.common.component index 65f5dd8..b36d0bc 100644 --- a/.settings/org.eclipse.wst.common.component +++ b/.settings/org.eclipse.wst.common.component @@ -4,7 +4,7 @@ - + uses diff --git a/distro/changelog.xml b/distro/changelog.xml index c599812..1d32f29 100644 --- a/distro/changelog.xml +++ b/distro/changelog.xml @@ -1,4 +1,7 @@ + + Removed ASL Session, increased performance + Removed leave group possibility Displays VRE-Managers and Groups in the related VRE diff --git a/pom.xml b/pom.xml index 8130c8d..1fd740c 100644 --- a/pom.xml +++ b/pom.xml @@ -13,7 +13,7 @@ org.gcube.portlets.user questions war - 2.1.0-SNAPSHOT + 2.2.0-SNAPSHOT gCube Questions Ask Managers Portlet gCube Questions Ask Managers Portlet @@ -74,11 +74,7 @@ gcube-widgets compile - - org.gcube.portal - custom-portal-handler - provided - + org.gcube.common.portal portal-manager @@ -93,11 +89,7 @@ usermanagement-core provided - - org.gcube.applicationsupportlayer - aslcore - provided - + com.google gwt-jsonmaker @@ -108,6 +100,23 @@ portal-service provided + + com.liferay.portal + util-bridges + ${liferay.version} + provided + + + com.liferay.portal + util-taglib + ${liferay.version} + provided + + + com.liferay.portal + util-java + provided + junit junit diff --git a/src/main/java/org/gcube/portlets/user/questions/server/QuestionsServiceImpl.java b/src/main/java/org/gcube/portlets/user/questions/server/QuestionsServiceImpl.java index 72c22ed..636e9bd 100644 --- a/src/main/java/org/gcube/portlets/user/questions/server/QuestionsServiceImpl.java +++ b/src/main/java/org/gcube/portlets/user/questions/server/QuestionsServiceImpl.java @@ -6,14 +6,11 @@ import java.util.Map; import java.util.Set; import org.apache.commons.codec.binary.Base64; -import org.gcube.application.framework.core.session.ASLSession; -import org.gcube.application.framework.core.session.SessionManager; import org.gcube.common.portal.GCubePortalConstants; -import org.gcube.portal.custom.scopemanager.scopehelper.ScopeHelper; +import org.gcube.common.portal.PortalContext; import org.gcube.portal.databook.client.GCubeSocialNetworking; import org.gcube.portlets.user.questions.client.QuestionsService; import org.gcube.portlets.user.questions.shared.GroupDTO; -import org.gcube.vomanagement.usermanagement.GroupManager; import org.gcube.vomanagement.usermanagement.impl.LiferayGroupManager; import org.gcube.vomanagement.usermanagement.impl.LiferayRoleManager; import org.gcube.vomanagement.usermanagement.impl.LiferayUserManager; @@ -35,43 +32,15 @@ import com.liferay.portal.service.UserLocalServiceUtil; @SuppressWarnings("serial") public class QuestionsServiceImpl extends RemoteServiceServlet implements QuestionsService { private static final Logger _log = LoggerFactory.getLogger(QuestionsServiceImpl.class); - private static final String TEST_USER = "test.user"; - - /** - * the current ASLSession - * @return the session - */ - private ASLSession getASLSession() { - String sessionID = this.getThreadLocalRequest().getSession().getId(); - String user = (String) this.getThreadLocalRequest().getSession().getAttribute(ScopeHelper.USERNAME_ATTRIBUTE); - if (user == null) { - _log.warn("USER IS NULL setting test.user and Running OUTSIDE PORTAL"); - user = getDevelopmentUser(); - } - return SessionManager.getInstance().getASLSession(sessionID, user); - } - /** - * when packaging test will fail if the user is not set to test.user - * @return . - */ - public String getDevelopmentUser() { - String user = TEST_USER; - user = "massimiliano.assante"; - return user; - } @Override public ArrayList getGroups() { ArrayList toReturn = new ArrayList<>(); - ASLSession session = getASLSession(); - if (session.getUsername().compareTo(TEST_USER) == 0) { - _log.error("User is NULL, session expired?"); - return new ArrayList<>(); - } + if (isWithinPortal()) { try { - long vreGroupId = session.getGroupId(); + long vreGroupId = PortalContext.getConfiguration().getCurrentGroupId(getThreadLocalRequest()); String vreFriendlyURL = new LiferayGroupManager().getGroup(vreGroupId).getFriendlyURL(); StringBuffer pageToRedirectURL= new StringBuffer(GCubePortalConstants.PREFIX_GROUP_URL) .append(vreFriendlyURL) @@ -84,7 +53,7 @@ public class QuestionsServiceImpl extends RemoteServiceServlet implements Questi managerRedirectURL += new String(Base64.encodeBase64(("-100").getBytes())); toReturn.add(new GroupDTO(true, "View Managers", "No Desc", managerRedirectURL)); - List groups = new LiferayRoleManager().listTeamsByGroup(getCurrentGroupID()); + List groups = new LiferayRoleManager().listTeamsByGroup(vreGroupId); for (GCubeTeam g : groups) { String encodedTeamId = new String(Base64.encodeBase64((""+g.getTeamId()).getBytes())); String teamRedirectURL = pageToRedirectURL+encodedTeamId; @@ -124,24 +93,7 @@ public class QuestionsServiceImpl extends RemoteServiceServlet implements Questi return false; } } - /** - * Get the current group ID - * - * @return the current group ID or null if an exception is thrown - * @throws Exception - * @throws CurrentGroupRetrievalException - */ - private long getCurrentGroupID(){ - GroupManager groupM = new LiferayGroupManager(); - ASLSession session = getASLSession(); - _log.debug("The current group NAME is --> " + session.getGroupName()); - try { - return groupM.getGroupId(session.getGroupName()); - } catch (Exception e) { - e.printStackTrace(); - } - return 0; - } + diff --git a/src/main/java/org/gcube/portlets/user/questions/server/portlet/VREManagersPortlet.java b/src/main/java/org/gcube/portlets/user/questions/server/portlet/VREManagersPortlet.java index c8fa073..6c2cc49 100644 --- a/src/main/java/org/gcube/portlets/user/questions/server/portlet/VREManagersPortlet.java +++ b/src/main/java/org/gcube/portlets/user/questions/server/portlet/VREManagersPortlet.java @@ -1,16 +1,15 @@ package org.gcube.portlets.user.questions.server.portlet; -import javax.portlet.GenericPortlet; -import javax.portlet.ActionRequest; -import javax.portlet.RenderRequest; -import javax.portlet.ActionResponse; -import javax.portlet.RenderResponse; -import javax.portlet.PortletException; import java.io.IOException; -import javax.portlet.PortletRequestDispatcher; -import org.gcube.portal.custom.scopemanager.scopehelper.ScopeHelper; +import javax.portlet.ActionRequest; +import javax.portlet.ActionResponse; +import javax.portlet.GenericPortlet; +import javax.portlet.PortletException; +import javax.portlet.PortletRequestDispatcher; +import javax.portlet.RenderRequest; +import javax.portlet.RenderResponse; /** * @@ -19,7 +18,6 @@ import org.gcube.portal.custom.scopemanager.scopehelper.ScopeHelper; public class VREManagersPortlet extends GenericPortlet { public void doView(RenderRequest request, RenderResponse response) throws PortletException, IOException { response.setContentType("text/html"); - ScopeHelper.setContext(request); PortletRequestDispatcher dispatcher = getPortletContext().getRequestDispatcher("/WEB-INF/jsp/VREManagers_view.jsp"); dispatcher.include(request, response); } diff --git a/src/main/webapp/WEB-INF/portlet.xml b/src/main/webapp/WEB-INF/portlet.xml index 2023431..48748f9 100644 --- a/src/main/webapp/WEB-INF/portlet.xml +++ b/src/main/webapp/WEB-INF/portlet.xml @@ -1,30 +1,33 @@ - - - - - VRESettings - VRE Settings - org.gcube.portlets.user.questions.server.portlet.VREManagersPortlet - - view-jsp - /view.jsp - - 0 - - text/html - - - VRE Managers and Groups - VRE Managers and Groups - VRE Managers and Groups - - - administrator - - - \ No newline at end of file + + + + VRESettings + VRE Settings + org.gcube.portlets.user.questions.server.portlet.VREManagersPortlet + + view-jsp + /view.jsp + + 0 + + text/html + + + VRE Managers and Groups + VRE Managers and Groups + VRE, VRE Managers, Groups + + + + portletSetupShowBorders + true + + + + administrator + + + diff --git a/src/main/webapp/WEB-INF/web.xml b/src/main/webapp/WEB-INF/web.xml index f5ed878..3e3a7b9 100644 --- a/src/main/webapp/WEB-INF/web.xml +++ b/src/main/webapp/WEB-INF/web.xml @@ -1,21 +1,25 @@ - - - - - groupServlet - org.gcube.portlets.user.questions.server.QuestionsServiceImpl - - - - - groupServlet - /questions/getgroups - - - - - + + + groupServlet + org.gcube.portlets.user.questions.server.QuestionsServiceImpl + + + groupServlet + /questions/getgroups + + + LogFilter + + org.gcube.portlets.user.questions.server.LogFilter + + + test-param + This parameter is for testing. + + + + LogFilter + /* + + \ No newline at end of file