/**
  * @param \Gmorel\StateWorkflowBundle\StateEngine\StateWorkflow $stateWorkflow
  */
 public function __construct(StateWorkflow $stateWorkflow)
 {
     $this->workflowName = $stateWorkflow->getName();
     $availableStates = $stateWorkflow->getAvailableStates();
     if (empty($availableStates)) {
         throw new EmptyWorkflowException(sprintf('Workflow "%s" has no State defined.', $stateWorkflow->getName()));
     }
     $this->createIntrospectedStates($availableStates);
     $this->createIntrospectedTransitions($availableStates);
 }