org.firebirdsql.gds.impl.argument

## Class Argument

- java.lang.Object
- - org.firebirdsql.gds.impl.argument.Argument

- All Implemented Interfaces:
    java.io.Serializable, Parameter
  Direct Known Subclasses:
    BigIntArgument, ByteArrayArgument, NumericArgument, SingleItem, StringArgument

      public abstract class Argument
      extends java.lang.Object
      implements Parameter, java.io.Serializable

  Base class for arguments to the parameter buffer.
  See Also:
    Serialized Form

- - ### Constructor Summary

    Constructors
    Modifier | Constructor and Description
    --- | ---
    `protected` | `Argument(int type)`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `abstract int` | `getLength()`
    `int` | `getType()` The type identifier of the parameter (usually one of the constant values in `ISCConstants`).
    `int` | `getValueAsInt()` The value of the parameter as int.
    `long` | `getValueAsLong()` The value of the parameter as long.
    `java.lang.String` | `getValueAsString()` The value of the parameter as String.
    `int` | `hashCode()`
    `abstract void` | `writeTo(java.io.OutputStream outputStream)` Writes the arguments to the supplied `OutputStream` in the XDR format of the type.

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

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

    - ### Methods inherited from interface org.firebirdsql.gds.Parameter

      `copyTo`

- - ### Constructor Detail

    - #### Argument

          protected Argument(int type)

  - ### Method Detail

    - #### getType

          public final int getType()

      Description copied from interface: `Parameter`
      The type identifier of the parameter (usually one of the constant values in `ISCConstants`).
      Specified by:
        `getType` in interface `Parameter`
      Returns:
        The type of the argument

    - #### getValueAsString

          public java.lang.String getValueAsString()

      Description copied from interface: `Parameter`
      The value of the parameter as String.

      The implementation may throw a RuntimeException if the parameter isn't a string (or shouldn't be used as a string).

      Specified by:
        `getValueAsString` in interface `Parameter`
      Returns:
        The value as string

    - #### getValueAsInt

          public int getValueAsInt()

      Description copied from interface: `Parameter`
      The value of the parameter as int.

      The implementation may throw a RuntimeException if the parameter isn't an int (or shouldn't be used as an int).

      Specified by:
        `getValueAsInt` in interface `Parameter`
      Returns:
        The value as int

    - #### getValueAsLong

          public long getValueAsLong()

      Description copied from interface: `Parameter`
      The value of the parameter as long.

      The implementation may throw a RuntimeException if the parameter isn't a long (or shouldn't be used as a long).

      Specified by:
        `getValueAsLong` in interface `Parameter`
      Returns:
        The value as long

    - #### writeTo

          public abstract void writeTo(java.io.OutputStream outputStream)
                                throws java.io.IOException

      Writes the arguments to the supplied `OutputStream` in the XDR format of the type.
      Parameters:
        `outputStream` - OutputStream
      Throws:
        `java.io.IOException` - For errors writing to the OutputStream

    - #### getLength

          public abstract int getLength()

      Returns:
        Total length of the buffer item when written to the OutputStream by `writeTo(java.io.OutputStream)`. This includes the item, the value and other items contributing to the total length (eg the length of the value).

    - #### hashCode

          public int hashCode()

      Overrides:
        `hashCode` in class `java.lang.Object`

Copyright © 2001-2021 Jaybird (Firebird JDBC/JCA) team. All rights reserved.