示例#1
0
 public function setUp()
 {
     $this->entryAPI = new EntryAPI('http://example.com', new ConsumerCredentials('key', 'secret'), new TokenCredentials('tokenkey', 'tokensecret'));
     $this->mockPlugin = new MockPlugin();
     $clientFactory = new DefaultHttpClientFactory();
     $clientFactory->addSubscriber($this->mockPlugin);
     $this->entryAPI->setHttpClientFactory($clientFactory);
 }
示例#2
0
 public function execute(InputInterface $input, OutputInterface $output)
 {
     parent::execute($input, $output);
     $searchBaseUrl = $this->resolveBaseUrl('search', $input);
     $user = $this->session->getUser();
     $tokenCredentials = NULL !== $user ? $user->getTokenCredentials() : NULL;
     $clientFactory = new DefaultHttpClientFactory();
     $client = $clientFactory->createClient($searchBaseUrl, $this->session->getConsumerCredentials(), $tokenCredentials);
     $request = $client->get($input->getArgument('path'));
     // @todo add query parameters, from JSON and/or yaml file or from simple CLI options
     //$getRequest->getQuery()->set($key, $value);
     $queryFile = $input->getOption('query-file');
     if (NULL !== $queryFile) {
         $json = file_get_contents($queryFile);
         $config = json_decode($json, TRUE);
         foreach ($config as $key => $value) {
             $request->getQuery()->add($key, $value);
         }
     }
     try {
         $response = $request->send();
         $output->writeln('');
         $output->writeln('');
         $output->writeln('Request');
         $output->writeln('');
         $output->writeln((string) $request);
         $output->writeln('');
         $output->writeln('');
         $output->writeln('Response');
         $output->writeln('');
         $output->writeln((string) $response);
         $output->writeln('');
         $output->writeln('');
     } catch (ClientErrorResponseException $e) {
         $output->writeln((string) $e->getRequest());
         $output->writeln((string) $e->getResponse());
     }
 }