/**
  * {@inheritdoc}
  */
 public function add($name, $step)
 {
     $this->assertHasProcess();
     if (is_string($step)) {
         $step = $this->loadStep($step);
     }
     if (!$step instanceof StepInterface) {
         throw new \InvalidArgumentException('Step added via builder must implement "Sylius\\Bundle\\FlowBundle\\Process\\Step\\StepInterface"');
     }
     if ($step instanceof ContainerAwareInterface) {
         $step->setContainer($this->container);
     }
     $step->setName($name);
     $this->process->addStep($name, $step);
     return $this;
 }