

def _use_soap(self, destination, query_type, **kwargs):
    _create_func = getattr(self, ('create_%s' % query_type))
    _response_func = getattr(self, ('parse_%s_response' % query_type))
    try:
        response_args = kwargs['response_args']
        del kwargs['response_args']
    except KeyError:
        response_args = None
    (qid, query) = _create_func(destination, **kwargs)
    response = self.send_using_soap(query, destination)
    if (response.status_code == 200):
        if (not response_args):
            response_args = {
                'binding': BINDING_SOAP,
            }
        else:
            response_args['binding'] = BINDING_SOAP
        logger.info('Verifying response')
        if response_args:
            response = _response_func(response.content, **response_args)
        else:
            response = _response_func(response.content)
    else:
        raise HTTPError(('%d:%s' % (response.status_code, response.error)))
    if response:
        logger.info(('OK response from %s' % destination))
        return response
    else:
        logger.info(('NOT OK response from %s' % destination))
    return None

dataset/ETHPy150Open cloudera/hue/desktop/core/ext-py/pysaml2-2.4.0/src/saml2/client.py Saml2Client._use_soap/original