'Construct the necessary information for using SOAP+POST
:param request:
:param destination:
:param soap_headers:
:param sign:
:return: dictionary'

def use_soap(self, request, destination='', soap_headers=None, sign=False):

    headers = [('content-type', 'application/soap+xml')]
    soap_message = make_soap_enveloped_saml_thingy(request, soap_headers)
    logger.debug(('SOAP    message:    %s' % soap_message))
    if (sign and self.sec):
        _signed = self.sec.sign_statement(soap_message, class_name=class_name(request), node_id=request.id)
        soap_message = _signed
    return {'url': destination, 'method': 'POST', 'data': soap_message, 'headers': headers}
