@Singleton public class MySQLExecutionDAO extends MySQLBaseDAO implements com.netflix.conductor.dao.ExecutionDAO, com.netflix.conductor.dao.RateLimitingDAO, com.netflix.conductor.dao.PollDataDAO
dataSource, logger, objectMapper| Constructor and Description |
|---|
MySQLExecutionDAO(com.fasterxml.jackson.databind.ObjectMapper objectMapper,
javax.sql.DataSource dataSource) |
| Modifier and Type | Method and Description |
|---|---|
boolean |
addEventExecution(com.netflix.conductor.common.metadata.events.EventExecution eventExecution) |
boolean |
canSearchAcrossWorkflows() |
java.util.List<com.netflix.conductor.common.metadata.tasks.Task> |
createTasks(java.util.List<com.netflix.conductor.common.metadata.tasks.Task> tasks) |
java.lang.String |
createWorkflow(com.netflix.conductor.common.run.Workflow workflow) |
boolean |
exceedsInProgressLimit(com.netflix.conductor.common.metadata.tasks.Task task) |
boolean |
exceedsRateLimitPerFrequency(com.netflix.conductor.common.metadata.tasks.Task task,
com.netflix.conductor.common.metadata.tasks.TaskDef taskDef)
This is a dummy implementation and this feature is not for Mysql backed
Conductor
|
java.util.List<com.netflix.conductor.common.metadata.events.EventExecution> |
getEventExecutions(java.lang.String eventHandlerName,
java.lang.String eventName,
java.lang.String messageId,
int max) |
long |
getInProgressTaskCount(java.lang.String taskDefName) |
java.util.List<com.netflix.conductor.common.metadata.tasks.Task> |
getPendingTasksByWorkflow(java.lang.String taskDefName,
java.lang.String workflowId) |
java.util.List<com.netflix.conductor.common.metadata.tasks.Task> |
getPendingTasksForTaskType(java.lang.String taskName) |
long |
getPendingWorkflowCount(java.lang.String workflowName) |
java.util.List<com.netflix.conductor.common.run.Workflow> |
getPendingWorkflowsByType(java.lang.String workflowName,
int version) |
java.util.List<com.netflix.conductor.common.metadata.tasks.PollData> |
getPollData(java.lang.String taskDefName) |
com.netflix.conductor.common.metadata.tasks.PollData |
getPollData(java.lang.String taskDefName,
java.lang.String domain) |
java.util.List<java.lang.String> |
getRunningWorkflowIds(java.lang.String workflowName,
int version) |
com.netflix.conductor.common.metadata.tasks.Task |
getTask(java.lang.String taskId) |
java.util.List<com.netflix.conductor.common.metadata.tasks.Task> |
getTasks(java.util.List<java.lang.String> taskIds) |
java.util.List<com.netflix.conductor.common.metadata.tasks.Task> |
getTasks(java.lang.String taskDefName,
java.lang.String startKey,
int count) |
java.util.List<com.netflix.conductor.common.metadata.tasks.Task> |
getTasksForWorkflow(java.lang.String workflowId) |
com.netflix.conductor.common.run.Workflow |
getWorkflow(java.lang.String workflowId) |
com.netflix.conductor.common.run.Workflow |
getWorkflow(java.lang.String workflowId,
boolean includeTasks) |
java.util.List<com.netflix.conductor.common.run.Workflow> |
getWorkflowsByCorrelationId(java.lang.String workflowName,
java.lang.String correlationId,
boolean includeTasks) |
java.util.List<com.netflix.conductor.common.run.Workflow> |
getWorkflowsByType(java.lang.String workflowName,
java.lang.Long startTime,
java.lang.Long endTime) |
void |
removeEventExecution(com.netflix.conductor.common.metadata.events.EventExecution eventExecution) |
void |
removeFromPendingWorkflow(java.lang.String workflowType,
java.lang.String workflowId) |
boolean |
removeTask(java.lang.String taskId) |
boolean |
removeWorkflow(java.lang.String workflowId) |
boolean |
removeWorkflowWithExpiry(java.lang.String workflowId,
int ttlSeconds)
This is a dummy implementation and this feature is not supported for MySQL backed Conductor
|
void |
updateEventExecution(com.netflix.conductor.common.metadata.events.EventExecution eventExecution) |
void |
updateLastPollData(java.lang.String taskDefName,
java.lang.String domain,
java.lang.String workerId) |
void |
updateTask(com.netflix.conductor.common.metadata.tasks.Task task) |
java.lang.String |
updateWorkflow(com.netflix.conductor.common.run.Workflow workflow) |
execute, executeWithTransaction, getCallingMethod, getWithTransactionWithOutErrorPropagation, query, queryWithTransaction, readValue, readValue, toJson, withTransaction@Inject
public MySQLExecutionDAO(com.fasterxml.jackson.databind.ObjectMapper objectMapper,
javax.sql.DataSource dataSource)
public java.util.List<com.netflix.conductor.common.metadata.tasks.Task> getPendingTasksByWorkflow(java.lang.String taskDefName,
java.lang.String workflowId)
getPendingTasksByWorkflow in interface com.netflix.conductor.dao.ExecutionDAOpublic java.util.List<com.netflix.conductor.common.metadata.tasks.Task> getTasks(java.lang.String taskDefName,
java.lang.String startKey,
int count)
getTasks in interface com.netflix.conductor.dao.ExecutionDAOpublic java.util.List<com.netflix.conductor.common.metadata.tasks.Task> createTasks(java.util.List<com.netflix.conductor.common.metadata.tasks.Task> tasks)
createTasks in interface com.netflix.conductor.dao.ExecutionDAOpublic void updateTask(com.netflix.conductor.common.metadata.tasks.Task task)
updateTask in interface com.netflix.conductor.dao.ExecutionDAOpublic boolean exceedsRateLimitPerFrequency(com.netflix.conductor.common.metadata.tasks.Task task,
com.netflix.conductor.common.metadata.tasks.TaskDef taskDef)
exceedsRateLimitPerFrequency in interface com.netflix.conductor.dao.RateLimitingDAOtask: - which needs to be evaluated whether it is rateLimited or notpublic boolean exceedsInProgressLimit(com.netflix.conductor.common.metadata.tasks.Task task)
exceedsInProgressLimit in interface com.netflix.conductor.dao.ExecutionDAOpublic boolean removeTask(java.lang.String taskId)
removeTask in interface com.netflix.conductor.dao.ExecutionDAOpublic com.netflix.conductor.common.metadata.tasks.Task getTask(java.lang.String taskId)
getTask in interface com.netflix.conductor.dao.ExecutionDAOpublic java.util.List<com.netflix.conductor.common.metadata.tasks.Task> getTasks(java.util.List<java.lang.String> taskIds)
getTasks in interface com.netflix.conductor.dao.ExecutionDAOpublic java.util.List<com.netflix.conductor.common.metadata.tasks.Task> getPendingTasksForTaskType(java.lang.String taskName)
getPendingTasksForTaskType in interface com.netflix.conductor.dao.ExecutionDAOpublic java.util.List<com.netflix.conductor.common.metadata.tasks.Task> getTasksForWorkflow(java.lang.String workflowId)
getTasksForWorkflow in interface com.netflix.conductor.dao.ExecutionDAOpublic java.lang.String createWorkflow(com.netflix.conductor.common.run.Workflow workflow)
createWorkflow in interface com.netflix.conductor.dao.ExecutionDAOpublic java.lang.String updateWorkflow(com.netflix.conductor.common.run.Workflow workflow)
updateWorkflow in interface com.netflix.conductor.dao.ExecutionDAOpublic boolean removeWorkflow(java.lang.String workflowId)
removeWorkflow in interface com.netflix.conductor.dao.ExecutionDAOpublic boolean removeWorkflowWithExpiry(java.lang.String workflowId,
int ttlSeconds)
removeWorkflowWithExpiry in interface com.netflix.conductor.dao.ExecutionDAOpublic void removeFromPendingWorkflow(java.lang.String workflowType,
java.lang.String workflowId)
removeFromPendingWorkflow in interface com.netflix.conductor.dao.ExecutionDAOpublic com.netflix.conductor.common.run.Workflow getWorkflow(java.lang.String workflowId)
getWorkflow in interface com.netflix.conductor.dao.ExecutionDAOpublic com.netflix.conductor.common.run.Workflow getWorkflow(java.lang.String workflowId,
boolean includeTasks)
getWorkflow in interface com.netflix.conductor.dao.ExecutionDAOpublic java.util.List<java.lang.String> getRunningWorkflowIds(java.lang.String workflowName,
int version)
getRunningWorkflowIds in interface com.netflix.conductor.dao.ExecutionDAOworkflowName - name of the workflowversion - the workflow versionpublic java.util.List<com.netflix.conductor.common.run.Workflow> getPendingWorkflowsByType(java.lang.String workflowName,
int version)
getPendingWorkflowsByType in interface com.netflix.conductor.dao.ExecutionDAOworkflowName - Name of the workflowversion - the workflow versionpublic long getPendingWorkflowCount(java.lang.String workflowName)
getPendingWorkflowCount in interface com.netflix.conductor.dao.ExecutionDAOpublic long getInProgressTaskCount(java.lang.String taskDefName)
getInProgressTaskCount in interface com.netflix.conductor.dao.ExecutionDAOpublic java.util.List<com.netflix.conductor.common.run.Workflow> getWorkflowsByType(java.lang.String workflowName,
java.lang.Long startTime,
java.lang.Long endTime)
getWorkflowsByType in interface com.netflix.conductor.dao.ExecutionDAOpublic java.util.List<com.netflix.conductor.common.run.Workflow> getWorkflowsByCorrelationId(java.lang.String workflowName,
java.lang.String correlationId,
boolean includeTasks)
getWorkflowsByCorrelationId in interface com.netflix.conductor.dao.ExecutionDAOpublic boolean canSearchAcrossWorkflows()
canSearchAcrossWorkflows in interface com.netflix.conductor.dao.ExecutionDAOpublic boolean addEventExecution(com.netflix.conductor.common.metadata.events.EventExecution eventExecution)
addEventExecution in interface com.netflix.conductor.dao.ExecutionDAOpublic void removeEventExecution(com.netflix.conductor.common.metadata.events.EventExecution eventExecution)
removeEventExecution in interface com.netflix.conductor.dao.ExecutionDAOpublic void updateEventExecution(com.netflix.conductor.common.metadata.events.EventExecution eventExecution)
updateEventExecution in interface com.netflix.conductor.dao.ExecutionDAOpublic java.util.List<com.netflix.conductor.common.metadata.events.EventExecution> getEventExecutions(java.lang.String eventHandlerName,
java.lang.String eventName,
java.lang.String messageId,
int max)
public void updateLastPollData(java.lang.String taskDefName,
java.lang.String domain,
java.lang.String workerId)
updateLastPollData in interface com.netflix.conductor.dao.PollDataDAOpublic com.netflix.conductor.common.metadata.tasks.PollData getPollData(java.lang.String taskDefName,
java.lang.String domain)
getPollData in interface com.netflix.conductor.dao.PollDataDAOpublic java.util.List<com.netflix.conductor.common.metadata.tasks.PollData> getPollData(java.lang.String taskDefName)
getPollData in interface com.netflix.conductor.dao.PollDataDAO