Package org.jbpm.process.core.datatype

## Interface DataType

- All Superinterfaces:
    `Externalizable`, `Serializable`
  All Known Implementing Classes:
    `BooleanDataType`, `EnumDataType`, `FloatDataType`, `IntegerDataType`, `ListDataType`, `ObjectDataType`, `StringDataType`, `UndefinedDataType`

      public interface DataType
      extends Externalizable

  Abstract representation of a datatype.

- - ### Method Summary

    All Methods Instance Methods Abstract Methods Default Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `String` | `getStringType()` | Returns the corresponding Java type of this datatype
    `Object` | `readValue​(String value)` |
    `default Object` | `valueOf​(String value)` | Tries to convert string parameter to an object of this type
    `boolean` | `verifyDataType​(Object value)` | Returns true if the given value is a valid value of this data type.
    `String` | `writeValue​(Object value)` |

    - ### Methods inherited from interface java.io.Externalizable

      `readExternal, writeExternal`

- - ### Method Detail

    - #### verifyDataType

          boolean verifyDataType​(Object value)

      Returns true if the given value is a valid value of this data type.

    - #### writeValue

          String writeValue​(Object value)

    - #### readValue

          Object readValue​(String value)

    - #### getStringType

          String getStringType()

      Returns the corresponding Java type of this datatype

    - #### valueOf

          default Object valueOf​(String value)

      Tries to convert string parameter to an object of this type
      Parameters:
        `value` - to be converted. For the sake of performance, it is assumed to not be null and not of `this` data type.
      Returns:
        object converted to this type, if not possible to convert, the same object passed as parameter