View Javadoc

1   /*
2    * JaspertReports JSF Plugin Copyright (C) 2011 A. Alonso Dominguez
3    *
4    * This library is free software; you can redistribute it and/or modify it
5    * under the terms of the GNU Lesser General Public License as published by
6    * the Free Software Foundation; either version 2.1 of the License, or (at
7    * your option) any later version. This library is distributed in the hope
8    * that it will be useful, but WITHOUT ANY WARRANTY; without even the implied
9    * warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
10   *
11   * See the GNU Lesser General Public License for more details. You should have
12   * received a copy of the GNU Lesser General Public License along with this
13   * library; if not, write to the Free Software Foundation, Inc., 59 Temple
14   * Place, Suite 330, Boston, MA 02111-1307 USA A.
15   *
16   * Alonso Dominguez
17   * alonsoft@users.sf.net
18   */
19  package net.sf.jasperreports.jsf.convert;
20  
21  import java.io.Serializable;
22  
23  import javax.faces.context.FacesContext;
24  
25  import net.sf.jasperreports.engine.JasperReport;
26  import net.sf.jasperreports.jsf.component.UIReport;
27  
28  /**
29   * Report converter interface.
30   *
31   * @author A. Alonso Dominguez
32   */
33  public interface ReportConverter extends Serializable {
34  
35      public boolean accepts(Object value);
36      
37      /**
38       * Obtains a <tt>JasperReport</tt> instance from the value
39       * received as a parameter.
40       *
41       * @param context current faces' context.
42       * @param component the faces' component asking for conversion.
43       * @param value the value that must be converted.
44       * @return a <tt>JasperReport</tt> instance.
45       * @throws ConverterException if value can't be converted.
46       */
47      public JasperReport convertFromValue(FacesContext context,
48              UIReport component, Object value)
49      throws ConverterException;
50  
51  }