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