package com.farriver.bwf.web.controller.admin; import com.farriver.bwf.data.transferobject.viewmodel.security.AccountMasterViewModel; import jakarta.servlet.http.HttpServletRequest; import jakarta.servlet.http.HttpServletResponse; import jakarta.servlet.http.HttpSession; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.web.context.request.RequestContextHolder; import org.springframework.web.context.request.ServletRequestAttributes; public abstract class AdminControllerBase { private static final Logger logger = LoggerFactory.getLogger(AdminControllerBase.class); private HttpServletRequest request; private HttpServletResponse response; private HttpSession session; public HttpServletRequest getRequest() { ServletRequestAttributes requestAttributes = (ServletRequestAttributes) RequestContextHolder.getRequestAttributes(); assert requestAttributes != null; this.request = requestAttributes.getRequest(); return request; } public HttpServletResponse getResponse() { ServletRequestAttributes requestAttributes = (ServletRequestAttributes) RequestContextHolder.getRequestAttributes(); assert requestAttributes != null; this.response = requestAttributes.getResponse(); return response; } public HttpSession getSession() { ServletRequestAttributes requestAttributes = (ServletRequestAttributes) RequestContextHolder.getRequestAttributes(); assert requestAttributes != null; this.request = requestAttributes.getRequest(); this.session = this.request.getSession(); if (session != null) System.out.println(session.getId()); return session; } public AccountMasterViewModel CurrentUser() { try { this.session = getSession(); if (this.session != null) { Object cu = this.session.getAttribute("account"); return (AccountMasterViewModel) cu; } return null; } catch (Exception ex) { logger.error(ex.getMessage(), ex); return null; } } }