/** * @param Payone_Api_Request_Interface $request * @param null|Payone_Api_Response_Interface $response */ public function protocol(Payone_Api_Request_Interface $request, Payone_Api_Response_Interface $response = null) { $request->setApplyFilters($this->getServiceApplyFilters()); $response->setApplyFilters($this->getServiceApplyFilters()); $requestAsString = $request->__toString(); $responseAsString = $response->__toString(); foreach ($this->loggers as $key => $logger) { $logger->log($requestAsString); $logger->log($responseAsString); } foreach ($this->repositories as $key => $repository) { /** @var $repository Payone_Api_Persistence_Interface */ $repository->save($request, $response); } }