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 and Description
    `ExecutionPlanProcessor(FbStatement statement)`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and 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:
        `InfoTruncatedException` - (optional) if `infoResponse` is truncated and this processor could not recover by itself
        `java.sql.SQLException` - for errors during processing 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

Copyright © 2001-2025 Jaybird (Firebird JDBC) team. All rights reserved.