org.apache.ode.bpel.extvar.jdbc

## Class JdbcExternalVariableModule

- java.lang.Object
- - org.apache.ode.bpel.extvar.jdbc.JdbcExternalVariableModule

- All Implemented Interfaces:
    ExternalVariableModule

      public class JdbcExternalVariableModule
      extends java.lang.Object
      implements ExternalVariableModule

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from interface org.apache.ode.bpel.evar.ExternalVariableModule

      `ExternalVariableModule.Locator, ExternalVariableModule.Value`

  - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `static java.lang.String` | `JDBC_NS`
    `static javax.xml.namespace.QName` | `NAME` Unique QName for the engine, this should be the element used for the external-variable configuration.

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `JdbcExternalVariableModule()`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `configure(javax.xml.namespace.QName pid, java.lang.String extVarId, org.w3c.dom.Element config)` Configure an external variable.
    `javax.xml.namespace.QName` | `getName()` Get the QName of this external variable engine; this method must always return a valid non-null value.
    `boolean` | `isTransactional()` Report whether this engine is transactional, i.e. do the update/fetch methods use the JTA TX?
    `ExternalVariableModule.Value` | `readValue(javax.xml.namespace.QName varType, ExternalVariableModule.Locator locator)` The the value of an external variable.
    `void` | `registerDataSource(java.lang.String dsName, javax.sql.DataSource ds)` Manually register a data source.
    `void` | `shutdown()` Shutdown the external variable subsystem.
    `void` | `start()` Start the external variable subsystem.
    `void` | `stop()` Stop the external variable subsystem.
    `ExternalVariableModule.Value` | `writeValue(javax.xml.namespace.QName varType, ExternalVariableModule.Value newval)` Update the value of the external variable.

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

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

- - ### Field Detail

    - #### JDBC_NS

          public static final java.lang.String JDBC_NS

      See Also:
        Constant Field Values

    - #### NAME

          public static final javax.xml.namespace.QName NAME

      Unique QName for the engine, this should be the element used for the external-variable configuration.

  - ### Constructor Detail

    - #### JdbcExternalVariableModule

          public JdbcExternalVariableModule()

  - ### Method Detail

    - #### configure

          public void configure(javax.xml.namespace.QName pid,
                       java.lang.String extVarId,
                       org.w3c.dom.Element config)
                         throws ExternalVariableModuleException

      Description copied from interface: `ExternalVariableModule`
      Configure an external variable.
      Specified by:
        `configure` in interface `ExternalVariableModule`
      Parameters:
        `pid` - process
        `extVarId` - external variable identifier
        `config` - configuration element
      Throws:
        `ExternalVariableModuleException`

    - #### getName

          public javax.xml.namespace.QName getName()

      Description copied from interface: `ExternalVariableModule`
      Get the QName of this external variable engine; this method must always return a valid non-null value. The name of the external variable engine is used to identify it in the external variable declaration.
      Specified by:
        `getName` in interface `ExternalVariableModule`
      Returns:

    - #### isTransactional

          public boolean isTransactional()

      Description copied from interface: `ExternalVariableModule`
      Report whether this engine is transactional, i.e. do the update/fetch methods use the JTA TX?
      Specified by:
        `isTransactional` in interface `ExternalVariableModule`
      Returns:
        `true` if transactional, `false` otherwsie.

    - #### shutdown

          public void shutdown()

      Description copied from interface: `ExternalVariableModule`
      Shutdown the external variable subsystem. This method is called right after the engine is shutdown.
      Specified by:
        `shutdown` in interface `ExternalVariableModule`

    - #### start

          public void start()

      Description copied from interface: `ExternalVariableModule`
      Start the external variable subsystem. This method is called before the engine is started.
      Specified by:
        `start` in interface `ExternalVariableModule`

    - #### stop

          public void stop()

      Description copied from interface: `ExternalVariableModule`
      Stop the external variable subsystem. This method is called right after the engine is stopped.
      Specified by:
        `stop` in interface `ExternalVariableModule`

    - #### writeValue

          public ExternalVariableModule.Value writeValue(javax.xml.namespace.QName varType,
                                                ExternalVariableModule.Value newval)
                                                  throws ExternalVariableModuleException

      Description copied from interface: `ExternalVariableModule`
      Update the value of the external variable.
      Specified by:
        `writeValue` in interface `ExternalVariableModule`
        `newval` - new variable value
      Throws:
        `ExternalVariableModuleException`

    - #### readValue

          public ExternalVariableModule.Value readValue(javax.xml.namespace.QName varType,
                                               ExternalVariableModule.Locator locator)
                                                 throws ExternalVariableModuleException

      Description copied from interface: `ExternalVariableModule`
      The the value of an external variable.
      Specified by:
        `readValue` in interface `ExternalVariableModule`
        `locator` - variable locator
      Returns:
        value of the variable
      Throws:
        `ExternalVariableModuleException`

    - #### registerDataSource

          public void registerDataSource(java.lang.String dsName,
                                javax.sql.DataSource ds)

      Manually register a data source. Handy if you don't want to use JNDI to look these up.
      Parameters:
        `dsName` -
        `ds` -