Skip to content
Snippets Groups Projects
Commit 9d26526f authored by sveseli's avatar sveseli
Browse files

changes needed to allow proper configuration for both DAQ and DS web services

parent 5acef4fd
No related branches found
No related tags found
No related merge requests found
......@@ -36,11 +36,14 @@ DEFAULT_DM_CHERRYPY_LOG_LEVEL = 'ERROR'
DEFAULT_DM_CHERRYPY_LOG_FILE = '%s/var/log/%s.%s.cherrypy.error' # requires install dir/db name/service name
DEFAULT_DM_CHERRYPY_ACCESS_FILE = '%s/var/log/%s.%s.cherrypy.access' # requires install dir/db name/service name
DEFAULT_DM_SERVICE_PORT = 22236 # 222DM
DEFAULT_DM_SERVICE_HOST = '127.0.0.1'
DEFAULT_DM_SERVICE_PORT = 22236 # 222DM
DEFAULT_DM_SERVICE_HOST = '0.0.0.0'
DEFAULT_DM_SERVICE_PROTOCOL = dmServiceConstants.DM_SERVICE_PROTOCOL_HTTP
DEFAULT_DM_SERVICE_USERNAME = ''
DEFAULT_DM_SERVICE_PASSWORD = ''
DEFAULT_DM_DS_WEB_SERVICE_PORT = 22236 # 222DM
DEFAULT_DM_DS_WEB_SERVICE_HOST = '127.0.0.1'
DEFAULT_DM_DAQ_WEB_SERVICE_PORT = 33336 # 333DM
DEFAULT_DM_DAQ_WEB_SERVICE_HOST = '127.0.0.1'
DEFAULT_DM_DB = 'postgresql'
DEFAULT_DM_DB_HOST = '127.0.0.1'
......@@ -121,8 +124,12 @@ class ConfigurationManager(UserDict.UserDict):
self['defaultServicePort'] = DEFAULT_DM_SERVICE_PORT
self['defaultServiceHost'] = DEFAULT_DM_SERVICE_HOST
self['defaultServiceProtocol'] = DEFAULT_DM_SERVICE_PROTOCOL
self['defaultServiceUsername'] = DEFAULT_DM_SERVICE_USERNAME
self['defaultServicePassword'] = DEFAULT_DM_SERVICE_PASSWORD
self['defaultDaqWebServicePort'] = DEFAULT_DM_DAQ_WEB_SERVICE_PORT
self['defaultDaqWebServiceHost'] = DEFAULT_DM_DAQ_WEB_SERVICE_HOST
self['defaultDsWebServicePort'] = DEFAULT_DM_DS_WEB_SERVICE_PORT
self['defaultDsWebServiceHost'] = DEFAULT_DM_DS_WEB_SERVICE_HOST
self['defaultDb'] = DEFAULT_DM_DB
self['defaultDbHost'] = DEFAULT_DM_DB_HOST
self['defaultDbPort'] = DEFAULT_DM_DB_PORT
......@@ -147,11 +154,14 @@ class ConfigurationManager(UserDict.UserDict):
self.__setFromEnvVar('cherrypyLogFile', 'DM_CHERRYPY_LOG_FILE')
self.__setFromEnvVar('cherrypyAccessFile', 'DM_CHERRYPY_ACCESS_FILE')
self.__setFromEnvVar('serviceProtocol', 'DM_SERVICE_PROTOCOL')
self.__setFromEnvVar('serviceHost', 'DM_SERVICE_HOST')
self.__setFromEnvVar('servicePort', 'DM_SERVICE_PORT')
self.__setFromEnvVar('serviceUsername', 'DM_SERVICE_USERNAME')
self.__setFromEnvVar('servicePassword', 'DM_SERVICE_PASSWORD')
self.__setFromEnvVar('serviceProtocol', 'DM_SERVICE_PROTOCOL')
self.__setFromEnvVar('daqWebServiceHost', 'DM_DAQ_WEB_SERVICE_HOST')
self.__setFromEnvVar('daqWebServicePort', 'DM_DAQ_WEB_SERVICE_PORT')
self.__setFromEnvVar('dsWebServiceHost', 'DM_DS_WEB_SERVICE_HOST')
self.__setFromEnvVar('dsWebServicePort', 'DM_DS_WEB_SERVICE_PORT')
self.__setFromEnvVar('contextRoot', 'DM_CONTEXT_ROOT')
......@@ -297,7 +307,7 @@ class ConfigurationManager(UserDict.UserDict):
return []
@classmethod
def getModuleClassConstructorTuple(cls, value):
def getModuleClassConstructorTuple(cls, value, creatorClass=None):
""" Extract (module,class,constructor) tuple from the given value. """
itemList = value.split('(')
if not itemList:
......@@ -306,6 +316,13 @@ class ConfigurationManager(UserDict.UserDict):
moduleNameList = itemList2[0:-1]
className = itemList2[-1]
moduleName = className[0].lower() + className[1:]
# If module name list is empty, use convention
# for determining import module name (use creator class module)
if not len(moduleNameList) and creatorClass is not None:
moduleNameList = creatorClass.__module__.split('.')
moduleNameList[-1] = moduleName
if len(moduleNameList):
moduleName = '.'.join(moduleNameList)
constructor = '%s(%s' % (className, ''.join(itemList[1:]))
......@@ -496,29 +513,53 @@ class ConfigurationManager(UserDict.UserDict):
def hasServiceHost(self):
return self.has_key('serviceHost')
def getDefaultServiceUsername(self):
return self['defaultServiceUsername']
def getDefaultDaqWebServicePort(self):
return self['defaultDaqWebServicePort']
def setDaqWebServicePort(self, daqWebServicePort):
self['daqWebServicePort'] = daqWebServicePort
def getDaqWebServicePort(self, default='__dm_default__'):
return int(self.__getKeyValue('daqWebServicePort', default))
def hasDaqWebServicePort(self):
return self.has_key('daqWebServicePort')
def getDefaultDaqWebServiceHost(self):
return self['defaultDaqWebServiceHost']
def setDaqWebServiceHost(self, daqWebServiceHost):
self['daqWebServiceHost'] = daqWebServiceHost
def getDaqWebServiceHost(self, default='__dm_default__'):
return self.__getKeyValue('daqWebServiceHost', default)
def hasDaqWebServiceHost(self):
return self.has_key('daqWebServiceHost')
def getDefaultDsWebServicePort(self):
return self['defaultDsWebServicePort']
def setServiceUsername(self, serviceUsername):
self['serviceUsername'] = serviceUsername
def setDsWebServicePort(self, dsWebServicePort):
self['dsWebServicePort'] = dsWebServicePort
def getServiceUsername(self, default='__dm_default__'):
return self.__getKeyValue('serviceUsername', default)
def getDsWebServicePort(self, default='__dm_default__'):
return int(self.__getKeyValue('dsWebServicePort', default))
def hasServiceUsername(self):
return self.has_key('serviceUsername')
def hasDsWebServicePort(self):
return self.has_key('dsWebServicePort')
def getDefaultServicePassword(self):
return self['defaultServicePassword']
def getDefaultDsWebServiceHost(self):
return self['defaultDsWebServiceHost']
def setServicePassword(self, servicePassword):
self['servicePassword'] = servicePassword
def setDsWebServiceHost(self, dsWebServiceHost):
self['dsWebServiceHost'] = dsWebServiceHost
def getServicePassword(self, default='__dm_default__'):
return self.__getKeyValue('servicePassword', default)
def getDsWebServiceHost(self, default='__dm_default__'):
return self.__getKeyValue('dsWebServiceHost', default)
def hasServicePassword(self):
return self.has_key('servicePassword')
def hasDsWebServiceHost(self):
return self.has_key('dsWebServiceHost')
def getDefaultDb(self):
return self['defaultDb']
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment