job: Move .complete callback to Job

This moves the .complete callback that tells a READY job to complete
from BlockJobDriver to JobDriver. The wrapper function job_complete()
doesn't require anything block job specific any more and can be moved
to Job.

Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Reviewed-by: Max Reitz <mreitz@redhat.com>
This commit is contained in:
Kevin Wolf 2018-04-23 12:24:16 +02:00
parent b69f777dd9
commit 3453d97243
9 changed files with 43 additions and 48 deletions

View file

@ -514,9 +514,9 @@ static void coroutine_fn test_job_start(void *opaque)
job_defer_to_main_loop(&s->common.job, test_job_completed, NULL);
}
static void test_job_complete(BlockJob *job, Error **errp)
static void test_job_complete(Job *job, Error **errp)
{
TestBlockJob *s = container_of(job, TestBlockJob, common);
TestBlockJob *s = container_of(job, TestBlockJob, common.job);
s->should_complete = true;
}
@ -527,8 +527,8 @@ BlockJobDriver test_job_driver = {
.user_resume = block_job_user_resume,
.drain = block_job_drain,
.start = test_job_start,
.complete = test_job_complete,
},
.complete = test_job_complete,
};
static void test_blockjob_common(enum drain_type drain_type)