1 <?php
 2 /**
 3  * @author Krzysztof Gzocha <krzysztof.gzocha@xsolve.pl>
 4  */
 5 namespace Team3\PayU\Communication\Process\ResponseDeserializer;
 6 
 7 use Buzz\Message\MessageInterface;
 8 use Team3\PayU\Communication\Process\RequestProcessException;
 9 use Team3\PayU\Communication\Request\PayURequestInterface;
10 use Team3\PayU\Communication\Response\ResponseInterface;
11 
12 /**
13  * This class will deserialize response content into concrete object.
14  * Possible returned objects should be located in {@link Team3\PayU\Communication\Response}
15  *
16  * Interface ResponseDeserializerInterface
17  * @package Team3\PayU\Communication\Process\ResponseDeserializer
18  */
19 interface ResponseDeserializerInterface
20 {
21     /**
22      * @param MessageInterface     $curlResponse
23      * @param PayURequestInterface $payURequest
24      *
25      * @return object
26      * @throws RequestProcessException
27      */
28     public function deserializeResponse(MessageInterface $curlResponse, PayURequestInterface $payURequest);
29 }
30