J
Joe
Hello,
I'm trying to implement a way to restrict method usage based on the
caller's attributes. In the following example I'd like to execute the
server method "bar" only if the caller's method has a "blue" value for
it's color attribute.
The current output is:
blue
red
bar
bar
I'd like it to be:
blue
red
bar
I've worked my way through inspect but that doesn't seem to be the
right approach.
# Example
class Client:
def __init__(self, server):
self.server=server
def foo(self):
self.server.bar()
def fu(self):
self.server.bar()
foo.__dict__['color']='blue'
fu.__dict__['color']='red'
class BlueServer:
def bar(self):
"""
Goal is to only accept calls from "blue" client methods.
Don't know how to do it
"""
print "bar"
s=BlueServer()
c=Client(s)
print c.foo.color
print c.fu.color
c.foo()
c.fu()
Thanks for your help!
Joe
I'm trying to implement a way to restrict method usage based on the
caller's attributes. In the following example I'd like to execute the
server method "bar" only if the caller's method has a "blue" value for
it's color attribute.
The current output is:
blue
red
bar
bar
I'd like it to be:
blue
red
bar
I've worked my way through inspect but that doesn't seem to be the
right approach.
# Example
class Client:
def __init__(self, server):
self.server=server
def foo(self):
self.server.bar()
def fu(self):
self.server.bar()
foo.__dict__['color']='blue'
fu.__dict__['color']='red'
class BlueServer:
def bar(self):
"""
Goal is to only accept calls from "blue" client methods.
Don't know how to do it
"""
print "bar"
s=BlueServer()
c=Client(s)
print c.foo.color
print c.fu.color
c.foo()
c.fu()
Thanks for your help!
Joe