com.holonplatform.datastore.jdbc.composer

## Interface SQLValueDeserializer

- All Known Implementing Classes:
    DefaultSQLValueDeserializer

      public interface SQLValueDeserializer

  SQL values deserializaer.
  Since:
    5.1.0

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Interface and Description
    --- | ---
    `static interface` | `SQLValueDeserializer.ValueProcessor` Processor to process a value before actual deserialization.

  - ### Method Summary

    All Methods Static Methods Instance Methods Abstract Methods Default Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `addValueProcessor(SQLValueDeserializer.ValueProcessor valueProcessor)` Add a deserialized value processor.
    `<T> T` | `deserialize(SQLExecutionContext context, com.holonplatform.core.TypedExpression<T> expression, Object value)` Deserialize the `value` associated to given `expression`, to obtain a value type which matches the expression type.
    `static SQLValueDeserializer` | `getDefault()` Create the default `SQLValueDeserializer`.

- - ### Method Detail

    - #### deserialize

          <T> T deserialize(SQLExecutionContext context,
                            com.holonplatform.core.TypedExpression<T> expression,
                            Object value)
                     throws SQLException

      Deserialize the `value` associated to given `expression`, to obtain a value type which matches the expression type.
      Type Parameters:
        `T` - Expression type
      Parameters:
        `context` - Execution context
        `expression` - Expression for which the deserialization is invoked
        `value` - Value to deserialize
      Returns:
        Deserialized value
      Throws:
        `SQLException` - If value cannot be deserialized using given expression type

    - #### addValueProcessor

          void addValueProcessor(SQLValueDeserializer.ValueProcessor valueProcessor)

      Add a deserialized value processor.
      Parameters:
        `valueProcessor` - the value processor to add (not null)

    - #### getDefault

          static SQLValueDeserializer getDefault()

      Create the default `SQLValueDeserializer`.
      Returns:
        the default `SQLValueDeserializer`

Copyright © 2019 The Holon Platform. All rights reserved.