1*1a37d047SAndrew Rist /************************************************************** 2cdf0e10cSrcweir * 3*1a37d047SAndrew Rist * Licensed to the Apache Software Foundation (ASF) under one 4*1a37d047SAndrew Rist * or more contributor license agreements. See the NOTICE file 5*1a37d047SAndrew Rist * distributed with this work for additional information 6*1a37d047SAndrew Rist * regarding copyright ownership. The ASF licenses this file 7*1a37d047SAndrew Rist * to you under the Apache License, Version 2.0 (the 8*1a37d047SAndrew Rist * "License"); you may not use this file except in compliance 9*1a37d047SAndrew Rist * with the License. You may obtain a copy of the License at 10*1a37d047SAndrew Rist * 11*1a37d047SAndrew Rist * http://www.apache.org/licenses/LICENSE-2.0 12*1a37d047SAndrew Rist * 13*1a37d047SAndrew Rist * Unless required by applicable law or agreed to in writing, 14*1a37d047SAndrew Rist * software distributed under the License is distributed on an 15*1a37d047SAndrew Rist * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 16*1a37d047SAndrew Rist * KIND, either express or implied. See the License for the 17*1a37d047SAndrew Rist * specific language governing permissions and limitations 18*1a37d047SAndrew Rist * under the License. 19*1a37d047SAndrew Rist * 20*1a37d047SAndrew Rist *************************************************************/ 21*1a37d047SAndrew Rist 22*1a37d047SAndrew Rist 23cdf0e10cSrcweir package com.sun.star.report.pentaho; 24cdf0e10cSrcweir 25cdf0e10cSrcweir import com.sun.star.report.JobDefinitionException; 26cdf0e10cSrcweir import com.sun.star.report.ReportEngine; 27cdf0e10cSrcweir import com.sun.star.report.ReportEngineMetaData; 28cdf0e10cSrcweir import com.sun.star.report.ReportJob; 29cdf0e10cSrcweir import com.sun.star.report.ReportJobDefinition; 30cdf0e10cSrcweir import com.sun.star.report.util.DefaultReportJobDefinition; 31cdf0e10cSrcweir 32cdf0e10cSrcweir import org.jfree.report.JFreeReportBoot; 33cdf0e10cSrcweir 34cdf0e10cSrcweir public class PentahoReportEngine implements ReportEngine 35cdf0e10cSrcweir { 36cdf0e10cSrcweir 37cdf0e10cSrcweir private final ReportEngineMetaData metaData; 38cdf0e10cSrcweir PentahoReportEngine()39cdf0e10cSrcweir public PentahoReportEngine() 40cdf0e10cSrcweir { 41cdf0e10cSrcweir JFreeReportBoot.getInstance().start(); 42cdf0e10cSrcweir this.metaData = new PentahoReportEngineMetaData(); 43cdf0e10cSrcweir } 44cdf0e10cSrcweir getMetaData()45cdf0e10cSrcweir public ReportEngineMetaData getMetaData() 46cdf0e10cSrcweir { 47cdf0e10cSrcweir return metaData; 48cdf0e10cSrcweir } 49cdf0e10cSrcweir createJobDefinition()50cdf0e10cSrcweir public ReportJobDefinition createJobDefinition() 51cdf0e10cSrcweir { 52cdf0e10cSrcweir return new DefaultReportJobDefinition(metaData); 53cdf0e10cSrcweir } 54cdf0e10cSrcweir 55cdf0e10cSrcweir /** 56cdf0e10cSrcweir * Open points: How to define scheduling? 57cdf0e10cSrcweir * 58cdf0e10cSrcweir * @return the report job definition for the job description. 59cdf0e10cSrcweir * 60cdf0e10cSrcweir * @throws com.sun.star.report.JobDefinitionException 61cdf0e10cSrcweir * 62cdf0e10cSrcweir */ createJob(final ReportJobDefinition definition)63cdf0e10cSrcweir public ReportJob createJob(final ReportJobDefinition definition) 64cdf0e10cSrcweir throws JobDefinitionException 65cdf0e10cSrcweir { 66cdf0e10cSrcweir return new PentahoReportJob(definition); 67cdf0e10cSrcweir } 68cdf0e10cSrcweir } 69