# Class ProcedureParameter

java.lang.Object
org.apache.cayenne.map.ProcedureParameter

All Implemented Interfaces:
  `Serializable, ConfigurationNode, CayenneMapEntry, XMLSerializable`

public class ProcedureParameter extends Object implements ConfigurationNode, CayenneMapEntry, XMLSerializable, Serializable
A descriptor for the Procedure parameter.

See Also:
  - Serialized Form

- ## Field Summary

  Fields
  Modifier and Type
  Field
  Description
  `protected int`
  `direction`
  `static final int`
  `IN_OUT_PARAMETER`
  `static final int`
  `IN_PARAMETER`
  `protected int`
  `maxLength`
  `protected String`
  `name`
  `static final int`
  `OUT_PARAMETER`
  `protected int`
  `precision`
  `protected Procedure`
  `procedure`
  `protected int`
  `type`

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `ProcedureParameter()`
  Creates unnamed ProcedureParameter.
  `ProcedureParameter(String name)`
  `ProcedureParameter(String name, int type, int direction)`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `<T> T`
  `acceptVisitor(ConfigurationNodeVisitor<T> visitor)`
  `void`
  `encodeAsXML(XMLEncoder encoder, ConfigurationNodeVisitor delegate)`
  Prints itself as XML to the provided PrintWriter.
  `int`
  `getDirection()`
  Returns the direction of this parameter.
  `int`
  `getMaxLength()`
  `String`
  `getName()`
  Returns the name property of this object.
  `Object`
  `getParent()`
  Returns the parent map.
  `int`
  `getPrecision()`
  `Procedure`
  `getProcedure()`
  Returns the procedure that holds this parameter.
  `int`
  `getType()`
  `boolean`
  `isInParameter()`
  `boolean`
  `isOutParam()`
  `void`
  `setDirection(int direction)`
  Sets the direction of this parameter.
  `void`
  `setMaxLength(int i)`
  `void`
  `setName(String name)`
  `void`
  `setParent(Object parent)`
  Stores the parent map.
  `void`
  `setPrecision(int i)`
  `void`
  `setProcedure(Procedure procedure)`
  Sets the procedure that holds this parameter.
  `void`
  `setType(int i)`

  ### Methods inherited from class Object

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

- ## Field Details

  - ### IN_OUT_PARAMETER

    public static final int IN_OUT_PARAMETER
    See Also:
      - Constant Field Values

  - ### IN_PARAMETER

    public static final int IN_PARAMETER
    See Also:
      - Constant Field Values

  - ### OUT_PARAMETER

    public static final int OUT_PARAMETER
    See Also:
      - Constant Field Values

  - ### name

    protected String name

  - ### procedure

    protected Procedure procedure

  - ### direction

    protected int direction

  - ### maxLength

    protected int maxLength

  - ### precision

    protected int precision

  - ### type

    protected int type

- ## Constructor Details

  - ### ProcedureParameter

    public ProcedureParameter()
    Creates unnamed ProcedureParameter.

  - ### ProcedureParameter

    public ProcedureParameter(String name)

  - ### ProcedureParameter

    public ProcedureParameter(String name, int type, int direction)

- ## Method Details

  - ### acceptVisitor

    public <T> T acceptVisitor(ConfigurationNodeVisitor<T> visitor)
    Specified by:
      `acceptVisitor` in interface `ConfigurationNode`

  - ### getName

    public String getName()
    Description copied from interface: `CayenneMapEntry`
    Returns the name property of this object.
    Specified by:
      `getName` in interface `CayenneMapEntry`
    Returns:
      name of this entry.

  - ### setName

    public void setName(String name)

  - ### getParent

    public Object getParent()
    Description copied from interface: `CayenneMapEntry`
    Returns the parent map.
    Specified by:
      `getParent` in interface `CayenneMapEntry`

  - ### setParent

    public void setParent(Object parent)
    Description copied from interface: `CayenneMapEntry`
    Stores the parent map.
    Specified by:
      `setParent` in interface `CayenneMapEntry`

  - ### encodeAsXML

    public void encodeAsXML(XMLEncoder encoder, ConfigurationNodeVisitor delegate)
    Prints itself as XML to the provided PrintWriter.
    Specified by:
      `encodeAsXML` in interface `XMLSerializable`
    Since:
      1.1

  - ### getDirection

    public int getDirection()
    Returns the direction of this parameter. Possible values can be IN_PARAMETER, OUT_PARAMETER, IN_OUT_PARAMETER, VOID_PARAMETER.

  - ### getMaxLength

    public int getMaxLength()

  - ### getPrecision

    public int getPrecision()

  - ### getType

    public int getType()

  - ### isInParameter

    public boolean isInParameter()
    Returns:
      `true` if this is IN or INOUT parameter.

  - ### isOutParam

    public boolean isOutParam()
    Returns:
      `true` if this is OUT or INOUT parameter.

  - ### setDirection

    public void setDirection(int direction)
    Sets the direction of this parameter. Acceptable values of direction are defined as int constants in ProcedureParam class. If an attempt is made to set an invalid attribute's direction, an IllegalArgumentException is thrown by this method.

  - ### setMaxLength

    public void setMaxLength(int i)

  - ### setPrecision

    public void setPrecision(int i)

  - ### setType

    public void setType(int i)

  - ### getProcedure

    public Procedure getProcedure()
    Returns the procedure that holds this parameter.

  - ### setProcedure

    public void setProcedure(Procedure procedure)
    Sets the procedure that holds this parameter.