parameters: (self, key)
return_statement: return ExecuteRecursiveAttribute(key, self.execution_method)
docstring: Call a method on the controller as if it was a local method
docstring_summary: Call a method on the controller as if it was a local method
docstring_tokens: Call a method on the controller as if it was a local method
function: def __getattr__(self, key):    
          """Call a method on the controller as if it was a local method"""
          class ExecuteJSONRecursiveAttribute(object):
              def __init__(self, name, execution_method):
                  self.name = name
                  self.execution_method = execution_method
              def __call__(self, **kwargs):
                  rpc = {'method':self.name, 'params':kwargs}
                  return self.execution_method(rpc)
              def __getattr__(self, key):
                  return ExecuteRecursiveAttribute(self.name+'.'+key, self.execution_method)
  
          return ExecuteRecursiveAttribute(key, self.execution_method)
function_tokens: def __getattr__ ( self , key ) : class ExecuteJSONRecursiveAttribute ( object ) : def __init__ ( self , name , execution_method ) : self . name = name self . execution_method = execution_method def __call__ ( self , * * kwargs ) : rpc = { 'method' : self . name , 'params' : kwargs } return self . execution_method ( rpc ) def __getattr__ ( self , key ) : return ExecuteRecursiveAttribute ( self . name + '.' + key , self . execution_method ) return ExecuteRecursiveAttribute ( key , self . execution_method )