## gate.creole
Class Parameter

    java.lang.Object
      |
      +--gate.creole.Parameter

All Implemented Interfaces:
  Serializable

public class Parameter
extends Object
implements Serializable

Models a resource parameter.

See Also:
  Serialized Form

Field Summary
`(package private) String` `comment` Comment for the parameter
`(package private) String` `defaultValueString` Default value string (unprocessed, from the metadata) for the parameter
`(package private) String` `itemClassName` The name of the item's class.
`(package private) String` `name` Name for the parameter
`(package private) boolean` `optional` Is the parameter optional?
`protected Class` `paramClass` The Class for the parameter type
`protected ResourceData` `resData` The resource data that this parameter is part of.
`(package private) boolean` `runtime` Is this a run-time parameter?
`(package private) Set` `suffixes` A set of strings representing suffixes for URL params
`(package private) String` `typeName` The type name of the parameter

Constructor Summary
`Parameter()`

Method Summary
`Object` `calculateDefaultValue()` Calculate and return the default value for this parameter
`Object` `calculateValueFromString(String stringValue)` Calculate and return the value for this parameter starting from a String
`String` `getComment()` Get the comment for this parameter
`Object` `getDefaultValue()` Get the default value for this parameter.
`String` `getDefaultValueString()` Get the default value string (unprocessed, from the metadata) for the parameter
`String` `getItemClassName()` If this parameter is a List type this will return the type of the items in the list.
`String` `getName()` Get the name for this parameter
`protected Class` `getParameterClass()` Find the class for this parameter type.
`Set` `getSuffixes()` Get the suffixes atached with this param.
`String` `getTypeName()` Get the type name for this parameter
`boolean` `isOptional()` Is the parameter optional?
`boolean` `isRuntime()` Is the parameter runtime?
`void` `setComment(String comment)` Set the comment for this parameter
`void` `setDefaultValueString(String defaultValueString)` Set the default value string (from the metadata) for the parameter
`void` `setName(String name)` Set the name for this parameter
`void` `setOptional(boolean optional)` Set optionality of this parameter
`void` `setRuntime(boolean runtime)` Set runtime status of this parameter
`void` `setTypeName(String typeName)` Set the type name for this parameter
`String` `toString()` String representation

Methods inherited from class java.lang.Object
`<clinit>, clone, equals, finalize, getClass, hashCode, notify, notifyAll, registerNatives, wait, wait, wait`

Field Detail

### typeName

    String typeName

  The type name of the parameter

### optional

    boolean optional

  Is the parameter optional?

### itemClassName

    String itemClassName

  The name of the item's class. If the parameter is a collection then we need to know the class of its items in order to create them the way we want.

### suffixes

    Set suffixes

  A set of strings representing suffixes for URL params

### resData

    protected ResourceData resData

  The resource data that this parameter is part of.

### defaultValueString

    String defaultValueString

  Default value string (unprocessed, from the metadata) for the parameter

### comment

    String comment

  Comment for the parameter

### name

    String name

  Name for the parameter

### runtime

    boolean runtime

  Is this a run-time parameter?

### paramClass

    protected Class paramClass

  The Class for the parameter type

Constructor Detail

### Parameter

    public Parameter()

Method Detail

### setTypeName

    public void setTypeName(String typeName)

  Set the type name for this parameter

### getTypeName

    public String getTypeName()

  Get the type name for this parameter

### setOptional

    public void setOptional(boolean optional)

  Set optionality of this parameter

### isOptional

    public boolean isOptional()

  Is the parameter optional?

### calculateDefaultValue

    public Object calculateDefaultValue()
                                 throws ParameterException

  Calculate and return the default value for this parameter

### calculateValueFromString

    public Object calculateValueFromString(String stringValue)
                                    throws ParameterException

  Calculate and return the value for this parameter starting from a String

### getDefaultValue

    public Object getDefaultValue()
                           throws ParameterException

  Get the default value for this parameter. If the value is currently null it will try and calculate a value.
  See Also:
    `calculateDefaultValue()`

### setDefaultValueString

    public void setDefaultValueString(String defaultValueString)

  Set the default value string (from the metadata) for the parameter

### getDefaultValueString

    public String getDefaultValueString()

  Get the default value string (unprocessed, from the metadata) for the parameter

### setComment

    public void setComment(String comment)

  Set the comment for this parameter

### getComment

    public String getComment()

  Get the comment for this parameter

### setName

    public void setName(String name)

  Set the name for this parameter

### getName

    public String getName()

  Get the name for this parameter

### getSuffixes

    public Set getSuffixes()

  Get the suffixes atached with this param. If it's null then there are no suffices attached with it

### setRuntime

    public void setRuntime(boolean runtime)

  Set runtime status of this parameter

### isRuntime

    public boolean isRuntime()

  Is the parameter runtime?

### getParameterClass

    protected Class getParameterClass()
                               throws ParameterException

  Find the class for this parameter type.

### toString

    public String toString()

  String representation
  Overrides:
    `toString` in class `Object`

### getItemClassName

    public String getItemClassName()

  If this parameter is a List type this will return the type of the items in the list. If the type is `null` String will be assumed.