protected function createWorkspaceAndRootNodeIfNecessary($workspaceName)
{
$workspace = $this->workspaceRepository->findOneByName($workspaceName);
if ($workspace === null) {
$liveWorkspace = $this->workspaceRepository->findOneByName('live');
$owner = $this->userService->getBackendUser();
$workspace = new Workspace($workspaceName, $liveWorkspace, $owner);
$this->workspaceRepository->add($workspace);
$this->persistenceManager->whitelistObject($workspace);
}
$contentContext = $this->createContext($workspaceName);
$rootNode = $contentContext->getRootNode();
$this->persistenceManager->whitelistObject($rootNode);
$this->persistenceManager->whitelistObject($rootNode->getNodeData());
$this->persistenceManager->persistAll(true);
}