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

# Interface InfoProcessor<T>

Type Parameters:
  `T` - type of the result of the `process(byte[])` method.

All Known Implementing Classes:
  `BlobLengthProcessor`, `ExecutionPlanProcessor`, `SqlCountProcessor`, `StatementInfoProcessor`

public interface InfoProcessor<T>
Functional interface to process an information buffer (responses to p_info_* requests) returning an object of type T.

Since:
  3.0
Author:
  Mark Rotteveel

- ## Nested Class Summary

  Nested Classes
  Modifier and Type
  Interface
  Description
  `static interface`
  `InfoProcessor.StatementInfo`
  Interface for information on a statement.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `T`
  `process(byte[] infoResponse)`
  Process an infoResponse block into an object of type T.

- ## Method Details

  - ### process

    T process(byte[] infoResponse) throws SQLException
    Process an infoResponse block into an object of type T.
    Parameters:
      `infoResponse` - 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.