/** * Copyright (c) 2009-2014 Câmara dos Deputados. Todos os direitos reservados. * * e-Democracia é um software livre; você pode redistribuí-lo e/ou modificá-lo dentro * dos termos da Licença Pública Geral Menor GNU como publicada pela Fundação do * Software Livre (FSF); na versão 2.1 da Licença, ou (na sua opinião) qualquer versão. * * Este programa é distribuído na esperança de que possa ser útil, mas SEM NENHUMA GARANTIA; * sem uma garantia implícita de ADEQUAÇÃO a qualquer MERCADO ou APLICAÇÃO EM PARTICULAR. * Veja a Licença Pública Geral Menor GNU para maiores detalhes. */ package br.gov.camara.edemocracia.portlets.participacao.exporter; import java.util.List; import br.gov.camara.edemocracia.portlets.graficos.DadosComunidadeDTO; import br.gov.camara.edemocracia.portlets.graficos.DadosUsuarioDTO; public class CSVParticipacaoExporter { private static StringBuilder sb ; public CSVParticipacaoExporter() { } public static String export(List<DadosComunidadeDTO> listaDadosComunidade) { sb = new StringBuilder(); insertColumn("idComunidade"); insertColumn("comunidade"); insertColumn("idUsuario"); insertColumn("usuario"); insertColumn("email"); insertColumn("postagensForum"); insertColumn("comentariosWikilegis"); insertColumn("contribuicoesWikilegis"); insertColumn("comentariosWiki"); insertColumn("alteracoesWiki"); insertColumn("comentariosBlog"); insertColumn("comentariosConteudoWeb"); insertColumn("comentariosDocumentos"); insertColumn("membro"); lineEnd(); for (DadosComunidadeDTO comunidade : listaDadosComunidade) { String groupId = Long.toString(comunidade.getGroupId()); String nomeComunidade = comunidade.getNomeComunidade(); for(DadosUsuarioDTO dadosUsuario : comunidade.getListaDadosUsuario().values()){ insertColumn(groupId); insertColumn(nomeComunidade); insertColumn(dadosUsuario.getUserId()); insertColumn(dadosUsuario.getUsername()); insertColumn(dadosUsuario.getEmail()); insertColumn(dadosUsuario.getPostagensForum()); insertColumn(dadosUsuario.getComentariosWikilegis()); insertColumn(dadosUsuario.getContribuicoesWikilegis()); insertColumn(dadosUsuario.getComentariosWiki()); insertColumn(dadosUsuario.getAlteracoesWiki()); insertColumn(dadosUsuario.getComentariosBlog()); insertColumn(dadosUsuario.getComentariosConteudoWeb()); insertColumn(dadosUsuario.getComentariosDocumentos()); insertColumn(dadosUsuario.isMembro() ? "Sim" : "Não"); lineEnd(); } } return sb.toString(); } private static void insertColumn(String coluna) { sb.append("\""+coluna+"\"").append(";"); } private static void insertColumn(long coluna) { sb.append("\"" + Long.toString(coluna) + "\"").append(";"); } private static void insertColumn(int coluna) { sb.append("\"" + Integer.toString(coluna) + "\"").append(";"); } private static void insertColumn(boolean coluna) { sb.append("\"" + Boolean.toString(coluna) + "\"").append(";"); } private static void lineEnd() { sb.append("\n"); } }