org.apache.cayenne.access.jdbc

## Class ProcedureAction

- java.lang.Object
- - org.apache.cayenne.access.jdbc.BaseSQLAction
  - - org.apache.cayenne.access.jdbc.ProcedureAction

- All Implemented Interfaces:
    SQLAction
  Direct Known Subclasses:
    SQLServerProcedureAction

      public class ProcedureAction
      extends BaseSQLAction

  A SQLAction that runs a stored procedure. Note that ProcedureAction has internal state and is not thread-safe.
  Since:
    1.2

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `protected int` | `processedResultSets` Holds a number of ResultSets processed by the action.
    `protected ProcedureQuery` | `query`

    - ### Fields inherited from class org.apache.cayenne.access.jdbc.BaseSQLAction

      `dataNode`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `ProcedureAction(ProcedureQuery query, DataNode dataNode)`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `protected ProcedureTranslator` | `createTranslator(Connection connection)` Returns the ProcedureTranslator to use for this ProcedureAction.
    `protected RowDescriptor` | `describeResultSet(ResultSet resultSet, int setIndex)` Creates a RowDescriptor for result set.
    `protected Procedure` | `getProcedure()` Returns stored procedure for an internal query.
    `protected void` | `initStatement(CallableStatement statement)` Initializes statement with query parameters
    `void` | `performAction(Connection connection, OperationObserver observer)` Executes a query using a strategy defined by the implementation.
    `protected void` | `readProcedureOutParameters(CallableStatement statement, OperationObserver delegate)` Helper method that reads OUT parameters of a CallableStatement.

    - ### Methods inherited from class org.apache.cayenne.access.jdbc.BaseSQLAction

      `getInMemoryOffset, readResultSet`

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

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

- - ### Field Detail

    - #### query

          protected ProcedureQuery query

    - #### processedResultSets

          protected int processedResultSets

      Holds a number of ResultSets processed by the action. This value is reset to zero on every "performAction" call.

  - ### Constructor Detail

    - #### ProcedureAction

          public ProcedureAction(ProcedureQuery query,
                                 DataNode dataNode)

      Since:
        4.0

  - ### Method Detail

    - #### performAction

          public void performAction(Connection connection,
                                    OperationObserver observer)
                             throws SQLException,
                                    Exception

      Description copied from interface: `SQLAction`
      Executes a query using a strategy defined by the implementation.
      Throws:
        `SQLException`
        `Exception`

    - #### createTranslator

          protected ProcedureTranslator createTranslator(Connection connection)

      Returns the ProcedureTranslator to use for this ProcedureAction.
      Parameters:
        `connection` - JDBC connection

    - #### describeResultSet

          protected RowDescriptor describeResultSet(ResultSet resultSet,
                                                    int setIndex)
                                             throws SQLException

      Creates a RowDescriptor for result set.
      Parameters:
        `resultSet` - JDBC ResultSet
        `setIndex` - a zero-based index of the ResultSet in the query results.
      Throws:
        `SQLException`

    - #### getProcedure

          protected Procedure getProcedure()

      Returns stored procedure for an internal query.

    - #### readProcedureOutParameters

          protected void readProcedureOutParameters(CallableStatement statement,
                                                    OperationObserver delegate)
                                             throws SQLException,
                                                    Exception

      Helper method that reads OUT parameters of a CallableStatement.
      Throws:
        `SQLException`
        `Exception`

    - #### initStatement

          protected void initStatement(CallableStatement statement)
                                throws Exception

      Initializes statement with query parameters
      Throws:
        `Exception`

Copyright © 2001–2023 Apache Cayenne. All rights reserved.