/** * Este arquivo é parte do Biblivre3. * * Biblivre3 é um software livre; você pode redistribuí-lo e/ou * modificá-lo dentro dos termos da Licença Pública Geral GNU como * publicada pela Fundação do Software Livre (FSF); na versão 3 da * Licença, ou (caso queira) qualquer versão posterior. * * Este programa é distribuído na esperança de que possa ser útil, * mas SEM NENHUMA GARANTIA; nem mesmo a garantia implícita de * MERCANTIBILIDADE OU ADEQUAÇÃO PARA UM FIM PARTICULAR. Veja a * Licença Pública Geral GNU para maiores detalhes. * * Você deve ter recebido uma cópia da Licença Pública Geral GNU junto * com este programa, Se não, veja em <http://www.gnu.org/licenses/>. * * @author Alberto Wagner <alberto@biblivre.org.br> * @author Danniel Willian <danniel@biblivre.org.br> * */ package biblivre3.authorization; import mercury.*; import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.util.HashMap; public class AuthorizationDAO extends DAO { public AuthorizationDAO() { super(); } public HashMap<String, Boolean> getUserPermissions(final LoginDTO user) { Connection con = null; HashMap<String, Boolean> hash = new HashMap<String, Boolean>(); try { con = getDataSource().getConnection(); final String sql = "SELECT permission FROM permissions WHERE loginid = ?;"; final PreparedStatement pst = con.prepareStatement(sql); pst.setInt(1, user.getLoginId()); final ResultSet rs = pst.executeQuery(); if (rs != null) { while (rs.next()) { hash.put(rs.getString("permission"), Boolean.TRUE); } } } catch (Exception e) { log.error(e.getMessage(), e); throw new DAOException(e.getMessage()); } finally { closeConnection(con); } return hash; } }