com.holonplatform.core.datastore.operation.commons

## Interface DatastoreOperationConfiguration

- All Superinterfaces:
    Expression, ExpressionResolver.ExpressionResolverProvider
  All Known Subinterfaces:
    BulkDeleteOperationConfiguration, BulkInsertOperationConfiguration, BulkUpdateOperationConfiguration, PropertyBoxOperationConfiguration

      public interface DatastoreOperationConfiguration
      extends Expression, ExpressionResolver.ExpressionResolverProvider

  Represents a `DatastoreOperation` configuration.

  Extends `ExpressionResolver.ExpressionResolverHandler` to support `ExpressionResolver` handling.

  Since:
    5.1.0

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Interface and Description
    --- | ---
    `static interface` | `DatastoreOperationConfiguration.Builder<B extends DatastoreOperationConfiguration.Builder<B>>` Base `DatastoreOperationConfiguration` builder.

    - ### Nested classes/interfaces inherited from interface com.holonplatform.core.Expression

      `Expression.ExpressionResolverFunction<E extends Expression,R extends Expression>, Expression.InvalidExpressionException`

  - ### Method Summary

    All Methods Instance Methods Abstract Methods Default Methods
    Modifier and Type | Method and Description
    --- | ---
    `ParameterSet` | `getParameters()` Get the operation parameters.
    `DataTarget<?>` | `getTarget()` Get the data target.
    `default <WO extends DatastoreOperations.WriteOption> Optional<WO>` | `getWriteOption(Class<WO> type)` Get the `DatastoreOperations.WriteOption` of given type, if avaible.
    `Set<DatastoreOperations.WriteOption>` | `getWriteOptions()` Get the `DatastoreOperations.WriteOption`s associated to this operation.
    `default <WO extends DatastoreOperations.WriteOption> Set<WO>` | `getWriteOptions(Class<WO> type)` Get the `DatastoreOperations.WriteOption` of given type available in this configuration.
    `default boolean` | `hasWriteOption(DatastoreOperations.WriteOption writeOption)` Checks whether given `DatastoreOperations.WriteOption` is present in this configuration.

    - ### Methods inherited from interface com.holonplatform.core.Expression

      `validate`

    - ### Methods inherited from interface com.holonplatform.core.ExpressionResolver.ExpressionResolverProvider

      `getExpressionResolvers`

- - ### Method Detail

    - #### getTarget

          DataTarget<?> getTarget()

      Get the data target.
      Returns:
        The operation `DataTarget`

    - #### getParameters

          ParameterSet getParameters()

      Get the operation parameters.
      Returns:
        the operation parameters set (not null)

    - #### getWriteOptions

          Set<DatastoreOperations.WriteOption> getWriteOptions()

      Get the `DatastoreOperations.WriteOption`s associated to this operation.
      Returns:
        The `DatastoreOperations.WriteOption`s set, empty if none

    - #### hasWriteOption

          default boolean hasWriteOption(DatastoreOperations.WriteOption writeOption)

      Checks whether given `DatastoreOperations.WriteOption` is present in this configuration.
      Parameters:
        `writeOption` - The write option to look for (not null)
      Returns:
        `true` if the write option is present in this configuration, `false` otherwise

    - #### getWriteOptions

          default <WO extends DatastoreOperations.WriteOption> Set<WO> getWriteOptions(Class<WO> type)

      Get the `DatastoreOperations.WriteOption` of given type available in this configuration.
      Type Parameters:
        `WO` - WriteOption type
      Parameters:
        `type` - WriteOption type to look for (not null)
      Returns:
        A set of write options of given type, empty if none

    - #### getWriteOption

          default <WO extends DatastoreOperations.WriteOption> Optional<WO> getWriteOption(Class<WO> type)

      Get the `DatastoreOperations.WriteOption` of given type, if avaible.

      When more than one `DatastoreOperations.WriteOption` of given type is available, the first available one is returned.

      Type Parameters:
        `WO` - WriteOption type
      Parameters:
        `type` - WriteOption type to look for (not null)
      Returns:
        Optional write option of given type

Copyright © 2019 The Holon Platform. All rights reserved.