private static function parseResponse($response)
    {
        $httpStatus = $response['code'];

        if ($httpStatus == 500) {
            $result = new ResultError();
            $result->setErrorDescription($response['response']);
            OpenPayU_Http::throwErrorHttpStatusException($httpStatus, $result);
        }

        $message = OpenPayU_Util::convertJsonToArray($response['response'], true);

        if (json_last_error() == JSON_ERROR_SYNTAX) {
            throw new OpenPayU_Exception_ServerError('Incorrect json response. Response: [' . $response['response'] . ']');
        }

        if ($httpStatus == 200) {
            $result = new OauthResultClientCredentials();
            $result->setAccessToken($message['access_token'])
                ->setTokenType($message['token_type'])
                ->setExpiresIn($message['expires_in'])
                ->setGrantType($message['grant_type'])
                ->calculateExpireDate(new \DateTime());

            return $result;
        }

        $result = new ResultError();
        $result->setError($message['error'])
            ->setErrorDescription($message['error_description']);

        OpenPayU_Http::throwErrorHttpStatusException($httpStatus, $result);

    }
private static function parseResponse($response)
    {
        $httpStatus = $response['code'];

        if ($httpStatus == 500) {
            $result = new ResultError();
            $result->setErrorDescription($response['response']);
            OpenPayU_Http::throwErrorHttpStatusException($httpStatus, $result);
        }

        $message = OpenPayU_Util::convertJsonToArray($response['response'], true);

        if (json_last_error() == JSON_ERROR_SYNTAX) {
            throw new OpenPayU_Exception_ServerError('Incorrect json response. Response: [' . $response['response'] . ']');
        }

        if ($httpStatus == 200) {
            $result = new OauthResultClientCredentials();
            $result->setAccessToken($message['access_token'])
                ->setTokenType($message['token_type'])
                ->setExpiresIn($message['expires_in'])
                ->setGrantType($message['grant_type'])
                ->calculateExpireDate(new \DateTime());

            return $result;
        }

        $result = new ResultError();
        $result->setError($message['error'])
            ->setErrorDescription($message['error_description']);

        OpenPayU_Http::throwErrorHttpStatusException($httpStatus, $result);

    }
private static function parseResponse ( $ response ) { $ httpStatus = $ response [ 'code' ] ; if ( $ httpStatus == 500 ) { $ result = new ResultError ( ) ; $ result -> setErrorDescription ( $ response [ 'response' ] ) ; OpenPayU_Http :: throwErrorHttpStatusException ( $ httpStatus , $ result ) ; } $ message = OpenPayU_Util :: convertJsonToArray ( $ response [ 'response' ] , true ) ; if ( json_last_error ( ) == JSON_ERROR_SYNTAX ) { throw new OpenPayU_Exception_ServerError ( 'Incorrect json response. Response: [' . $ response [ 'response' ] . ']' ) ; } if ( $ httpStatus == 200 ) { $ result = new OauthResultClientCredentials ( ) ; $ result -> setAccessToken ( $ message [ 'access_token' ] ) -> setTokenType ( $ message [ 'token_type' ] ) -> setExpiresIn ( $ message [ 'expires_in' ] ) -> setGrantType ( $ message [ 'grant_type' ] ) -> calculateExpireDate ( new \ DateTime ( ) ) ; return $ result ; } $ result = new ResultError ( ) ; $ result -> setError ( $ message [ 'error' ] ) -> setErrorDescription ( $ message [ 'error_description' ] ) ; OpenPayU_Http :: throwErrorHttpStatusException ( $ httpStatus , $ result ) ; }
Parse response from PayU

@param array $response
@return OauthResultClientCredentials
@throws OpenPayU_Exception
@throws OpenPayU_Exception_Authorization
@throws OpenPayU_Exception_Network
@throws OpenPayU_Exception_ServerError
@throws OpenPayU_Exception_ServerMaintenance
Parse response from PayU