net.sourceforge.pmd.lang.rule.properties

## Class CharacterMultiProperty

- java.lang.Object
- - net.sourceforge.pmd.lang.rule.properties.AbstractProperty<T>
  - - net.sourceforge.pmd.lang.rule.properties.AbstractDelimitedProperty<Character[]>
    - - net.sourceforge.pmd.lang.rule.properties.CharacterMultiProperty

All Implemented Interfaces:
  Comparable<PropertyDescriptor<?>>, PropertyDescriptor<Character[]>

    public class CharacterMultiProperty
    extends AbstractDelimitedProperty<Character[]>

Defines a property type that supports multiple Character values.

Author:
  Brian Remedios

### Field Summary

Fields
`static PropertyDescriptorFactory` `FACTORY`

### Constructor Summary

Constructors
Constructor and Description
`CharacterMultiProperty(String theName, String theDescription, Character[] theDefaults, float theUIOrder, char delimiter)` Constructor for CharacterProperty.
`CharacterMultiProperty(String theName, String theDescription, String theDefaults, Map<String,String> otherParams)` Constructor for CharacterProperty that accepts additional params from a map.

### Method Summary

Methods
`Class<Character[]>` `type()` Denotes the value datatype.
`Character[]` `valueFrom(String valueString)` If the property is multi-valued then return the separate values after parsing the propertyString provided.

### Methods inherited from class net.sourceforge.pmd.lang.rule.properties.AbstractDelimitedProperty

`addAttributesTo, defaultAsString, delimiterIn, isMultiValue, multiValueDelimiter, multiValueDelimiter`

### Methods inherited from class net.sourceforge.pmd.lang.rule.properties.AbstractProperty

`areEqual, asDelimitedString, asDelimitedString, asString, attributeValuesById, choices, compareTo, defaultHasNullValue, defaultValue, description, equals, errorFor, hashCode, isArray, isRequired, name, preferredRowCount, propertyErrorFor, toString, typeErrorFor, uiOrder, valueErrorFor, valuesErrorFor`

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

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

### Field Detail

#### FACTORY

    public static final PropertyDescriptorFactory FACTORY

### Constructor Detail

#### CharacterMultiProperty

    public CharacterMultiProperty(String theName,
                          String theDescription,
                          Character[] theDefaults,
                          float theUIOrder,
                          char delimiter)

Constructor for CharacterProperty.

Parameters:
  `theName` - String
  `theDescription` - String
  `theDefaults` - char[]
  `theUIOrder` - float
  `delimiter` - char
Throws:
  `IllegalArgumentException`

#### CharacterMultiProperty

    public CharacterMultiProperty(String theName,
                          String theDescription,
                          String theDefaults,
                          Map<String,String> otherParams)

Constructor for CharacterProperty that accepts additional params from a map.

Parameters:
  `theName` -
  `theDescription` -
  `theDefaults` -
  `otherParams` -

### Method Detail

#### type

    public Class<Character[]> type()

Description copied from interface: `PropertyDescriptor`
Denotes the value datatype.

Returns:
  Class
See Also:
  `PropertyDescriptor.type()`

#### valueFrom

    public Character[] valueFrom(String valueString)
                          throws IllegalArgumentException

Description copied from interface: `PropertyDescriptor`
If the property is multi-valued then return the separate values after parsing the propertyString provided. If it isn't a multi-valued property then the value will be returned within an array of size[1].

Parameters:
  `valueString` - String
Returns:
  Object
Throws:
  `IllegalArgumentException`
See Also:
  `PropertyDescriptor.valueFrom(String)`