Package pt.opensoft.msg

Source Code of pt.opensoft.msg.FacesRequest

package pt.opensoft.msg;

import pt.opensoft.http.SessionUser;

import javax.faces.application.FacesMessage;
import javax.faces.application.FacesMessage.Severity;
import javax.faces.component.UIComponent;
import javax.faces.context.ExternalContext;
import javax.faces.context.FacesContext;
import javax.servlet.http.HttpSession;
import java.util.ResourceBundle;

public class FacesRequest extends Request {
  private static final long serialVersionUID = -4542685716608907875L;

  private FacesContext facesContext;

  public static String ADD_MESSAGE_ERROR = "error";

  public static String ADD_MESSAGE_WARNING = "warning";

  public static String ADD_MESSAGE_INFO = "info";

  public static String SHOW_MESSAGE_ERROR = "error";

  public static String SHOW_MESSAGE_WARNING = "warning";

  public static String SHOWMESSAGE_INFO = "info";

  public static String SHOWMESSAGE_FATAL = "fatal";

  public FacesRequest(FacesContext context) {
    super();
    this.facesContext = context;
  }

  public String getMethod() {
    // TODO Auto-generated method stub
    return null;
  }

  public Session getSession() {
    // TODO Auto-generated method stub
    return null;
  }

  public Session getSession(boolean create) {
    // TODO Auto-generated method stub
    return null;
  }

  public boolean isSecure() {
    // TODO Auto-generated method stub
    return false;
  }

  public void addGlobalMessage(String message, Severity sev) {
    FacesMessage m = new FacesMessage(message);
    m.setSeverity(sev);
    FacesContext.getCurrentInstance().addMessage(null, m);
  }

  public void addGlobalError(String errorMessage) {
    addGlobalMessage(errorMessage, FacesMessage.SEVERITY_ERROR);
  }

  // se o tipo for desconhecido a mensagem � mostrada como INFO
  public String addMessage(UIComponent componente, String msg, String type) {
    FacesMessage message = new FacesMessage(msg);

    if (type.equals("error"))
      message.setSeverity(FacesMessage.SEVERITY_ERROR);
    else if (type.equals("warning"))
      message.setSeverity(FacesMessage.SEVERITY_WARN);
    else if (type.equals("info"))
      message.setSeverity(FacesMessage.SEVERITY_INFO);
    else if (type.equals("fatal"))
      message.setSeverity(FacesMessage.SEVERITY_FATAL);
    else
      message.setSeverity(FacesMessage.SEVERITY_INFO);

    this.facesContext.addMessage(componente.getClientId(this.facesContext), message);
    return null;
  }

  public ResourceBundle getLocalizedBundle() {
    return ResourceBundle.getBundle("pt.opensoft.messageResource.MessageResources", facesContext
        .getViewRoot().getLocale());
  }

  public String getMessageFromLocalizedBundle(String messageKey) {
    return getLocalizedBundle().getString(messageKey);
  }

  public void logout() {
    if (facesContext != null) {
      ExternalContext externalContext = facesContext.getExternalContext();
      if (externalContext != null) {
        HttpSession session = (HttpSession) externalContext.getSession(false);
        if (session != null) {
          session.invalidate();
        }
      }
    }
  }

  public FacesContext getFacesContext() {
    return facesContext;
  }

  public SessionUser getSessionUser() {
    if (facesContext == null) {
      return null;
    }

    try {
      ExternalContext exc = facesContext.getExternalContext();
      if (exc == null)
        return null;
      if (exc.getSession(false) == null)
        return null;

      SessionUser sessionUserBean = (SessionUser) facesContext.getApplication().getVariableResolver()
          .resolveVariable(facesContext, SessionUser.SESSION_USER_BEAN_NAME);
      return sessionUserBean;
    } catch (IllegalStateException e) {
      return null;
    }
  }

}
TOP

Related Classes of pt.opensoft.msg.FacesRequest

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.