/******************************************************************************* * This file is part of OpenNMS(R). Copyright (C) 2009-2011 The OpenNMS Group, * Inc. OpenNMS(R) is Copyright (C) 1999-2011 The OpenNMS Group, Inc. * OpenNMS(R) is a registered trademark of The OpenNMS Group, Inc. OpenNMS(R) * 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. OpenNMS(R) 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 OpenNMS(R). If not, see: http://www.gnu.org/licenses/ * For more information contact: OpenNMS(R) Licensing <license@opennms.org> * http://www.opennms.org/ http://www.opennms.com/ *******************************************************************************/ package org.opennms.web.svclayer.support; import org.opennms.features.reporting.model.basicreport.BasicReportDefinition; import org.opennms.features.reporting.repository.ReportRepository; import org.opennms.features.reporting.repository.global.GlobalReportRepository; import org.opennms.web.svclayer.DatabaseReportListService; import java.util.ArrayList; import java.util.List; /** * <p> * DefaultDatabaseReportListService class. * </p> * * @author ranger * @version $Id: $ * @since 1.8.1 */ public class DefaultDatabaseReportListService implements DatabaseReportListService { private GlobalReportRepository m_globalReportRepository; /** * <p> * getAll Reports from all Repositories * </p> * * @return a {@link java.util.List} object. */ @Deprecated public List<DatabaseReportDescription> getAll() { List<DatabaseReportDescription> allReports = new ArrayList<DatabaseReportDescription>(); for (ReportRepository globalRepository : m_globalReportRepository.getRepositoryList()) { for (BasicReportDefinition report : globalRepository.getReports()) { DatabaseReportDescription summary = new DatabaseReportDescription(); summary.setRepositoryId(globalRepository.getRepositoryId()); summary.setId(report.getId()); summary.setDisplayName(report.getDisplayName()); summary.setDescription(report.getDescription()); summary.setIsOnline(report.getOnline()); summary.setAllowAccess(report.getAllowAccess()); allReports.add(summary); } } return allReports; } @Override public List<ReportRepositoryDescription> getActiveRepositories() { List<ReportRepositoryDescription> result = new ArrayList<ReportRepositoryDescription>(); List<ReportRepository> reportRepositoryList = new ArrayList<ReportRepository>(); reportRepositoryList = m_globalReportRepository.getRepositoryList(); for (ReportRepository repository : reportRepositoryList) { ReportRepositoryDescription reportRepositoryDescription = new ReportRepositoryDescription(); reportRepositoryDescription.setId(repository.getRepositoryId()); reportRepositoryDescription.setDescription(repository.getRepositoryDescription()); reportRepositoryDescription.setDisplayName(repository.getRepositoryName()); reportRepositoryDescription.setManagementUrl(repository.getManagementUrl()); result.add(reportRepositoryDescription); } return result; } @Override public List<DatabaseReportDescription> getOnlineReportsByRepositoryId(String repositoryId) { List<DatabaseReportDescription> onlineReportList = new ArrayList<DatabaseReportDescription>(); for (BasicReportDefinition reportDefinition : m_globalReportRepository.getRepositoryById(repositoryId).getOnlineReports()) { DatabaseReportDescription summary = new DatabaseReportDescription(); summary.setRepositoryId(reportDefinition.getRepositoryId()); summary.setId(reportDefinition.getId()); summary.setDisplayName(reportDefinition.getDisplayName()); summary.setDescription(reportDefinition.getDescription()); summary.setIsOnline(reportDefinition.getOnline()); summary.setAllowAccess(reportDefinition.getAllowAccess()); onlineReportList.add(summary); } return onlineReportList; } @Override public List<DatabaseReportDescription> getReportsByRepositoryId(String repositoryId) { List<DatabaseReportDescription> reportList = new ArrayList<DatabaseReportDescription>(); for (BasicReportDefinition reportDefinition : m_globalReportRepository.getRepositoryById(repositoryId).getReports()) { DatabaseReportDescription summary = new DatabaseReportDescription(); summary.setRepositoryId(reportDefinition.getRepositoryId()); summary.setId(reportDefinition.getId()); summary.setDisplayName(reportDefinition.getDisplayName()); summary.setDescription(reportDefinition.getDescription()); summary.setIsOnline(reportDefinition.getOnline()); summary.setAllowAccess(reportDefinition.getAllowAccess()); reportList.add(summary); } return reportList; } /** * <p> * getAll Reports from all Repositories * </p> * * @return a {@link java.util.List} object. */ @Deprecated public List<DatabaseReportDescription> getAllOnline() { List<DatabaseReportDescription> onlineReports = new ArrayList<DatabaseReportDescription>(); for (ReportRepository m_repo : m_globalReportRepository.getRepositoryList()) { for (BasicReportDefinition report : m_repo.getOnlineReports()) { DatabaseReportDescription summary = new DatabaseReportDescription(); summary.setRepositoryId(m_repo.getRepositoryId()); summary.setId(report.getId()); summary.setDisplayName(report.getDisplayName()); summary.setDescription(report.getDescription()); summary.setIsOnline(report.getOnline()); summary.setAllowAccess(report.getAllowAccess()); onlineReports.add(summary); } } return onlineReports; } public void setGlobalReportRepository(GlobalReportRepository globalReportRepository) { m_globalReportRepository = globalReportRepository; } @Override public void reloadConfigurationFiles() { m_globalReportRepository.reloadConfigurationFiles(); } }