summaryrefslogtreecommitdiffstats
path: root/src/lib/Bcfg2/Server/BuiltinCore.py
diff options
context:
space:
mode:
authorChris St. Pierre <chris.a.st.pierre@gmail.com>2012-09-24 13:07:15 -0400
committerChris St. Pierre <chris.a.st.pierre@gmail.com>2012-09-25 11:58:47 -0400
commit6d4d8df68717780239fad273dd722359db10e64b (patch)
treec50c94430a417cab3c97084022d85332065b022b /src/lib/Bcfg2/Server/BuiltinCore.py
parentdd28e90f183972cc2a395094ce3e3f72e861953f (diff)
downloadbcfg2-6d4d8df68717780239fad273dd722359db10e64b.tar.gz
bcfg2-6d4d8df68717780239fad273dd722359db10e64b.tar.bz2
bcfg2-6d4d8df68717780239fad273dd722359db10e64b.zip
expanded pylint tests
Diffstat (limited to 'src/lib/Bcfg2/Server/BuiltinCore.py')
-rw-r--r--src/lib/Bcfg2/Server/BuiltinCore.py45
1 files changed, 8 insertions, 37 deletions
diff --git a/src/lib/Bcfg2/Server/BuiltinCore.py b/src/lib/Bcfg2/Server/BuiltinCore.py
index 5ceee36b7..ebd426802 100644
--- a/src/lib/Bcfg2/Server/BuiltinCore.py
+++ b/src/lib/Bcfg2/Server/BuiltinCore.py
@@ -1,23 +1,16 @@
""" the core of the builtin bcfg2 server """
-import os
import sys
import time
import socket
import daemon
-import logging
-from Bcfg2.Server.Core import BaseCore
+from Bcfg2.Server.Core import BaseCore, NoExposedMethod
from Bcfg2.Compat import xmlrpclib, urlparse
from Bcfg2.SSLServer import XMLRPCServer
-logger = logging.getLogger()
-
-
-class NoExposedMethod (Exception):
- """There is no method exposed with the given name."""
-
class Core(BaseCore):
+ """ The built-in server core """
name = 'bcfg2-server'
def __init__(self, setup):
@@ -25,21 +18,6 @@ class Core(BaseCore):
self.server = None
self.context = daemon.DaemonContext()
- def _resolve_exposed_method(self, method_name):
- """Resolve an exposed method.
-
- Arguments:
- method_name -- name of the method to resolve
-
- """
- try:
- func = getattr(self, method_name)
- except AttributeError:
- raise NoExposedMethod(method_name)
- if not getattr(func, "exposed", False):
- raise NoExposedMethod(method_name)
- return func
-
def _dispatch(self, method, args, dispatch_dict):
"""Custom XML-RPC dispatcher for components.
@@ -66,10 +44,10 @@ class Core(BaseCore):
except xmlrpclib.Fault:
raise
except Exception:
- e = sys.exc_info()[1]
- if getattr(e, "log", True):
- self.logger.error(e, exc_info=True)
- raise xmlrpclib.Fault(getattr(e, "fault_code", 1), str(e))
+ err = sys.exc_info()[1]
+ if getattr(err, "log", True):
+ self.logger.error(err, exc_info=True)
+ raise xmlrpclib.Fault(getattr(err, "fault_code", 1), str(err))
return result
def _daemonize(self):
@@ -91,10 +69,10 @@ class Core(BaseCore):
timeout=1,
ca=self.setup['ca'],
protocol=self.setup['protocol'])
- except:
+ except: # pylint: disable=W0702
err = sys.exc_info()[1]
self.logger.error("Server startup failed: %s" % err)
- os._exit(1)
+ self.context.close()
self.server.register_instance(self)
def _block(self):
@@ -104,10 +82,3 @@ class Core(BaseCore):
self.server.server_close()
self.context.close()
self.shutdown()
-
- def methodHelp(self, method_name):
- try:
- func = self._resolve_exposed_method(method_name)
- except NoExposedMethod:
- return ""
- return func.__doc__