Class DefaultTasksQueueGateway
- java.lang.Object
-
- de.hybris.platform.task.impl.gateways.DefaultBaseGateway
-
- de.hybris.platform.task.impl.gateways.DefaultTasksQueueGateway
-
- All Implemented Interfaces:
BaseGateway,TasksQueueGateway
- Direct Known Subclasses:
HanaTasksQueueGateway,MsSqlTasksQueueGateway,MySqlTasksQueueGateway,OracleTasksQueueGateway,PostgresTasksQueueGateway
public class DefaultTasksQueueGateway extends DefaultBaseGateway implements TasksQueueGateway
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface de.hybris.platform.task.impl.gateways.TasksQueueGateway
TasksQueueGateway.TasksCountResult
-
-
Field Summary
Fields Modifier and Type Field Description protected JDBCValueMappings.ValueWriter<java.util.Date,?>dateWriterstatic java.lang.StringEMPTY_GROUP_VALUEprotected JDBCValueMappings.ValueWriter<java.lang.Integer,?>intWriterprotected JDBCValueMappings.ValueWriter<java.lang.Long,?>longWriter-
Fields inherited from class de.hybris.platform.task.impl.gateways.DefaultBaseGateway
jdbcTemplate
-
-
Constructor Summary
Constructors Constructor Description DefaultTasksQueueGateway(org.springframework.jdbc.core.JdbcTemplate jdbcTemplate, TypeService typeService)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description longaddTasks(java.lang.String tasksQuery, java.lang.String expiredTasksQuery, java.time.Instant now, int rangeStart, int rangeEnd)voidclean(java.time.Duration taskProcessingTimeThreshold)booleancreateTable()java.lang.StringdefaultIfNull(java.lang.String columnName, java.lang.Integer defaultValue)java.lang.StringdefaultIfNull(java.lang.String columnName, java.lang.String defaultValue)voiddeleteTasks(java.util.List<PK> tasks)protected java.lang.StringgetCleanTasksQueueStatement(java.time.Duration taskProcessingTimeThreshold)java.util.List<TasksProvider.VersionPK>getConditionsToSchedule(java.lang.String conditionsQuery, java.time.Instant time)protected java.util.List<java.lang.String>getCreateTableIndexStatements()protected java.lang.StringgetCreateTableStatement()java.lang.StringgetEmptyGroupValue()protected java.lang.StringgetInsertTaskRowStatement(java.lang.String subquery)protected java.lang.StringgetLockTasksForProcessingStatement(java.time.Duration lockDuration)java.lang.StringgetRangeSQLExpression(int rangeStart, int rangeEnd)protected java.lang.StringgetSelectTasksWithExclusiveModeQuery()protected java.lang.StringgetSelectTasksWithRangeQuery()java.lang.StringgetTableName()protected java.lang.StringgetTableName(java.lang.String code)java.util.List<TasksQueueGateway.TasksCountResult>getTasksCount()java.util.List<TasksProvider.VersionPK>getTasksForWorkerAndMarkForProcessing(WorkerStateGateway.WorkerRange range, long maxItemsToSchedule, WorkerStateGateway.WorkerState workerState, java.time.Duration lockDuration)java.lang.StringgetUnlockTasksStatement()voidunlockTasksForWorkers(java.util.List<java.lang.Integer> invalidWorkerIds)-
Methods inherited from class de.hybris.platform.task.impl.gateways.DefaultBaseGateway
doesTableExist, dropTable, getJdbcTemplate, tryCreatingTableAndLogException
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface de.hybris.platform.task.impl.gateways.BaseGateway
doesTableExist, dropTable
-
-
-
-
Field Detail
-
EMPTY_GROUP_VALUE
public static final java.lang.String EMPTY_GROUP_VALUE
- See Also:
- Constant Field Values
-
intWriter
protected final JDBCValueMappings.ValueWriter<java.lang.Integer,?> intWriter
-
longWriter
protected final JDBCValueMappings.ValueWriter<java.lang.Long,?> longWriter
-
dateWriter
protected final JDBCValueMappings.ValueWriter<java.util.Date,?> dateWriter
-
-
Constructor Detail
-
DefaultTasksQueueGateway
public DefaultTasksQueueGateway(org.springframework.jdbc.core.JdbcTemplate jdbcTemplate, TypeService typeService)
-
-
Method Detail
-
getTableName
public java.lang.String getTableName()
- Specified by:
getTableNamein interfaceBaseGateway
-
getTableName
protected java.lang.String getTableName(java.lang.String code)
-
getTasksForWorkerAndMarkForProcessing
public java.util.List<TasksProvider.VersionPK> getTasksForWorkerAndMarkForProcessing(WorkerStateGateway.WorkerRange range, long maxItemsToSchedule, WorkerStateGateway.WorkerState workerState, java.time.Duration lockDuration)
- Specified by:
getTasksForWorkerAndMarkForProcessingin interfaceTasksQueueGateway
-
getSelectTasksWithRangeQuery
protected java.lang.String getSelectTasksWithRangeQuery()
-
getSelectTasksWithExclusiveModeQuery
protected java.lang.String getSelectTasksWithExclusiveModeQuery()
-
clean
public void clean(java.time.Duration taskProcessingTimeThreshold)
- Specified by:
cleanin interfaceTasksQueueGateway
-
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:
addTasksin interfaceTasksQueueGateway
-
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:
defaultIfNullin interfaceTasksQueueGateway
-
defaultIfNull
public java.lang.String defaultIfNull(java.lang.String columnName, java.lang.String defaultValue)- Specified by:
defaultIfNullin interfaceTasksQueueGateway
-
getEmptyGroupValue
public java.lang.String getEmptyGroupValue()
- Specified by:
getEmptyGroupValuein interfaceTasksQueueGateway
-
getRangeSQLExpression
public java.lang.String getRangeSQLExpression(int rangeStart, int rangeEnd)- Specified by:
getRangeSQLExpressionin interfaceTasksQueueGateway
-
getTasksCount
public java.util.List<TasksQueueGateway.TasksCountResult> getTasksCount()
- Specified by:
getTasksCountin interfaceTasksQueueGateway
-
createTable
public boolean createTable()
- Specified by:
createTablein interfaceBaseGateway- Overrides:
createTablein classDefaultBaseGateway
-
getCreateTableIndexStatements
protected java.util.List<java.lang.String> getCreateTableIndexStatements()
-
getCreateTableStatement
protected java.lang.String getCreateTableStatement()
- Specified by:
getCreateTableStatementin classDefaultBaseGateway
-
getLockTasksForProcessingStatement
protected java.lang.String getLockTasksForProcessingStatement(java.time.Duration lockDuration)
-
getUnlockTasksStatement
public java.lang.String getUnlockTasksStatement()
- Specified by:
getUnlockTasksStatementin interfaceTasksQueueGateway
-
deleteTasks
public void deleteTasks(java.util.List<PK> tasks)
- Specified by:
deleteTasksin interfaceTasksQueueGateway
-
unlockTasksForWorkers
public void unlockTasksForWorkers(java.util.List<java.lang.Integer> invalidWorkerIds)
- Specified by:
unlockTasksForWorkersin interfaceTasksQueueGateway
-
getConditionsToSchedule
public java.util.List<TasksProvider.VersionPK> getConditionsToSchedule(java.lang.String conditionsQuery, java.time.Instant time)
- Specified by:
getConditionsToSchedulein interfaceTasksQueueGateway
-
-