Package cz.metacentrum.perun.core.impl
Class TasksManagerImpl
java.lang.Object
cz.metacentrum.perun.core.impl.TasksManagerImpl
- All Implemented Interfaces:
TasksManagerImplApi
TasksManagerImpl
-
Field Summary
Modifier and TypeFieldDescriptionstatic final String
static final String
static final RowMapper
<TaskResult> -
Constructor Summary
ConstructorDescriptionCreate new instance of this class.TasksManagerImpl
(DataSource perunPool) Create new instance of this class. -
Method Summary
Modifier and TypeMethodDescriptionint
int
Delete all TaskResultsint
deleteOldTaskResults
(int numDays) Delete all TaskResults older than specified number of daysvoid
deleteTaskResultById
(int taskResultId) Delete TaskResult by its IDint
deleteTaskResults
(int taskId) Delete all TaskResults for the particular Taskint
deleteTaskResults
(int taskId, int destinationId) Delete all TaskResults for the particular Task and Destination.static SimpleDateFormat
Method create formatter with default settings for perun timestamps and set lenient on false Timestamp format: "dd-MM-yyyy HH:mm:ss" - "ex. 01-01-2014 10:10:10"static DateTimeFormatter
Method create formatter with default settings for perun timestamps and set ResolverStyle to STRICT Timestamp format: "dd-MM-yyyy HH:mm:ss" - "ex. 01-01-2014 10:10:10"getTask
(int serviceId, int facilityId) Retrieve task for given service and facility (by id).Retrieve task for given service and facility.getTaskById
(int id) Retrieve task with given id.getTaskResultById
(int taskResultId) Get TaskResult by its IDList TaskResultsgetTaskResultsByDestinations
(List<String> destinationsNames) Returns list of tasks results for defined destinations (string representation).getTaskResultsByTask
(int taskId) List TaskResults tied to a certain taskgetTaskResultsByTaskAndDestination
(int taskId, int destinationId) List newest TaskResults tied to a certain task and destinationgetTaskResultsByTaskOnlyNewest
(int taskId) List newest TaskResults tied to a certain taskint
insertNewTaskResult
(TaskResult taskResult) Store task result into DB.int
insertTask
(Task task) Insert new task into DB.boolean
Check if propagating tasks to engine is suspended.boolean
isThereSuchTask
(Service service, Facility facility) Check if there is a task for given service and facility.Retrieve all tasks from DB.listAllTasksForFacility
(int facilityId) Returns all tasks associated with selected facility.listAllTasksForService
(int serviceId) Returns all tasks associated with given serviceRetrieve all tass in given state.Retrieve all tasks not in given state.void
removeTask
(int id) Remove task with given id.void
removeTask
(Service service, Facility facility) Remove task for given service and facility.retrieveRunIdForTask
(Task task) Retrieves a new run id for the task propagation.void
suspendTasksPropagation
(PerunSession sess, boolean suspend) Suspend propagating tasks to engine.void
updateTask
(Task task) Update DB record of given task.
-
Field Details
-
TASK_RESULT_MAPPING_SELECT_QUERY
- See Also:
-
TASKRESULT_ROWMAPPER
-
TASK_MAPPING_SELECT_QUERY
- See Also:
-
TASK_ROWMAPPER
-
-
Constructor Details
-
TasksManagerImpl
public TasksManagerImpl()Create new instance of this class. Used for the tests only -
TasksManagerImpl
Create new instance of this class.
-
-
Method Details
-
getDateTimeFormatter
Method create formatter with default settings for perun timestamps and set ResolverStyle to STRICT Timestamp format: "dd-MM-yyyy HH:mm:ss" - "ex. 01-01-2014 10:10:10"ResolverStyle.STRICT means that formatter will be more strict to creating timestamp from string
- Returns:
- date formatter
-
getDateFormatter
Method create formatter with default settings for perun timestamps and set lenient on false Timestamp format: "dd-MM-yyyy HH:mm:ss" - "ex. 01-01-2014 10:10:10"Lenient on false means that formatter will be more strict to creating timestamp from string
IMPORTANT: SimpleDateFormat is not thread safe !!!
- Returns:
- date formatter
-
countTasks
public int countTasks()- Specified by:
countTasks
in interfaceTasksManagerImplApi
- Returns:
-
deleteAllTaskResults
public int deleteAllTaskResults()Description copied from interface:TasksManagerImplApi
Delete all TaskResults- Specified by:
deleteAllTaskResults
in interfaceTasksManagerImplApi
- Returns:
- number of deleted TaskResults
-
deleteOldTaskResults
public int deleteOldTaskResults(int numDays) Description copied from interface:TasksManagerImplApi
Delete all TaskResults older than specified number of days- Specified by:
deleteOldTaskResults
in interfaceTasksManagerImplApi
- Parameters:
numDays
- Number of days to keep- Returns:
- number of deleted TaskResults
-
deleteTaskResultById
public void deleteTaskResultById(int taskResultId) Description copied from interface:TasksManagerImplApi
Delete TaskResult by its ID- Specified by:
deleteTaskResultById
in interfaceTasksManagerImplApi
- Parameters:
taskResultId
- ID of TaskResult to delete
-
deleteTaskResults
public int deleteTaskResults(int taskId) Description copied from interface:TasksManagerImplApi
Delete all TaskResults for the particular Task- Specified by:
deleteTaskResults
in interfaceTasksManagerImplApi
- Parameters:
taskId
- ID of Task to delete TaskResults- Returns:
- number of deleted TaskResults
-
deleteTaskResults
public int deleteTaskResults(int taskId, int destinationId) Description copied from interface:TasksManagerImplApi
Delete all TaskResults for the particular Task and Destination.- Specified by:
deleteTaskResults
in interfaceTasksManagerImplApi
- Parameters:
taskId
- ID of Task to delete TaskResultsdestinationId
- ID of Destination to delete TaskResults- Returns:
- number of deleted TaskResults
-
getNamedParameterJdbcTemplate
-
getTask
Description copied from interface:TasksManagerImplApi
Retrieve task for given service and facility (by id).- Specified by:
getTask
in interfaceTasksManagerImplApi
- Parameters:
serviceId
-facilityId
-- Returns:
- Task
-
getTask
Description copied from interface:TasksManagerImplApi
Retrieve task for given service and facility.- Specified by:
getTask
in interfaceTasksManagerImplApi
- Parameters:
service
-facility
-- Returns:
- Task
-
getTaskById
Description copied from interface:TasksManagerImplApi
Retrieve task with given id.- Specified by:
getTaskById
in interfaceTasksManagerImplApi
- Parameters:
id
-- Returns:
- Task
-
getTaskResultById
Description copied from interface:TasksManagerImplApi
Get TaskResult by its ID- Specified by:
getTaskResultById
in interfaceTasksManagerImplApi
- Parameters:
taskResultId
-- Returns:
- TaskResult
-
getTaskResults
Description copied from interface:TasksManagerImplApi
List TaskResults- Specified by:
getTaskResults
in interfaceTasksManagerImplApi
- Returns:
- all TaskResults
-
getTaskResultsByDestinations
Description copied from interface:TasksManagerImplApi
Returns list of tasks results for defined destinations (string representation).- Specified by:
getTaskResultsByDestinations
in interfaceTasksManagerImplApi
- Parameters:
destinationsNames
-- Returns:
- list of tasks results
-
getTaskResultsByTask
Description copied from interface:TasksManagerImplApi
List TaskResults tied to a certain task- Specified by:
getTaskResultsByTask
in interfaceTasksManagerImplApi
- Parameters:
taskId
-- Returns:
-
getTaskResultsByTaskAndDestination
Description copied from interface:TasksManagerImplApi
List newest TaskResults tied to a certain task and destination- Specified by:
getTaskResultsByTaskAndDestination
in interfaceTasksManagerImplApi
- Parameters:
taskId
-- Returns:
-
getTaskResultsByTaskOnlyNewest
Description copied from interface:TasksManagerImplApi
List newest TaskResults tied to a certain task- Specified by:
getTaskResultsByTaskOnlyNewest
in interfaceTasksManagerImplApi
- Parameters:
taskId
-- Returns:
-
insertNewTaskResult
Description copied from interface:TasksManagerImplApi
Store task result into DB.- Specified by:
insertNewTaskResult
in interfaceTasksManagerImplApi
- Parameters:
taskResult
-- Returns:
- id of new task result
-
insertTask
Description copied from interface:TasksManagerImplApi
Insert new task into DB.- Specified by:
insertTask
in interfaceTasksManagerImplApi
- Parameters:
task
-- Returns:
- id of new task
-
isSuspendedTasksPropagation
public boolean isSuspendedTasksPropagation()Description copied from interface:TasksManagerImplApi
Check if propagating tasks to engine is suspended.- Specified by:
isSuspendedTasksPropagation
in interfaceTasksManagerImplApi
- Returns:
- True if suspended, false if propagating
-
isThereSuchTask
Description copied from interface:TasksManagerImplApi
Check if there is a task for given service and facility.- Specified by:
isThereSuchTask
in interfaceTasksManagerImplApi
- Parameters:
service
-facility
-- Returns:
- boolean true if there is a task, false otherwise
-
listAllTasks
Description copied from interface:TasksManagerImplApi
Retrieve all tasks from DB.- Specified by:
listAllTasks
in interfaceTasksManagerImplApi
- Returns:
- List of Task
-
listAllTasksForFacility
Description copied from interface:TasksManagerImplApi
Returns all tasks associated with selected facility.- Specified by:
listAllTasksForFacility
in interfaceTasksManagerImplApi
- Parameters:
facilityId
-- Returns:
- tasks for facility
-
listAllTasksForService
Description copied from interface:TasksManagerImplApi
Returns all tasks associated with given service- Specified by:
listAllTasksForService
in interfaceTasksManagerImplApi
- Parameters:
serviceId
-- Returns:
- tasks for service
-
listAllTasksInState
Description copied from interface:TasksManagerImplApi
Retrieve all tass in given state.- Specified by:
listAllTasksInState
in interfaceTasksManagerImplApi
- Parameters:
state
-- Returns:
- List of Task
-
listAllTasksNotInState
Description copied from interface:TasksManagerImplApi
Retrieve all tasks not in given state.- Specified by:
listAllTasksNotInState
in interfaceTasksManagerImplApi
- Parameters:
state
-- Returns:
- List of Task
-
removeTask
public void removeTask(int id) Description copied from interface:TasksManagerImplApi
Remove task with given id.- Specified by:
removeTask
in interfaceTasksManagerImplApi
- Parameters:
id
-
-
removeTask
Description copied from interface:TasksManagerImplApi
Remove task for given service and facility.- Specified by:
removeTask
in interfaceTasksManagerImplApi
- Parameters:
service
-facility
-
-
suspendTasksPropagation
Description copied from interface:TasksManagerImplApi
Suspend propagating tasks to engine.- Specified by:
suspendTasksPropagation
in interfaceTasksManagerImplApi
- Parameters:
sess
-suspend
- True for suspending propagation, false for resuming propagation
-
updateTask
Description copied from interface:TasksManagerImplApi
Update DB record of given task.- Specified by:
updateTask
in interfaceTasksManagerImplApi
- Parameters:
task
-
-
retrieveRunIdForTask
Description copied from interface:TasksManagerImplApi
Retrieves a new run id for the task propagation.- Specified by:
retrieveRunIdForTask
in interfaceTasksManagerImplApi
- Parameters:
task
- task to schedule- Returns:
- task with updated run id
-