package itn.com.cmm.util;

import itn.com.cmm.LoginVO;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpSession;

public class ClientRequestUtil {
    private static final String ANONYMOUS = "ANONYMOUS";
    private static final String LOGIN_VO_ATTRIBUTE = "LoginVO";

    public static String getUserId(HttpServletRequest request) {
        if (request == null) {
            return ANONYMOUS;
        }

        HttpSession session = request.getSession(false);

        if (session == null) {
            return ANONYMOUS;
        }

        Object loginAttribute = session.getAttribute(LOGIN_VO_ATTRIBUTE);

        if (!(loginAttribute instanceof LoginVO)) {
            return ANONYMOUS;
        }

        LoginVO loginVO = (LoginVO) loginAttribute;

        return loginVO.getId() == null || loginVO.getId().trim().isEmpty()
                ? ANONYMOUS
                : loginVO.getId();
    }
}
