Beispiel #1
0
    def invoke(self, robj, method, *args):
        """
        Invokes a method on an object, and returns the return value.
        """

        response = self.sendAndReceive(ReflectionRequestFactory.invoke(robj._ref, method).setArguments(args))

        if response is None:
            raise ReflectionException("expected a response to INVOKE")
        elif response.reflection_response.status == Message.ReflectionResponse.SUCCESS:
            return ReflectedType.fromArgument(response.reflection_response.result, reflector=self)
        else:
            raise ReflectionException(response.reflection_response.errormessage)