summaryrefslogtreecommitdiffstats
path: root/src/lib
diff options
context:
space:
mode:
authorNarayan Desai <desai@mcs.anl.gov>2009-09-15 20:26:17 +0000
committerNarayan Desai <desai@mcs.anl.gov>2009-09-15 20:26:17 +0000
commitc43f0ea5b25fd30d757f800b114e68242fcfd715 (patch)
tree22b04c2a2ca4bcd4eaa3f1d42bd23443777f77c0 /src/lib
parentaf54731f9ae7bb41d6430fac613081798ec11262 (diff)
downloadbcfg2-c43f0ea5b25fd30d757f800b114e68242fcfd715.tar.gz
bcfg2-c43f0ea5b25fd30d757f800b114e68242fcfd715.tar.bz2
bcfg2-c43f0ea5b25fd30d757f800b114e68242fcfd715.zip
SSLServer: Re-implement support for plugin rmi calls
git-svn-id: https://svn.mcs.anl.gov/repos/bcfg/trunk/bcfg2@5436 ce84e21b-d406-0410-9b95-82705330c041
Diffstat (limited to 'src/lib')
-rw-r--r--src/lib/SSLServer.py6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/lib/SSLServer.py b/src/lib/SSLServer.py
index d22706822..135178cb1 100644
--- a/src/lib/SSLServer.py
+++ b/src/lib/SSLServer.py
@@ -319,6 +319,12 @@ class XMLRPCServer (SocketServer.ThreadingMixIn, SSLServer,
name = instance.name
except AttributeError:
name = "unknown"
+ if hasattr(instance, 'plugins'):
+ for pname, pinst in instance.plugins.iteritems():
+ for mname in pinst.__rmi__:
+ xmname = "%s.%s" % (pname, mname)
+ fn = getattr(pinst, mname)
+ self.register_function(lambda x: fn(), name=xmname)
self.logger.info("serving %s at %s" % (name, self.url))
def serve_forever (self):