Quais são os parâmetros para o método Salesforce WebServiceCallout.invoke?

Gostaria de conhecer os parâmetros para o método de chamada usado pelo Salesforce para chamar serviços da Web remotos. Eu tenho um serviço que supostamente posso chamar, mas o serviço WSDL não define os requisitos de segurança, portanto, espero poder adicionar essas informações manualmente (os serviços usam o WS-Security passado por cabeçalhos de sabão).

Aqui está o que eu acho que sei até agora:

WebServiceCallout.invoke(
  Class servicePort, //Usually set to "this", contains httpheader info as well as ? 
  request_x, //Request object, defining schema, properties, and field order
  response_map_x, //Response object, defining schema, properties, and field order
  new String[]{
  String endpoint, //Endpoint of the service
  String ?, //what is this?
  String methodSchema, //Schema for the request object?
  String method, //Name of the request method?
  String responseSchema, //Schema for the response object?
  String response, //Name of the response object?
  String responseClass} //Name of the Apex class the response will be converted to
);

Alguém pode ajudar a preencher as lacunas?

questionAnswers(2)

yourAnswerToTheQuestion