protected static function parseErrorMessage(ResponseInterface $response)
    {
        //try to parse using xml serializer, if failed, return the whole body
        //as the error message.
        $serializer = new XmlSerializer();
        $errorMessage = '';
        try {
            $internalErrors = libxml_use_internal_errors(true);
            $parsedArray = $serializer->unserialize($response->getBody());
            $messages = array();
            foreach (libxml_get_errors() as $error) {
                $messages[] = $error->message;
            }
            if (!empty($messages)) {
                throw new \Exception(
                    sprintf(Resources::ERROR_CANNOT_PARSE_XML, implode('; ', $messages))
                );
            }
            libxml_use_internal_errors($internalErrors);
            if (array_key_exists(Resources::XTAG_MESSAGE, $parsedArray)) {
                $errorMessage = $parsedArray[Resources::XTAG_MESSAGE];
            } else {
                $errorMessage = $response->getBody();
            }
        } catch (\Exception $e) {
            $errorMessage = $response->getBody();
        }
        return $errorMessage;
    }
protected static function parseErrorMessage(ResponseInterface $response)
    {
        //try to parse using xml serializer, if failed, return the whole body
        //as the error message.
        $serializer = new XmlSerializer();
        $errorMessage = '';
        try {
            $internalErrors = libxml_use_internal_errors(true);
            $parsedArray = $serializer->unserialize($response->getBody());
            $messages = array();
            foreach (libxml_get_errors() as $error) {
                $messages[] = $error->message;
            }
            if (!empty($messages)) {
                throw new \Exception(
                    sprintf(Resources::ERROR_CANNOT_PARSE_XML, implode('; ', $messages))
                );
            }
            libxml_use_internal_errors($internalErrors);
            if (array_key_exists(Resources::XTAG_MESSAGE, $parsedArray)) {
                $errorMessage = $parsedArray[Resources::XTAG_MESSAGE];
            } else {
                $errorMessage = $response->getBody();
            }
        } catch (\Exception $e) {
            $errorMessage = $response->getBody();
        }
        return $errorMessage;
    }
protected static function parseErrorMessage ( ResponseInterface $ response ) { //try to parse using xml serializer, if failed, return the whole body //as the error message. $ serializer = new XmlSerializer ( ) ; $ errorMessage = '' ; try { $ internalErrors = libxml_use_internal_errors ( true ) ; $ parsedArray = $ serializer -> unserialize ( $ response -> getBody ( ) ) ; $ messages = array ( ) ; foreach ( libxml_get_errors ( ) as $ error ) { $ messages [ ] = $ error -> message ; } if ( ! empty ( $ messages ) ) { throw new \ Exception ( sprintf ( Resources :: ERROR_CANNOT_PARSE_XML , implode ( '; ' , $ messages ) ) ) ; } libxml_use_internal_errors ( $ internalErrors ) ; if ( array_key_exists ( Resources :: XTAG_MESSAGE , $ parsedArray ) ) { $ errorMessage = $ parsedArray [ Resources :: XTAG_MESSAGE ] ; } else { $ errorMessage = $ response -> getBody ( ) ; } } catch ( \ Exception $ e ) { $ errorMessage = $ response -> getBody ( ) ; } return $ errorMessage ; }
Error message to be parsed.

@param  ResponseInterface $response The response with a response body.

@internal

@return string
Error message to be parsed .