Package org.apache.cayenne.map

## Class SQLTemplateDescriptor

- java.lang.Object
- - org.apache.cayenne.map.QueryDescriptor
  - - org.apache.cayenne.map.SQLTemplateDescriptor

- All Implemented Interfaces:
    `Serializable`, `ConfigurationNode`, `XMLSerializable`

      public class SQLTemplateDescriptor
      extends QueryDescriptor

  Since:
    4.0
  See Also:
    Serialized Form

- - ### Field Summary

    Fields
    Modifier and Type | Field | Description
    --- | --- | ---
    `protected Map<String,​String>` | `adapterSql` |
    `protected Map<String,​Integer>` | `prefetchesMap` |
    `protected String` | `sql` |

    - ### Fields inherited from class org.apache.cayenne.map.QueryDescriptor

      `DATA_MAP_ROOT, dataMap, DB_ENTITY_ROOT, EJBQL_QUERY, JAVA_CLASS_ROOT, name, OBJ_ENTITY_ROOT, PROCEDURE_QUERY, PROCEDURE_ROOT, properties, root, SELECT_QUERY, SQL_TEMPLATE, type`

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `SQLTemplateDescriptor()` |

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | `addPrefetch​(String prefetchPath, int semantics)` | Adds single prefetch path with semantics to this query.
    `SQLTemplate` | `buildQuery()` | Assembles Cayenne query instance of appropriate type from this descriptor.
    `void` | `encodeAsXML​(XMLEncoder encoder, ConfigurationNodeVisitor delegate)` | Prints itself as XML to the provided XMLEncoder.
    `Map<String,​String>` | `getAdapterSql()` | Returns map of db adapter specific SQL statements.
    `Map<String,​Integer>` | `getPrefetchesMap()` | Returns map of prefetch paths with semantics for this query.
    `String` | `getSql()` | Returns default SQL statement for this query.
    `void` | `removePrefetch​(String prefetchPath)` | Removes single prefetch path from this query.
    `void` | `setAdapterSql​(Map<String,​String> adapterSql)` | Sets a map db adapter specific SQL statements for this query.
    `void` | `setPrefetchesMap​(HashMap<String,​Integer> prefetchesMap)` | Sets map of prefetch paths with semantics for this query.
    `void` | `setSql​(String sql)` | Sets default SQL statement for this query.

    - ### Methods inherited from class org.apache.cayenne.map.QueryDescriptor

      `acceptVisitor, descriptor, ejbqlQueryDescriptor, getDataMap, getName, getProperties, getProperty, getRoot, getType, procedureQueryDescriptor, selectQueryDescriptor, setDataMap, setName, setProperties, setProperty, setRoot, setType, sqlTemplateDescriptor`

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

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

- - ### Field Detail

    - #### sql

          protected String sql

    - #### prefetchesMap

          protected Map<String,​Integer> prefetchesMap

    - #### adapterSql

          protected Map<String,​String> adapterSql

  - ### Constructor Detail

    - #### SQLTemplateDescriptor

          public SQLTemplateDescriptor()

  - ### Method Detail

    - #### getSql

          public String getSql()

      Returns default SQL statement for this query.

    - #### setSql

          public void setSql​(String sql)

      Sets default SQL statement for this query.

    - #### getAdapterSql

          public Map<String,​String> getAdapterSql()

      Returns map of db adapter specific SQL statements.

    - #### setAdapterSql

          public void setAdapterSql​(Map<String,​String> adapterSql)

      Sets a map db adapter specific SQL statements for this query.

    - #### getPrefetchesMap

          public Map<String,​Integer> getPrefetchesMap()

      Returns map of prefetch paths with semantics for this query.
      Since:
        4.1

    - #### setPrefetchesMap

          public void setPrefetchesMap​(HashMap<String,​Integer> prefetchesMap)

      Sets map of prefetch paths with semantics for this query.
      Since:
        4.1

    - #### addPrefetch

          public void addPrefetch​(String prefetchPath,
                                  int semantics)

      Adds single prefetch path with semantics to this query.
      Since:
        4.1

    - #### removePrefetch

          public void removePrefetch​(String prefetchPath)

      Removes single prefetch path from this query.
      Since:
        4.1

    - #### buildQuery

          public SQLTemplate buildQuery()

      Description copied from class: `QueryDescriptor`
      Assembles Cayenne query instance of appropriate type from this descriptor.
      Overrides:
        `buildQuery` in class `QueryDescriptor`

    - #### encodeAsXML

          public void encodeAsXML​(XMLEncoder encoder,
                                  ConfigurationNodeVisitor delegate)

      Description copied from interface: `XMLSerializable`
      Prints itself as XML to the provided XMLEncoder.
      Specified by:
        `encodeAsXML` in interface `XMLSerializable`
      Overrides:
        `encodeAsXML` in class `QueryDescriptor`