/** * {@inheritdoc} */ protected function execute(InputInterface $input, OutputInterface $output) { $workflow = $this->getContainer()->get('workflow.' . $input->getArgument('name')); $definition = $this->getProperty($workflow, 'definition'); $dumper = new GraphvizDumper(); $marking = new Marking(); foreach ($input->getArgument('marking') as $place) { $marking->mark($place); } $output->writeln($dumper->dump($definition, $marking)); }
/** * {@inheritdoc} */ protected function execute(InputInterface $input, OutputInterface $output) { $container = $this->getContainer(); $serviceId = $input->getArgument('name'); if ($container->has('workflow.' . $serviceId)) { $workflow = $container->get('workflow.' . $serviceId); } elseif ($container->has('state_machine.' . $serviceId)) { $workflow = $container->get('state_machine.' . $serviceId); } else { throw new \InvalidArgumentException(sprintf('No service found for "workflow.%1$s" nor "state_machine.%1$s".', $serviceId)); } $dumper = new GraphvizDumper(); $marking = new Marking(); foreach ($input->getArgument('marking') as $place) { $marking->mark($place); } $output->writeln($dumper->dump($workflow->getDefinition(), $marking)); }