'Return a task to resume the resource.
Subclasses should provide a handle_resume() method to implement resume.'

def resume(self):

    action = self.RESUME
    if (self.state not in ((self.SUSPEND, self.COMPLETE), (self.RESUME, self.FAILED), (self.RESUME, self.COMPLETE))):
        exc = exception.Error((_('State    %s    invalid    for    resume') % six.text_type(self.state)))
        raise exception.ResourceFailure(exc, self, action)
    LOG.info('resuming    %s', self)
    return self._do_action(action)
