/** * 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.dashboard; import br.gov.camara.edemocracia.portlets.dashboard.customquery.QueryExecutor; import br.gov.camara.edemocracia.portlets.dashboard.customquery.impl.ArtigosComMaiorParticipacao; import br.gov.camara.edemocracia.portlets.dashboard.customquery.impl.ArtigosComMaisSugestoes; import br.gov.camara.edemocracia.portlets.dashboard.customquery.impl.BatePapoComMaisMensagens; import br.gov.camara.edemocracia.portlets.dashboard.customquery.impl.BatePapoComMaisUsuarios; import br.gov.camara.edemocracia.portlets.dashboard.customquery.impl.BlogsComMaiorParticipacao; import br.gov.camara.edemocracia.portlets.dashboard.customquery.impl.ComunidadesComMaisConteudosWeb; import br.gov.camara.edemocracia.portlets.dashboard.customquery.impl.ComunidadesComMaisDocumentos; import br.gov.camara.edemocracia.portlets.dashboard.customquery.impl.ComunidadesComMaisPaginas; import br.gov.camara.edemocracia.portlets.dashboard.customquery.impl.TopicosComMaiorParticipacao; import br.gov.camara.edemocracia.portlets.dashboard.customquery.impl.WikisComMaiorParticipacao; import com.liferay.portal.model.Layout; import com.liferay.portlet.blogs.model.BlogsEntry; import com.liferay.portlet.documentlibrary.model.DLFileEntry; import com.liferay.portlet.journal.model.JournalArticle; import com.liferay.portlet.messageboards.model.MBThread; import com.liferay.portlet.wiki.model.WikiPage; public enum Recurso { TOPICO(1,"Tópico","(Postagens) Tópico", "Postagens" , TopicosComMaiorParticipacao.class, MBThread.class.getName(), false), WIKI(2, "Wiki", "(Comentários) Wiki" , "Comentários" , WikisComMaiorParticipacao.class, WikiPage.class.getName(), false), BLOG(3,"Blog", "(Comentários) Blog" , "Comentários" , BlogsComMaiorParticipacao.class, BlogsEntry.class.getName(), false), ARTIGOS_WIKILEGIS(4,"Artigo", " (Comentários) Wikilégis" , "Comentários" , ArtigosComMaiorParticipacao.class, "br.gov.camara.edemocracia.portlets.wikilegis.model.Artigo", false), ARTIGOS_WIKILEGIS_SUGESTOES(5,"Artigo", "(Sugestões) Wikilégis" , "Sugestões" , ArtigosComMaisSugestoes.class, "br.gov.camara.edemocracia.portlets.wikilegis.model.Contribuicao", false ), BATEPAPO_MENSAGENS (6,"Sala", "(Mensagens) Bate-papo" , "Mensagens" , BatePapoComMaisMensagens.class, "br.gov.camara.edemocracia.portlets.chat.model.ChatRoom" , false), BATEPAPO_USUARIOS (7,"Sala", "(Usuários) Bate-papo" , "Usuários" , BatePapoComMaisUsuarios.class, "br.gov.camara.edemocracia.portlets.chat.model.ChatRoom" , false), PAGINAS_COMUNIDADE (8,"Comunidade", "(Páginas) Comunidade" , "Páginas" , ComunidadesComMaisPaginas.class, Layout.class.getName() , true), DOCUMENTOS_COMUNIDADE (9,"Comunidade", "(Documentos) Comunidade" , "Documentos" , ComunidadesComMaisDocumentos.class, DLFileEntry.class.getName() , true), CONTEUDO_WEB_COMUNIDADE (10,"Comunidade", "(Conteúdos Web) Comunidade" , "Conteúdos Web" , ComunidadesComMaisConteudosWeb.class, JournalArticle.class.getName() , true); private int id; private String label; private String labelConfiguracao; private String medida; private Class<? extends QueryExecutor> queryExecutor; private String className; private boolean quantitativoGeral; private Recurso (int id, String label , String labelConfiguracao ,String medida, Class<? extends QueryExecutor> queryExecutor , String className , boolean quantitativoGeral) { this.id = id; this.label = label; this.labelConfiguracao = labelConfiguracao; this.medida = medida; this.queryExecutor = queryExecutor; this.className = className; this.quantitativoGeral = quantitativoGeral; } /** * Retorna um objeto Recursos correspondente * * Se não encontrar retorna null * * @param id * @return */ public static Recurso withValue(int id){ Recurso[] recursos = values(); for (Recurso recurso : recursos) { if (recurso.getId() == id ) { return recurso; } } return null; } public String getLabel() { return label; } public String getMedida() { return medida; } public int getId() { return id; } public String getLabelConfiguracao() { return labelConfiguracao; } public Class<? extends QueryExecutor> getQueryExecutor() { return queryExecutor; } public String getClassName() { return className; } public boolean isQuantitativoGeral() { return quantitativoGeral; } }