Commit Graph

151 Commits

Author SHA1 Message Date
Dmitry Timoshkov f1ca1180cc mstask: Avoid an infinite loop.
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-06-27 10:07:00 +02:00
Dmitry Timoshkov 26975bfbef mstask: Use current time as trigger begin time when necessary.
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-06-27 10:06:54 +02:00
Dmitry Timoshkov 14ff4bfefe mstask/tests: Add some tests for workitem data.
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-06-13 22:13:27 +02:00
Dmitry Timoshkov c5d945c9f7 mstask: Implement ITask::GetWorkItemData().
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-06-13 22:13:27 +02:00
Dmitry Timoshkov c00fbb5c0e mstask: Implement ITask::SetWorkItemData().
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-06-13 22:13:27 +02:00
Dmitry Timoshkov 70ca4ecd14 mstask: Retry opening a .job file only in case of sharing violation.
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-06-12 23:48:47 +02:00
Dmitry Timoshkov 74cc9b6741 mstask/tests: Add more tests for IEnumWorkItems interface.
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-06-11 12:01:20 +02:00
Dmitry Timoshkov 6b56dce13b mstask: Implement IEnumWorkItems::Skip().
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-06-11 12:01:16 +02:00
Dmitry Timoshkov c84082209a mstask: Implement IEnumWorkItems::Reset().
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-06-11 12:01:12 +02:00
Dmitry Timoshkov c0dd4f5aee mstask: Implement IEnumWorkItems::Next().
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-06-11 12:01:07 +02:00
Dmitry Timoshkov 9eca94fc12 mstask: Implement ITask::GetExitCode().
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-06-11 12:00:54 +02:00
Dmitry Timoshkov 5c85a24310 mstask: Retry with a timeout if opening a job file has failed.
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-05-31 20:00:38 +02:00
Dmitry Timoshkov 5f895673df mstask: Implement ITask::GetMostRecentRunTime().
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-05-31 20:00:38 +02:00
Dmitry Timoshkov 8587b4788b mstask: Keep the job file uuid across load/save operations.
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-05-24 12:40:33 +02:00
Dmitry Timoshkov aad4302998 mstask: Avoid an infinite loop in ITask::GetNextRunTime() if weekly trigger runs every week.
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-05-23 09:55:37 +02:00
Dmitry Timoshkov 5a9ed96aec mstask: Implement ITask::GetNextRunTime() for WEEKLY trigger type.
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-05-22 10:24:59 +02:00
Dmitry Timoshkov 2a56402c56 mstask: Add support for event triggers to ITask::GetNextRunTime().
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-05-22 10:24:57 +02:00
Dmitry Timoshkov e14e6bdeed mstask: Handle disabled tasks in ITask::GetNextRunTime().
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-05-22 10:24:52 +02:00
Dmitry Timoshkov 5443f0ee2b mstask: Implement ITask::GetNextRunTime() for DAILY trigger type.
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-05-21 16:22:18 +02:00
Dmitry Timoshkov ac322334fa mstask: Implement ITask::GetNextRunTime() for ONCE trigger type.
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-05-21 16:22:12 +02:00
Dmitry Timoshkov 47f3dd0565 mstask: Implement ITask::GetExitCode().
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-05-15 12:33:34 +02:00
Dmitry Timoshkov 8622493dd3 mstask: When writing triggers access the trigger data directly to avoid noise in the traces.
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-05-15 12:33:33 +02:00
Dmitry Timoshkov 1f6a295a73 mstask: Prefer built-in implementation.
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-05-15 12:33:31 +02:00
Dmitry Timoshkov 3b1e5c81f4 mstask: Move trigger management to the ITask implementation.
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-05-14 12:11:48 +02:00
Dmitry Timoshkov 6dd096c3d1 mstask/tests: Add another set of tests for trigger management.
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-05-14 12:11:48 +02:00
Dmitry Timoshkov 999922f7f3 mstask: ITaskTrigger::GetTrigger() should fail on NULL input.
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-05-14 12:11:48 +02:00
Dmitry Timoshkov fa4c707466 mstask: ITaskTrigger::SetTrigger() should fail on NULL input.
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-05-14 12:11:48 +02:00
Dmitry Timoshkov 340bf9b513 mstask/tests: Make task trigger tests independent.
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-05-14 12:11:48 +02:00
Dmitry Timoshkov bad78747f6 mstask: Implement ITask::SetFlags().
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-05-14 12:11:48 +02:00
Dmitry Timoshkov 0ec4e9d216 mstask/tests: Make task tests independent.
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-05-14 12:11:48 +02:00
Dmitry Timoshkov f3f2eeb88c mstask: Add stdcall to cdecl thunks for AT Service RPC API.
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-05-11 17:20:41 +02:00
Dmitry Timoshkov 3310cd5385 mstask/tests: Add some tests for ITask::Run().
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-05-11 17:20:41 +02:00
Dmitry Timoshkov 00261db37e mstask: Implement ITask::Terminate().
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-05-11 17:20:41 +02:00
Dmitry Timoshkov df0fbd5c18 mstask: Implement ITask::Run().
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-05-11 17:20:41 +02:00
Dmitry Timoshkov 87cc8cf3bb mstask: Try opening a file more times when saving a job file.
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-05-11 17:20:41 +02:00
Dmitry Timoshkov 6a9e127097 mstask: Write more correct flags and status to the job file.
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-05-11 17:20:41 +02:00
Dmitry Timoshkov a652d51e06 mstask: Return SCHED_S_TASK_RUNNING from ITask::GetStatus() if there are running task instances.
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-05-11 17:20:41 +02:00
Dmitry Timoshkov 8cfdaa45bb mstask: Implement ITask::GetFlags().
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-05-11 17:20:41 +02:00
Dmitry Timoshkov 747cd087a9 mstask: Initialize more task fields from the job file on load.
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-05-11 17:20:41 +02:00
Dmitry Timoshkov bfb7a0aa1f mstask: Don't touch instance count field of the job file in the client.
It should be managed on the server side.

Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-05-11 17:20:41 +02:00
Dmitry Timoshkov 4bd663629d mstask: Implement ITaskScheduler::Delete().
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-05-11 17:20:41 +02:00
Dmitry Timoshkov 31fa745458 mstask: Export the AT Service RPC API.
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-05-08 15:43:37 +02:00
Dmitry Timoshkov e7987b1e4b mstask: Write correct trigger count to a job file.
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-04-26 11:56:20 +02:00
Dmitry Timoshkov ce57e5c4d7 mstask: Correctly initialize trigger count when loading a task.
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-04-26 11:56:17 +02:00
Dmitry Timoshkov 8d7d858d2b mstask: Improve ITask::GetNextRunTime() stub.
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-04-26 11:56:13 +02:00
Dmitry Timoshkov c3a30bcfb9 mstask: Add dirty flag management.
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-04-26 11:55:40 +02:00
Dmitry Timoshkov 37ae95dfd9 mstask: Forward IPersistFile::AddRef()/Release() to parent object.
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-04-26 11:55:35 +02:00
Dmitry Timoshkov 98241dfa5a mstask: Switch to using heap wrappers.
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-04-26 11:55:31 +02:00
Dmitry Timoshkov c65df521a4 mstask/tests: Add more tests for ITaskScheduler::AddWorkItem().
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-04-25 10:51:21 +02:00
Dmitry Timoshkov f429c8188b mstask: Implement ITaskScheduler::AddWorkItem().
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-04-25 10:51:13 +02:00