public function load(AbstractClassContent $content, BBUserToken $token = null, $checkoutOnMissing = false)
    {
        $revision = null;
        if (null !== $token) {
            $revision = $this->_em->getRepository('BackBee\ClassContent\Revision')->getDraft(
                $content,
                $token,
                $checkoutOnMissing
            );
        }

        if (false === $content->isLoaded()) {
            $classname = ClassUtils::getRealClass($content);
            if (null !== $refresh = $this->_em->find($classname, $content->getUid())) {
                $content = $refresh;
            }
        }

        $content->setDraft($revision);

        return $content;
    }