# Interface BatchTranslator<T extends BatchQuery>

Type Parameters:
  `T` - type of the batch query to translate

All Known Implementing Classes:
  `BaseBatchTranslator, DeleteBatchTranslator, InsertBatchTranslator, UpdateBatchTranslator`

public interface BatchTranslator<T extends BatchQuery>
A stateless service that translates a batch query of type `T` into an immutable `TranslatedBatch`. Each batch query flavor (insert, update, delete) is handled by its own translator, configured individually in the DI container under the `INSERT`, `UPDATE` and `DELETE` binding names.

Since:
  4.0

- ## Field Summary

  Fields
  Modifier and Type
  Field
  Description
  `static final String`
  `DELETE`
  DI binding name of the translator for `DeleteBatchQuery`.
  `static final String`
  `INSERT`
  DI binding name of the translator for `InsertBatchQuery`.
  `static final String`
  `UPDATE`
  DI binding name of the translator for `UpdateBatchQuery`.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `TranslatedBatch`
  `translate(T query, DbAdapter adapter)`
  Translates the provided batch query into an immutable `TranslatedBatch`.

- ## Field Details

  - ### INSERT

    static final String INSERT
    DI binding name of the translator for `InsertBatchQuery`.
    Since:
      5.0
    See Also:
      - Constant Field Values

  - ### UPDATE

    static final String UPDATE
    DI binding name of the translator for `UpdateBatchQuery`.
    Since:
      5.0
    See Also:
      - Constant Field Values

  - ### DELETE

    static final String DELETE
    DI binding name of the translator for `DeleteBatchQuery`.
    Since:
      5.0
    See Also:
      - Constant Field Values

- ## Method Details

  - ### translate

    TranslatedBatch translate(T query, DbAdapter adapter)
    Translates the provided batch query into an immutable `TranslatedBatch`.
    Since:
      5.0