/* * Copyright (C) 2012 Marius Giepz * * This program 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 2 of the License, or (at your option) * any later version. * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * * See the GNU General Public License for more details. * * You should have received a copy of the GNU General Public License along * with this program; if not, write to the Free Software Foundation, Inc., * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA * */ package org.saiku.adhoc.providers; import java.io.OutputStream; import java.util.ArrayList; import java.util.List; import java.util.Map; import org.pentaho.reporting.engine.classic.extensions.datasources.cda.CdaDataFactory; import org.saiku.adhoc.exceptions.SaikuAdhocException; import org.saiku.adhoc.model.dto.SaikuCda; public interface ICdaProvider { public void load(); public SaikuCda addDatasource(SaikuCda datasource); public SaikuCda setDatasource(SaikuCda datasource); public List<SaikuCda> addDatasources(List<SaikuCda> datasources); public boolean removeDatasource(String datasourceName); public Map<String, SaikuCda> getDatasources(); public SaikuCda getDatasource(String datasourceName); public String getPath(); //public String getSolution(); public void addDatasource(String solution, String path, String action, String asXML); public CdaDataFactory getDataFactory(ArrayList<String> queryIds); public void callCDA(String pluginName, String method, Map<String, Object> params, OutputStream outputStream, String foo) throws SaikuAdhocException; public String callCDA(String pluginName, String method, Map<String, Object> params) throws SaikuAdhocException; public String getSolution(); }