* @license http://www.apache.org/licenses/LICENSE-2.0 * @link http://phpsx.org */ class ParseCommand extends Command { /** @var \PSX\Api\ApiManager */ protected $apiManager; /** @var \PSX\Api\GeneratorFactoryInterface */ protected $factory; public function __construct(ApiManager $apiManager, GeneratorFactoryInterface $factory) { parent::__construct(); $this->apiManager = $apiManager; $this->factory = $factory; } protected function configure() { $this ->setName('api:parse') ->setDescription('Parses an arbitrary source and outputs the schema in a specific format') ->addArgument('source', InputArgument::REQUIRED, 'The schema source this is either a absolute class name or schema file') ->addArgument('path', InputArgument::REQUIRED, 'The path of the resource') ->addOption('format', 'f', InputOption::VALUE_REQUIRED, 'Optional the output format possible values are: ' . implode(', ', GeneratorFactory::getPossibleTypes())) ->addOption('config', 'c', InputOption::VALUE_REQUIRED, 'Optional a config value which gets passed to the generator'); } protected function execute(InputInterface $input, OutputInterface $output) { $resource = $this->apiManager->getApi($input->getArgument('source'), $input->getArgument('path')); $generator = $this->factory->getGenerator($input->getOption('format'), $input->getOption('config')); $response = $generator->generate($resource); OutputWriter::write($response, $output); return 0; } } __halt_compiler();----SIGNATURE:----DBnHhN7JOY+BDxHppZyY2Y58bOKMHafBckccAUZc88Wbqyhx333Nsqroh2eHgx9oI3504GCNs3/fkQTuJ9qRiM8dsL25eQdjV1b6/jNDS6FLJ1g0fczBIiR0MaS5gCmBR8n2Ja5hcqEeNGK0+YbJ6QYUfXdZQ6HwZSI8j6GRq6JVTb8vd9sKm79WV5QBSFhxtTBHm7xt8sKUfIvlo8J6v+F3ez79NwoOjynWy8dE6NEsQAK8kTMo6i6fKmISGWaT7Wp8NjGXKfWvaebovZ7iRT6HaeAOt3BEHkhHo2NomKVtnTCbxLdHI5fnwkT0oj2s9dIGpLDBOTRmUwE40v1ABAwXnfH6Uhg6AWKqQQsnv+rkzC7qyRyxaH3iJ8fFPWkbpkil8n5CWb3dKM6M8XORlxM0EI0KmW3bnuP+PaJK/+uhdj+5t88L/oLYNAV2s5/x9BTLiwcjGe9osSkehCJjZajIU5yq+02NeY/TRcwhgrnlX3K4dOSoKOWV92+erPPs2o2QvaJGx7vFRplyVvry5Xg+n0OD287YGTJLcyVlEwhlBgq2tD/1zibT7QgCUrYbRNPWGgeejFoi6m9fu+5W25gKlheVKhKBHB2JH/b9Rw/px+HbRqFPgi3R4gtHhUaoQkWI6uC/x8rEnizoWwZceP5NI/t4DlxSPbH56nm7b9Q=----ATTACHMENT:----ODk5MjEzMjEyOTQzNTg5NyA5OTcwNDI5MjQ1MDQzNzc1IDE2NTYwODIxMDc4MTU2NQ==