br.com.hslife.orcamento.controller.AbstractController.java Source code

Java tutorial

Introduction

Here is the source code for br.com.hslife.orcamento.controller.AbstractController.java

Source

/***
      
 Copyright (c) 2012 - 2020 Hrcules S. S. Jos
    
Este arquivo  parte do programa Oramento Domstico.
    
    
Oramento Domstico  um software livre; voc pode redistribui-lo e/ou 
    
modific-lo dentro dos termos da Licena Pblica Geral Menor GNU como 
    
publicada pela Fundao do Software Livre (FSF); na verso 2.1 da 
    
Licena.
    
    
Este programa  distribudo na esperana que possa ser til, 
    
mas SEM NENHUMA GARANTIA; sem uma garantia implcita de ADEQUAO a 
    
qualquer MERCADO ou APLICAO EM PARTICULAR. Veja a Licena Pblica 
    
Geral Menor GNU em portugus para maiores detalhes.
    
    
Voc deve ter recebido uma cpia da Licena Pblica Geral Menor GNU sob o 
    
nome de "LICENSE.TXT" junto com este programa, se no, acesse o site do
    
projeto no endereco https://github.com/herculeshssj/orcamento ou escreva 
    
para a Fundao do Software Livre(FSF) Inc., 51 Franklin St, Fifth Floor, 
    
Boston, MA  02110-1301, USA.
    
    
Para mais informaes sobre o programa Oramento Domstico e seu autor entre  
    
em contato pelo e-mail herculeshssj@outlook.com, ou ainda escreva para 
    
Hrcules S. S. Jos, Av. Ministro Lafaeyte de Andrade, 1683 - Bl. 3 Apt 404, 
    
Marco II - Nova Iguau, RJ, Brasil.
      
***/

package br.com.hslife.orcamento.controller;

import java.io.Serializable;
import java.util.Locale;

import javax.faces.application.FacesMessage;
import javax.faces.context.FacesContext;

import org.springframework.beans.factory.annotation.Autowired;

import br.com.hslife.orcamento.component.OpcaoSistemaComponent;
import br.com.hslife.orcamento.component.UsuarioComponent;
import br.com.hslife.orcamento.entity.Moeda;
import br.com.hslife.orcamento.entity.Usuario;

public abstract class AbstractController implements Serializable {

    /**
     * 
     */
    private static final long serialVersionUID = -4309624158532539748L;

    protected String moduleTitle = "";
    protected String actionTitle = "";

    @Autowired
    private UsuarioComponent usuarioComponent;

    @Autowired
    private OpcaoSistemaComponent opcaoSistemaComponent;

    protected abstract void initializeEntity();

    public abstract String startUp();

    public String getModuleTitle() {
        return moduleTitle;
    }

    public Usuario getUsuarioLogado() {
        if (FacesContext.getCurrentInstance().getExternalContext().getSessionMap().get("usuarioLogado") == null) {
            Usuario u = new Usuario();
            try {
                u = usuarioComponent.getUsuarioLogado();
                u.setSenha(null);
                FacesContext.getCurrentInstance().getExternalContext().getSessionMap().put("usuarioLogado", u);
            } catch (Exception e) {
                errorMessage(e.getMessage());
            }
        }

        // Aplica as configuraes de locale para pt_BR
        // Tentativa de definir o pt_BR para a aplicao inteira independente das configuraes do servidor de aplicao
        FacesContext.getCurrentInstance().getViewRoot().setLocale(new Locale("pt", "BR"));

        return (Usuario) FacesContext.getCurrentInstance().getExternalContext().getSessionMap()
                .get("usuarioLogado");
    }

    public OpcaoSistemaComponent getOpcoesSistema() {
        return opcaoSistemaComponent;
    }

    public Moeda getMoedaPadrao() {
        return getOpcoesSistema().getMoedaPadrao();
    }

    public void infoMessage(String mensage) {
        FacesContext.getCurrentInstance().addMessage(null,
                new FacesMessage(FacesMessage.SEVERITY_INFO, mensage, null));
    }

    public void warnMessage(String mensage) {
        FacesContext.getCurrentInstance().addMessage(null,
                new FacesMessage(FacesMessage.SEVERITY_WARN, mensage, null));
    }

    public void errorMessage(String mensage) {
        FacesContext.getCurrentInstance().addMessage(null,
                new FacesMessage(FacesMessage.SEVERITY_ERROR, mensage, null));
    }

    public void fatalErrorMessage(String mensage) {
        FacesContext.getCurrentInstance().addMessage(null,
                new FacesMessage(FacesMessage.SEVERITY_FATAL, mensage, null));
    }

    public void setUsuarioComponent(UsuarioComponent usuarioComponent) {
        this.usuarioComponent = usuarioComponent;
    }

    public void setOpcaoSistemaComponent(OpcaoSistemaComponent opcaoSistemaComponent) {
        this.opcaoSistemaComponent = opcaoSistemaComponent;
    }
}