public class DefaultTasksQueueGateway extends DefaultBaseGateway implements TasksQueueGateway
TasksQueueGateway.TasksCountResult| Modifier and Type | Field and Description |
|---|---|
protected JDBCValueMappings.ValueWriter<java.util.Date,?> |
dateWriter |
static java.lang.String |
EMPTY_GROUP_VALUE |
protected JDBCValueMappings.ValueWriter<java.lang.Integer,?> |
intWriter |
protected JDBCValueMappings.ValueWriter<java.lang.Long,?> |
longWriter |
jdbcTemplate| Constructor and Description |
|---|
DefaultTasksQueueGateway(JdbcTemplate jdbcTemplate,
TypeService typeService) |
| Modifier and Type | Method and Description |
|---|---|
long |
addTasks(java.lang.String tasksQuery,
java.lang.String expiredTasksQuery,
java.time.Instant now,
int rangeStart,
int rangeEnd) |
void |
clean(java.time.Duration taskProcessingTimeThreshold) |
boolean |
createTable() |
java.lang.String |
defaultIfNull(java.lang.String columnName,
java.lang.Integer defaultValue) |
java.lang.String |
defaultIfNull(java.lang.String columnName,
java.lang.String defaultValue) |
void |
deleteTasks(java.util.List<PK> tasks) |
protected java.lang.String |
getCleanTasksQueueStatement(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.String |
getCreateTableStatement() |
java.lang.String |
getEmptyGroupValue() |
protected java.lang.String |
getInsertTaskRowStatement(java.lang.String subquery) |
protected java.lang.String |
getLockTasksForProcessingStatement(java.time.Duration lockDuration) |
java.lang.String |
getRangeSQLExpression(int rangeStart,
int rangeEnd) |
protected java.lang.String |
getSelectTasksWithExclusiveModeQuery() |
protected java.lang.String |
getSelectTasksWithRangeQuery() |
java.lang.String |
getTableName() |
protected java.lang.String |
getTableName(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.String |
getUnlockTasksStatement() |
void |
unlockTasksForWorkers(java.util.List<java.lang.Integer> invalidWorkerIds) |
doesTableExist, dropTable, getJdbcTemplate, tryCreatingTableAndLogExceptionclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitdoesTableExist, dropTablepublic static final java.lang.String EMPTY_GROUP_VALUE
protected final JDBCValueMappings.ValueWriter<java.lang.Integer,?> intWriter
protected final JDBCValueMappings.ValueWriter<java.lang.Long,?> longWriter
protected final JDBCValueMappings.ValueWriter<java.util.Date,?> dateWriter
public DefaultTasksQueueGateway(JdbcTemplate jdbcTemplate,
TypeService typeService)
public java.lang.String getTableName()
getTableName in interface BaseGatewayprotected java.lang.String getTableName(java.lang.String code)
public java.util.List<TasksProvider.VersionPK> getTasksForWorkerAndMarkForProcessing(WorkerStateGateway.WorkerRange range, long maxItemsToSchedule, WorkerStateGateway.WorkerState workerState, java.time.Duration lockDuration)
getTasksForWorkerAndMarkForProcessing in interface TasksQueueGatewayprotected java.lang.String getSelectTasksWithRangeQuery()
protected java.lang.String getSelectTasksWithExclusiveModeQuery()
public void clean(java.time.Duration taskProcessingTimeThreshold)
clean in interface TasksQueueGatewayprotected java.lang.String getCleanTasksQueueStatement(java.time.Duration taskProcessingTimeThreshold)
public long addTasks(java.lang.String tasksQuery,
java.lang.String expiredTasksQuery,
java.time.Instant now,
int rangeStart,
int rangeEnd)
addTasks in interface TasksQueueGatewayprotected java.lang.String getInsertTaskRowStatement(java.lang.String subquery)
public java.lang.String defaultIfNull(java.lang.String columnName,
java.lang.Integer defaultValue)
defaultIfNull in interface TasksQueueGatewaypublic java.lang.String defaultIfNull(java.lang.String columnName,
java.lang.String defaultValue)
defaultIfNull in interface TasksQueueGatewaypublic java.lang.String getEmptyGroupValue()
getEmptyGroupValue in interface TasksQueueGatewaypublic java.lang.String getRangeSQLExpression(int rangeStart,
int rangeEnd)
getRangeSQLExpression in interface TasksQueueGatewaypublic java.util.List<TasksQueueGateway.TasksCountResult> getTasksCount()
getTasksCount in interface TasksQueueGatewaypublic boolean createTable()
createTable in interface BaseGatewaycreateTable in class DefaultBaseGatewayprotected java.util.List<java.lang.String> getCreateTableIndexStatements()
protected java.lang.String getCreateTableStatement()
getCreateTableStatement in class DefaultBaseGatewayprotected java.lang.String getLockTasksForProcessingStatement(java.time.Duration lockDuration)
public java.lang.String getUnlockTasksStatement()
getUnlockTasksStatement in interface TasksQueueGatewaypublic void deleteTasks(java.util.List<PK> tasks)
deleteTasks in interface TasksQueueGatewaypublic void unlockTasksForWorkers(java.util.List<java.lang.Integer> invalidWorkerIds)
unlockTasksForWorkers in interface TasksQueueGatewaypublic java.util.List<TasksProvider.VersionPK> getConditionsToSchedule(java.lang.String conditionsQuery, java.time.Instant time)
getConditionsToSchedule in interface TasksQueueGatewayCopyright © 2018 SAP SE. All Rights Reserved.