/* * This file is part of SGEA - Sistema de Gestão de Eventos Acadêmicos - TADS IFNMG Campus Januária. * * SGEA is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * SGEA is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with SGEA. If not, see <http://www.gnu.org/licenses/>. */ package br.edu.ifnmg.GerenciamentoEventos.Infraestrutura; import br.edu.ifnmg.DomainModel.Log; import br.edu.ifnmg.DomainModel.Permissao; import br.edu.ifnmg.DomainModel.Services.AutenticacaoService; import br.edu.ifnmg.DomainModel.Services.LogRepositorio; import br.edu.ifnmg.DomainModel.Services.LogService; import br.edu.ifnmg.DomainModel.Services.PermissaoRepositorio; import javax.ejb.EJB; import javax.ejb.Stateless; import javax.faces.context.FacesContext; import javax.inject.Inject; import javax.servlet.http.HttpServletRequest; @Stateless public class LogServiceImpl implements LogService { @EJB private PermissaoRepositorio permissaoDAO; @EJB private LogRepositorio logDAO; @Inject AutenticacaoService autentitacao; @Override public boolean Append(String msg) { try { HttpServletRequest httpServletRequest = (HttpServletRequest) FacesContext.getCurrentInstance().getExternalContext().getRequest(); String ip = httpServletRequest.getRemoteHost(); String page = FacesContext.getCurrentInstance().getViewRoot().getViewId(); page = page.substring(1, page.length()); Permissao p = permissaoDAO.Abrir(page); Log log = new Log(); log.setDescricao(msg); log.setUsuario(autentitacao.getUsuarioCorrente()); log.setPermissao(p); log.setMaquina(ip); logDAO.Salvar(log); } catch (Exception ex) { return false; } return true; } }