Module org.firebirdsql.jaybird
Package org.firebirdsql.jdbc

# Class FBProcedureParam

java.lang.Object
org.firebirdsql.jdbc.FBProcedureParam

All Implemented Interfaces:
  `Cloneable`

@InternalApi @NullMarked public class FBProcedureParam extends Object implements Cloneable
Represents procedure call parameter.

This class is internal API of Jaybird. Future versions may radically change, move, or make inaccessible this type.

## Constructor Summary

Constructors
Constructor
Description
`FBProcedureParam(int position, String paramValue)`
Create a new `FBProcedureParam` instance.

## Method Summary

Modifier and Type
Method
Description
`Object`
`clone()`
`boolean`
`equals(Object obj)`
`int`
`getIndex()`
`final String`
`getParamValue()`
Get the variable value of this parameter
`final int`
`getPosition()`
Get the position of this parameter
`int`
`getType()`
Get the SQL type of this parameter.
`@Nullable Object`
`getValue()`
Set the value for this parameter
`int`
`hashCode()`
`final boolean`
`isParam()`
Check if this parameter is a variable input parameter
`boolean`
`isValueSet()`
Check if the value of this parameter has been set
`void`
`setIndex(int index)`
`void`
`setType(int type)`
Set the SQL type of this parameter
`void`
`setValue(@Nullable Object value)`
Set the variable value of this parameter

### Methods inherited from class java.lang.Object

`finalize, getClass, notify, notifyAll, toString, wait, wait, wait`

## Constructor Details

### FBProcedureParam

public FBProcedureParam(int position, String paramValue)
Create a new `FBProcedureParam` instance.

Parameters:
  `position` - The position at which this parameter is situated in the call
  `paramValue` - The value for this parameter

## Method Details

### isParam

public final boolean isParam()
Check if this parameter is a variable input parameter

Returns:
  `true` if this is an input parameter, `false` otherwise

### getPosition

public final int getPosition()
Get the position of this parameter

Returns:
  The index of this parameter (first index is 1)

### getIndex

public int getIndex()

### setIndex

public void setIndex(int index)

### getParamValue

public final String getParamValue()
Get the variable value of this parameter

Returns:
  The parameter value

### getValue

public @Nullable Object getValue()
Set the value for this parameter

### setValue

public void setValue(@Nullable Object value) throws SQLException
Set the variable value of this parameter

Parameters:
  `value` - The value to be set
Throws:
  `SQLException` - if this parameter contains a constant value

### isValueSet

public boolean isValueSet()
Check if the value of this parameter has been set

Returns:
  `true` if the value has been set, `false` otherwise

### getType

public int getType()
Get the SQL type of this parameter.

Returns:
  The SQL type of this parameter

### setType

public void setType(int type)
Set the SQL type of this parameter

Parameters:
  `type` - The SQL type of this parameter

### equals

public boolean equals(Object obj)

Overrides:
  `equals` in class `Object`

### hashCode

public int hashCode()

Overrides:
  `hashCode` in class `Object`

### clone

public Object clone()

Overrides:
  `clone` in class `Object`