Interface DatabaseAccessLayer


  • public interface DatabaseAccessLayer
    Interface for interacting with database
    Since:
    22.04.2021
    • Method Detail

      • getQueueDao

        @Nonnull
        QueueDao getQueueDao()
        Get an instance of database-specific DAO based on database type and table schema.
        Returns:
        database-specific DAO instance.
      • createQueuePickTaskDao

        @Nonnull
        QueuePickTaskDao createQueuePickTaskDao​(@Nonnull
                                                QueueLocation queueLocation,
                                                @Nonnull
                                                FailureSettings failureSettings)
        Create an instance of database-specific DAO based on database type and table schema.
        Parameters:
        queueLocation - queue location
        failureSettings - settings for handling failures
        Returns:
        database-specific DAO instance.
      • transact

        <ResultT> ResultT transact​(@Nonnull
                                   java.util.function.Supplier<ResultT> supplier)
        Perform an operation in transaction
        Type Parameters:
        ResultT - result type
        Parameters:
        supplier - operation
        Returns:
        result of operation
      • transact

        void transact​(@Nonnull
                      java.lang.Runnable runnable)
        Perform an operation in transaction
        Parameters:
        runnable - operation
      • getDatabaseDialect

        @Nonnull
        DatabaseDialect getDatabaseDialect()
        Get database type for that database.
        Returns:
        Database type.
      • getQueueTableSchema

        @Nonnull
        QueueTableSchema getQueueTableSchema()
        Get queue table schema for that database.
        Returns:
        Queue table schema.