Package org.firebirdsql.gds.ng

## Class ExecutionPlanProcessor

- java.lang.Object
- - org.firebirdsql.gds.ng.ExecutionPlanProcessor

- All Implemented Interfaces:
    `InfoProcessor<java.lang.String>`

      public final class ExecutionPlanProcessor
      extends java.lang.Object
      implements InfoProcessor<java.lang.String>

  InfoProcessor to retrieve the (normal) execution plan of a statement.
  Since:
    3.0
  Author:
    Mark Rotteveel

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from interface org.firebirdsql.gds.ng.InfoProcessor

      `InfoProcessor.StatementInfo`

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `ExecutionPlanProcessor​(FbStatement statement)` |

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `byte[]` | `getDescribeExplainedPlanInfoItems()` | Get the byte array with the describe detailed plan info items.
    `byte[]` | `getDescribePlanInfoItems()` | Get the byte array with the describe plan info items as supported by this processor, for use with `FbStatement.getSqlInfo(byte[], int, InfoProcessor)` or `FbStatement.getSqlInfo(byte[], int)`.
    `java.lang.String` | `process​(byte[] buffer)` | Process an infoResponse block into an object of type T.

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

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

- - ### Constructor Detail

    - #### ExecutionPlanProcessor

          public ExecutionPlanProcessor​(FbStatement statement)

  - ### Method Detail

    - #### process

          public java.lang.String process​(byte[] buffer)
                                   throws java.sql.SQLException

      Description copied from interface: `InfoProcessor`
      Process an infoResponse block into an object of type T.
      Specified by:
        `process` in interface `InfoProcessor<java.lang.String>`
      Parameters:
        `buffer` - byte array containing the server response to an info-request.
      Returns:
        Processed response of type T (usually - but not required - a newly created object).
      Throws:
        `java.sql.SQLException` - For errors during the infoResponse.

    - #### getDescribePlanInfoItems

          public byte[] getDescribePlanInfoItems()

      Get the byte array with the describe plan info items as supported by this processor, for use with `FbStatement.getSqlInfo(byte[], int, InfoProcessor)` or `FbStatement.getSqlInfo(byte[], int)`.
      Returns:
        plan info items

    - #### getDescribeExplainedPlanInfoItems

          public byte[] getDescribeExplainedPlanInfoItems()

      Get the byte array with the describe detailed plan info items.
      Returns:
        detailed plan info items