Interface DbStatement<D extends DbStatement<D,R>,R>

Type Parameters:
R - Type of the result of this statement (e.g. a CompletionStage)
D - Type of the descendant of this class
All Known Subinterfaces:
DbStatementDml, DbStatementGet, DbStatementQuery
All Known Implementing Classes:
AbstractStatement, MongoDbStatementDml, MongoDbStatementGet

public interface DbStatement<D extends DbStatement<D,R>,R>
Database statement that can process parameters. Method execute() processes the statement and returns appropriate response.

All methods are non-blocking. The execute() method returns either a CompletionStage or another object that provides similar API for eventual processing of the response.

Once parameters are set using one of the params methods, all other methods throw an IllegalStateException.

Once a parameter is added using addParam(Object) or addParam(String, Object), all other params methods throw an IllegalStateException.

Once execute() is called, all methods would throw an IllegalStateException.

  • Method Summary

    Modifier and Type
    Method
    Description
    addParam(Object parameter)
    Add next parameter to the list of ordered parameters (e.g.
    addParam(String name, Object parameter)
    Add next parameter to the map of named parameters (e.g.
    Execute this statement using the parameters configured with params and addParams methods.
    indexedParam(Object parameters)
    Configure parameters using Object instance with registered mapper.
    namedParam(Object parameters)
    Configure parameters using Object instance with registered mapper.
    default D
    params(Object... parameters)
    Configure parameters from an array by order.
    params(List<?> parameters)
    Configure parameters from a List by order.
    params(Map<String,?> parameters)
    Configure named parameters.
  • Method Details

    • params

      D params(List<?> parameters)
      Configure parameters from a List by order. The statement must use indexed parameters and configure them by order in the provided array.
      Parameters:
      parameters - ordered parameters to set on this statement, never null
      Returns:
      updated db statement
    • params

      default D params(Object... parameters)
      Configure parameters from an array by order. The statement must use indexed parameters and configure them by order in the provided array.
      Parameters:
      parameters - ordered parameters to set on this statement
      Returns:
      updated db statement
    • params

      D params(Map<String,?> parameters)
      Configure named parameters. The statement must use named parameters and configure them from the provided map.
      Parameters:
      parameters - named parameters to set on this statement
      Returns:
      updated db statement
    • namedParam

      D namedParam(Object parameters)
      Configure parameters using Object instance with registered mapper. The statement must use named parameters and configure them from the map provided by mapper.
      Parameters:
      parameters - Object instance containing parameters
      Returns:
      updated db statement
    • indexedParam

      D indexedParam(Object parameters)
      Configure parameters using Object instance with registered mapper. The statement must use indexed parameters and configure them by order in the array provided by mapper.
      Parameters:
      parameters - Object instance containing parameters
      Returns:
      updated db statement
    • addParam

      D addParam(Object parameter)
      Add next parameter to the list of ordered parameters (e.g. the ones that use ? in SQL).
      Parameters:
      parameter - next parameter to set on this statement
      Returns:
      updated db statement
    • addParam

      D addParam(String name, Object parameter)
      Add next parameter to the map of named parameters (e.g. the ones that use :name in Helidon JDBC SQL integration).
      Parameters:
      name - name of parameter
      parameter - value of parameter
      Returns:
      updated db statement
    • execute

      R execute()
      Execute this statement using the parameters configured with params and addParams methods.
      Returns:
      The result of this statement, never blocking.