'Send the required soap message to invoke the specified method
@param args: A list of args for the method invoked.
@type args: list
@param kwargs: Named (keyword) args for the method invoked.
@type kwargs: dict
@return: The result of the method invocation.
@rtype: I{builtin}|I{subclass of} L{Object}'

def invoke(self, args, kwargs):

    timer = metrics.Timer()
    timer.start()
    result = None
    binding = self.method.binding.input
    soapenv = binding.get_message(self.method, args, kwargs)
    timer.stop()
    metrics.log.debug("message    for    '%s'    created:    %s", self.method.name, timer)
    timer.start()
    result = self.send(soapenv)
    timer.stop()
    metrics.log.debug("method    '%s'    invoked:    %s", self.method.name, timer)
    return result
