Class DefaultTasksQueueGateway

    • Constructor Detail

      • DefaultTasksQueueGateway

        public DefaultTasksQueueGateway​(org.springframework.jdbc.core.JdbcTemplate jdbcTemplate,
                                        TypeService typeService)
    • Method Detail

      • getTableName

        protected java.lang.String getTableName​(java.lang.String code)
      • getSelectTasksWithRangeParams

        protected java.util.Map<java.lang.String,​java.lang.Object> getSelectTasksWithRangeParams​(WorkerStateGateway.WorkerRange range,
                                                                                                       long maxItemsToSchedule,
                                                                                                       WorkerStateGateway.WorkerState workerState,
                                                                                                       java.util.Set<java.lang.String> groups,
                                                                                                       java.time.Duration lockDuration)
      • getSelectTasksWithExclusiveModeParams

        protected java.util.Map<java.lang.String,​java.lang.Object> getSelectTasksWithExclusiveModeParams​(long maxItemsToSchedule,
                                                                                                               WorkerStateGateway.WorkerState workerState,
                                                                                                               java.util.Set<java.lang.String> groups,
                                                                                                               java.time.Duration lockDuration)
      • getSelectTasksWithRangeQuery

        protected java.lang.String getSelectTasksWithRangeQuery()
      • getSelectTasksWithExclusiveModeQuery

        protected java.lang.String getSelectTasksWithExclusiveModeQuery()
      • clean

        public void clean​(java.time.Duration taskProcessingTimeThreshold)
        Specified by:
        clean in interface TasksQueueGateway
      • getCleanTasksQueueStatement

        protected java.lang.String getCleanTasksQueueStatement​(java.time.Duration taskProcessingTimeThreshold)
      • addTasks

        public long addTasks​(java.lang.String tasksQuery,
                             java.lang.String expiredTasksQuery,
                             java.time.Instant now,
                             int rangeStart,
                             int rangeEnd)
        Specified by:
        addTasks in interface TasksQueueGateway
      • getInsertTaskRowStatement

        protected java.lang.String getInsertTaskRowStatement​(java.lang.String subquery)
      • defaultIfNull

        public java.lang.String defaultIfNull​(java.lang.String columnName,
                                              java.lang.Integer defaultValue)
        Specified by:
        defaultIfNull in interface TasksQueueGateway
      • defaultIfNull

        public java.lang.String defaultIfNull​(java.lang.String columnName,
                                              java.lang.String defaultValue)
        Specified by:
        defaultIfNull in interface TasksQueueGateway
      • getCreateTableIndexStatements

        protected java.util.List<java.lang.String> getCreateTableIndexStatements()
      • getLockTasksForProcessingStatement

        @Deprecated(since="20.05",
                    forRemoval=true)
        protected java.lang.String getLockTasksForProcessingStatement​(java.time.Duration lockDuration)
        Deprecated, for removal: This API element is subject to removal in a future version.
      • getLockTasksForProcessingStatementIfNeeded

        protected java.util.Optional<java.lang.String> getLockTasksForProcessingStatementIfNeeded​(java.time.Duration lockDuration)
      • getDeleteTasksStatement

        protected java.lang.String getDeleteTasksStatement()