--- /dev/null
+package org.openecomp.portalapp.login;\r
+\r
+import javax.servlet.http.Cookie;\r
+import javax.servlet.http.HttpServletRequest;\r
+import javax.servlet.http.HttpServletResponse;\r
+\r
+import org.openecomp.portalsdk.core.auth.LoginStrategy;\r
+import org.openecomp.portalsdk.core.onboarding.exception.PortalAPIException;\r
+import org.openecomp.portalsdk.core.onboarding.util.CipherUtil;\r
+import org.openecomp.portalsdk.core.onboarding.util.PortalApiConstants;\r
+import org.openecomp.portalsdk.core.onboarding.util.PortalApiProperties;\r
+import org.springframework.web.servlet.ModelAndView;\r
+\r
+public class LoginStrategyImpl extends LoginStrategy {\r
+ \r
+ @Override\r
+ public ModelAndView doLogin(HttpServletRequest request, HttpServletResponse response) throws Exception {\r
+ //'login' for opensource is same as 'external' login.\r
+ return doExternalLogin(request, response);\r
+ }\r
+ \r
+ @Override\r
+ public String getUserId(HttpServletRequest request) throws PortalAPIException {\r
+ // Check ECOMP Portal cookie\r
+ if (!isLoginCookieExist(request))\r
+ return null;\r
+\r
+ String userid = null;\r
+ try {\r
+ userid = getUserIdFromCookie(request);\r
+ } catch (Exception e) {\r
+ // TODO Auto-generated catch block\r
+ e.printStackTrace();\r
+ }\r
+ return userid; \r
+ }\r
+\r
+ private static String getUserIdFromCookie(HttpServletRequest request) throws Exception {\r
+ String userId = "";\r
+ Cookie[] cookies = request.getCookies();\r
+ Cookie userIdcookie = null;\r
+ if (cookies != null)\r
+ for (Cookie cookie : cookies)\r
+ if (cookie.getName().equals(USER_ID))\r
+ userIdcookie = cookie;\r
+ if(userIdcookie!=null){\r
+ userId = CipherUtil.decrypt(userIdcookie.getValue(),\r
+ PortalApiProperties.getProperty(PortalApiConstants.Decryption_Key));\r
+ }\r
+ return userId;\r
+ \r
+ }\r
+ \r
+ private static boolean isLoginCookieExist(HttpServletRequest request) {\r
+ Cookie ep = getCookie(request, EP_SERVICE);\r
+ return (ep != null);\r
+ }\r
+ \r
+ private static Cookie getCookie(HttpServletRequest request, String cookieName) {\r
+ Cookie[] cookies = request.getCookies();\r
+ if (cookies != null)\r
+ for (Cookie cookie : cookies)\r
+ if (cookie.getName().equals(cookieName))\r
+ return cookie;\r
+\r
+ return null;\r
+ }\r
+\r
+ \r
+}\r