Module org.firebirdsql.jaybird
Package org.firebirdsql.gds.impl

# Interface ParameterBufferMetaData

All Superinterfaces:
  `Serializable`

All Known Implementing Classes:
  `DatabaseParameterBufferImp.DpbMetaData`, `ServiceParameterBufferImp.SpbMetaData`, `ServiceRequestBufferImp.SrbMetaData`, `TransactionParameterBufferImpl.TpbMetaData`

public interface ParameterBufferMetaData extends Serializable
Additional metadata for parameter buffer behavior.

Since:
  3.0
Author:
  Mark Rotteveel

- ## Method Summary

  Modifier and Type
  Method
  Description
  `default void`
  `addPreamble(ParameterBuffer parameterBuffer)`
  Allows the metadata to add a preamble to the parameter buffer.
  `default ArgumentType`
  `getByteArgumentType(int tag)`
  Gets the byte argument type for the supplied tag.
  `ArgumentType`
  `getByteArrayArgumentType(int tag)`
  Gets the byte array argument type for the supplied tag.
  `ArgumentType`
  `getIntegerArgumentType(int tag)`
  Gets the integer argument type for the supplied tag.
  `ArgumentType`
  `getSingleArgumentType(int tag)`
  Gets the single argument type for the supplied tag.
  `ArgumentType`
  `getStringArgumentType(int tag)`
  Gets the string argument type for the supplied tag.
  `int`
  `getType()`
  Parameter buffer type (this usually is the version of the parameter buffer).

- ## Method Details

  - ### getType

    int getType()
    Parameter buffer type (this usually is the version of the parameter buffer).
    Returns:
      Buffer type (for example `ISCConstants.isc_spb_version3`).

  - ### addPreamble

    default void addPreamble(ParameterBuffer parameterBuffer)
    Allows the metadata to add a preamble to the parameter buffer.

    This is only intended for the weird "version 2" connection service parameter buffer that requires two tags for the version with `isc_spb_version, isc_spb_current_version`.

    Parameters:
      `parameterBuffer` - Parameter buffer.

  - ### getStringArgumentType

    ArgumentType getStringArgumentType(int tag)
    Gets the string argument type for the supplied tag.

    When the tag is not known (or unsupported for string arguments), then the default should be returned.

    Parameters:
      `tag` - Tag (item type)
    Returns:
      Argument type (never `null`)

  - ### getByteArrayArgumentType

    ArgumentType getByteArrayArgumentType(int tag)
    Gets the byte array argument type for the supplied tag.

    When the tag is not known (or unsupported for string arguments), then the default should be returned.

    Parameters:
      `tag` - Tag (item type)
    Returns:
      Argument type (never `null`)

  - ### getIntegerArgumentType

    ArgumentType getIntegerArgumentType(int tag)
    Gets the integer argument type for the supplied tag.

    When the tag is not known (or unsupported for string arguments), then the default should be returned.

    Parameters:
      `tag` - Tag (item type)
    Returns:
      Argument type (never `null`)

  - ### getSingleArgumentType

    ArgumentType getSingleArgumentType(int tag)
    Gets the single argument type for the supplied tag.

    When the tag is not known (or unsupported for string arguments), then the default should be returned.

    Parameters:
      `tag` - Tag (item type)
    Returns:
      Argument type (never `null`)

  - ### getByteArgumentType

    default ArgumentType getByteArgumentType(int tag)
    Gets the byte argument type for the supplied tag.

    When the tag is not known (or unsupported for string arguments), then the default should be returned.

    Parameters:
      `tag` - Tag (item type)
    Returns:
      Argument type (never `null`)