/** * Create workflows for a manager. * * @param Manager $manager The workflow manager. * @param string $providerName The provider name. * @param string $workflowType THe workflow type. * * @return void */ private function createWorkflows(Manager $manager, $providerName, $workflowType) { if ($workflowType) { $collection = WorkflowModel::findByProviderAndType($providerName, $workflowType); } else { $collection = WorkflowModel::findByProvider($providerName); } while ($collection && $collection->next()) { $workflow = new Workflow($collection->name, $collection->providerName, $collection->label, array_merge($collection->row(), array(Definition::SOURCE => Definition::SOURCE_DATABASE))); $event = new CreateWorkflowEvent($workflow); $this->getServiceContainer()->getEventDispatcher()->dispatch($event::NAME, $event); $manager->addWorkflow($workflow); } }
/** * {@inheritdoc} */ public function addWorkflow(Workflow $workflow) { $this->manager->addWorkflow($workflow); return $this; }