Module org.firebirdsql.jaybird
Package org.firebirdsql.gds.ng

# Class ExecutionPlanProcessor

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

All Implemented Interfaces:
  `InfoProcessor<String>`

public final class ExecutionPlanProcessor extends Object implements InfoProcessor<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

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)`.
`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 Details

### ExecutionPlanProcessor

public ExecutionPlanProcessor(FbStatement statement)

## Method Details

### process

public String process(byte[] buffer) throws SQLException
Description copied from interface: `InfoProcessor`
Process an infoResponse block into an object of type T.

Specified by:
  `process` in interface `InfoProcessor<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
  `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