Exemplo n.º 1
0
 /**
  * On multi post send event.
  *
  * @param \Ivory\HttpAdapter\Event\MultiPostSendEvent $event The multi post send event.
  */
 public function onMultiPostSend(MultiPostSendEvent $event)
 {
     foreach ($event->getResponses() as $response) {
         if (!$this->statusCode->validate($response)) {
             $event->addException($this->createStatusCodeException($response, $response->getParameter('request'), $event->getHttpAdapter()));
             $event->removeResponse($response);
         }
     }
 }
Exemplo n.º 2
0
 /**
  * On multi post send event.
  *
  * @param \Ivory\HttpAdapter\Event\MultiPostSendEvent $event The multi post send event.
  */
 public function onMultiPostSend(MultiPostSendEvent $event)
 {
     $redirectRequests = array();
     foreach ($event->getResponses() as $response) {
         try {
             $redirectRequest = $this->redirect->createRedirectRequest($response, $response->getParameter('request'), $event->getHttpAdapter());
         } catch (HttpAdapterException $e) {
             $event->removeResponse($response);
             $event->addException($e);
             continue;
         }
         if ($redirectRequest === false) {
             $event->removeResponse($response);
             $event->addResponse($this->redirect->prepareResponse($response, $response->getParameter('request')));
         } else {
             $redirectRequests[] = $redirectRequest;
             $event->removeResponse($response);
         }
     }
     if (empty($redirectRequests)) {
         return;
     }
     try {
         $event->addResponses($event->getHttpAdapter()->sendRequests($redirectRequests));
     } catch (MultiHttpAdapterException $e) {
         $event->addResponses($e->getResponses());
         $event->addExceptions($e->getExceptions());
     }
 }
Exemplo n.º 3
0
 /**
  * On multi post send event.
  *
  * @param \Ivory\HttpAdapter\Event\MultiPostSendEvent $event The multi post send event.
  */
 public function onMultiPostSend(MultiPostSendEvent $event)
 {
     foreach ($event->getResponses() as $response) {
         $this->stopwatch->stop($this->getStopwatchName($event->getHttpAdapter(), $response->getParameter('request')));
     }
 }
 /**
  * On multi post send event.
  *
  * @param \Ivory\HttpAdapter\Event\MultiPostSendEvent $event The mutli post send event.
  */
 public function onMultiPostSend(MultiPostSendEvent $event)
 {
     foreach ($event->getResponses() as $response) {
         $this->collectResponse($event->getHttpAdapter(), $response->getParameter('request'), $response);
     }
 }
Exemplo n.º 5
0
 /**
  * On multi post send event.
  *
  * @param \Ivory\HttpAdapter\Event\MultiPostSendEvent $event The multi post send event.
  */
 public function onMultiPostSend(MultiPostSendEvent $event)
 {
     foreach ($event->getResponses() as $response) {
         $request = $this->debug($event->getHttpAdapter(), $response->getParameter('request'), $response);
         $event->removeResponse($response);
         $event->addResponse($response->withParameter('request', $request));
     }
 }