/** * @param \Mcustiel\Phiremock\Domain\Expectation $expectation * * @return \Mcustiel\Phiremock\Server\Utils\Strategies\ResponseStrategyInterface */ public function getStrategyForExpectation(Expectation $expectation) { if (!empty($expectation->getProxyTo())) { return $this->diService->get(ProxyResponseStrategy::class); } if ($this->requestBodyOrUrlAreRegexp($expectation)) { return $this->diService->get(RegexResponseStrategy::class); } return $this->diService->get(HttpResponseStrategy::class); }
/** * * {@inheritdoc} * * @see \Mcustiel\Phiremock\Server\Utils\Strategies\ResponseCreatorInterface::createResponse() */ public function createResponse(Expectation $expectation, TransactionData $transactionData) { $url = $expectation->getProxyTo(); $this->logger->debug('Proxying request to : ' . $url); return $this->httpService->send($transactionData->getRequest()->withUri(new Uri($url))); }