net.sf.jasperreports.engine.query

## Class JsonQueryExecuterFactory

- java.lang.Object
- - net.sf.jasperreports.engine.query.AbstractQueryExecuterFactory
  - - net.sf.jasperreports.engine.query.JsonQueryExecuterFactory

- All Implemented Interfaces:
    JRQueryExecuterFactory, QueryExecuterFactory

      public class JsonQueryExecuterFactory
      extends AbstractQueryExecuterFactory

  JSON query executer factory.

  The factory creates `JRJsonQueryExecuter` query executers.
  Version:
    $Id: JsonQueryExecuterFactory.java 5878 2013-01-07 20:23:13Z teodord $
  Author:
    Narcis Marcu (narcism@users.sourceforge.net)

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `static java.lang.String` | `JSON_DATE_PATTERN` Parameter holding the format pattern used to instantiate java.util.Date instances.
    `static java.lang.String` | `JSON_INPUT_STREAM` Built-in parameter holding the value of the `java.io.InputStream` to be used for obtaining the JSON data.
    `static java.lang.String` | `JSON_LOCALE` Parameter holding the value of the datasource Locale
    `static java.lang.String` | `JSON_LOCALE_CODE` Built-in parameter/property holding the `java.lang.String` code of the locale to be used when parsing the JSON data.
    `static java.lang.String` | `JSON_NUMBER_PATTERN` Parameter holding the format pattern used to instantiate java.lang.Number instances.
    `static java.lang.String` | `JSON_SOURCE` Built-in parameter holding the value of the source for the JSON file.
    `static java.lang.String` | `JSON_TIME_ZONE` Parameter holding the value of the datasource Timezone
    `static java.lang.String` | `JSON_TIMEZONE_ID` Built-in parameter/property holding the `java.lang.String` value of the time zone id to be used when parsing the JSON data.

    - ### Fields inherited from interface net.sf.jasperreports.engine.query.QueryExecuterFactory

      `QUERY_EXECUTER_FACTORY_PREFIX`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `JsonQueryExecuterFactory()`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `JRQueryExecuter` | `createQueryExecuter(JasperReportsContext jasperReportsContext, JRDataset dataset, java.util.Map<java.lang.String,? extends JRValueParameter> parameters)` Creates a query executer.
    `java.lang.Object[]` | `getBuiltinParameters()` Returns the built-in parameters associated with this query type.
    `boolean` | `supportsQueryParameterType(java.lang.String className)` Decides whether the query executers created by this factory support a query parameter type.

    - ### Methods inherited from class net.sf.jasperreports.engine.query.AbstractQueryExecuterFactory

      `createQueryExecuter`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Field Detail

    - #### JSON_INPUT_STREAM

          public static final java.lang.String JSON_INPUT_STREAM

      Built-in parameter holding the value of the `java.io.InputStream` to be used for obtaining the JSON data.
      See Also:
        Constant Field Values

    - #### JSON_SOURCE

          public static final java.lang.String JSON_SOURCE

      Built-in parameter holding the value of the source for the JSON file.

      It can be:
      - a resource on the classpath
      - a file from the filesystem, with an absolute or relative path
      - a url
      See Also:
        Constant Field Values

    - #### JSON_DATE_PATTERN

          public static final java.lang.String JSON_DATE_PATTERN

      Parameter holding the format pattern used to instantiate java.util.Date instances.
      See Also:
        Constant Field Values

    - #### JSON_NUMBER_PATTERN

          public static final java.lang.String JSON_NUMBER_PATTERN

      Parameter holding the format pattern used to instantiate java.lang.Number instances.
      See Also:
        Constant Field Values

    - #### JSON_LOCALE

          public static final java.lang.String JSON_LOCALE

      Parameter holding the value of the datasource Locale
      See Also:
        Constant Field Values

    - #### JSON_LOCALE_CODE

          public static final java.lang.String JSON_LOCALE_CODE

      Built-in parameter/property holding the `java.lang.String` code of the locale to be used when parsing the JSON data.

      The allowed format is: language[_country[_variant]]
      See Also:
        Constant Field Values

    - #### JSON_TIME_ZONE

          public static final java.lang.String JSON_TIME_ZONE

      Parameter holding the value of the datasource Timezone
      See Also:
        Constant Field Values

    - #### JSON_TIMEZONE_ID

          public static final java.lang.String JSON_TIMEZONE_ID

      Built-in parameter/property holding the `java.lang.String` value of the time zone id to be used when parsing the JSON data.
      See Also:
        Constant Field Values

  - ### Constructor Detail

    - #### JsonQueryExecuterFactory

          public JsonQueryExecuterFactory()

  - ### Method Detail

    - #### getBuiltinParameters

          public java.lang.Object[] getBuiltinParameters()

      Description copied from interface: `QueryExecuterFactory`
      Returns the built-in parameters associated with this query type.

      These parameters will be created as system-defined parameters for each report/dataset having a query of this type.

      The returned array should contain consecutive pairs of parameter names and parameter classes (e.g. `{"Param1", String.class, "Param2", "List.class"}`).
      Returns:
        array of built-in parameter names and types associated with this query type

    - #### createQueryExecuter

          public JRQueryExecuter createQueryExecuter(JasperReportsContext jasperReportsContext,
                                            JRDataset dataset,
                                            java.util.Map<java.lang.String,? extends JRValueParameter> parameters)
                                              throws JRException

      Description copied from interface: `QueryExecuterFactory`
      Creates a query executer.

      This method is called at fill time for reports/datasets having a query supported by this factory.
      Parameters:
        `jasperReportsContext` - the JasperReportsContext
        `dataset` - the dataset containing the query, fields, etc
        `parameters` - map of value parameters (instances of `JRValueParameter`) indexed by name
      Returns:
        a query executer
      Throws:
        `JRException`

    - #### supportsQueryParameterType

          public boolean supportsQueryParameterType(java.lang.String className)

      Description copied from interface: `QueryExecuterFactory`
      Decides whether the query executers created by this factory support a query parameter type.

      This check is performed for all $P{..} parameters in the query.
      Parameters:
        `className` - the value class name of the parameter
      Returns:
        whether the parameter value type is supported

© 2001-2010 Jaspersoft Corporation www.jaspersoft.com