From 3fcf14b7b8a66c9390ecfd34924c092efc79b3d0 Mon Sep 17 00:00:00 2001 From: Sinisa Veseli <sveseli@aps.anl.gov> Date: Tue, 23 Jun 2015 20:04:03 +0000 Subject: [PATCH] introduce base db cli class; move some rest-related functionality to rest cli base --- src/python/dm/common/cli/dmCli.py | 12 ------------ src/python/dm/common/cli/dmDbCli.py | 12 ++++++++++++ src/python/dm/common/cli/dmRestCli.py | 18 ++++++++++++++++++ 3 files changed, 30 insertions(+), 12 deletions(-) create mode 100755 src/python/dm/common/cli/dmDbCli.py diff --git a/src/python/dm/common/cli/dmCli.py b/src/python/dm/common/cli/dmCli.py index 6aebff86..6660344f 100755 --- a/src/python/dm/common/cli/dmCli.py +++ b/src/python/dm/common/cli/dmCli.py @@ -43,18 +43,6 @@ class DmCli(object): self.addOptionToGroup(commonGroup, '', '--display-format', dest='displayFormat', default=DmObject.TEXT_DISPLAY_FORMAT, help='Display format for output objects. Possible options are: %s, %s, and %s (default: %s).' % (DmObject.TEXT_DISPLAY_FORMAT, DmObject.DICT_DISPLAY_FORMAT, DmObject.JSON_DISPLAY_FORMAT, DmObject.TEXT_DISPLAY_FORMAT)) self.addOptionToGroup(commonGroup, '', '--display-keys', dest='displayKeys', default=DmObject.DEFAULT_KEYS, help='List of output object keys to display. Possible options are: %s, %s, and string containing comma-separated keys (default: %s, represents class default keys).' % (DmObject.DEFAULT_KEYS, DmObject.ALL_KEYS, DmObject.DEFAULT_KEYS)) - serviceGroup = 'Service Options' - self.addOptionGroup(serviceGroup, None) - # These will be set via env variables - self.addOptionToGroup(serviceGroup, '', '--service-host', dest='serviceHost', default=self.getDefaultServiceHost(), help='Service host (default: %s, can be set via DM_SERVICE_HOST environment variable).' % self.getDefaultServiceHost()) - self.addOptionToGroup(serviceGroup, '', '--service-port', dest='servicePort', default=self.getDefaultServicePort(), help='Service port (default: %s, can be set via DM_SERVICE_PORT environment variable).' % self.getDefaultServicePort()) - self.addOptionToGroup(serviceGroup, '', '--service-protocol', dest='serviceProtocol', default=self.getDefaultServiceProtocol(), help='Service protocol (default: %s, can be set via DM_SERVICE_PROTOCOL environment variable).' % self.getDefaultServiceProtocol()) - - # SSL options, disabled for now. - #self.addOptionToGroup(commonGroup, '', '--ssl-key', dest='sslKeyFile', help='SSL key file (needed if service requires peer verification, can be set via DM_SSL_KEY_FILE environment variable).') - #self.addOptionToGroup(commonGroup, '', '--ssl-cert', dest='sslCertFile', help='SSL certificate file (needed if service requires peer verification, can be set via DM_SSL_CERT_FILE environment variable).') - #self.addOptionToGroup(commonGroup, '', '--ssl-ca-cert', dest='sslCaCertFile', help='SSL CA certificate file (needed if client requires peer verification, can be set via DM_SSL_CA_CERT_FILE environment variable).') - def getDefaultServiceHost(self): return ConfigurationManager.getInstance().getServiceHost() diff --git a/src/python/dm/common/cli/dmDbCli.py b/src/python/dm/common/cli/dmDbCli.py new file mode 100755 index 00000000..cf4a9850 --- /dev/null +++ b/src/python/dm/common/cli/dmDbCli.py @@ -0,0 +1,12 @@ +#!/usr/bin/env python + +from dm.common.cli.dmCli import DmCli +from dm.common.utility.configurationManager import ConfigurationManager + +class DmDbCli(DmCli): + """ Base dm DB cli class. """ + + def __init__(self, validArgCount=0): + DmCli.__init__(self, validArgCount) + + diff --git a/src/python/dm/common/cli/dmRestCli.py b/src/python/dm/common/cli/dmRestCli.py index 1bdbfb22..42f9b866 100755 --- a/src/python/dm/common/cli/dmRestCli.py +++ b/src/python/dm/common/cli/dmRestCli.py @@ -9,6 +9,24 @@ class DmRestCli(DmCli): def __init__(self, validArgCount=0): DmCli.__init__(self, validArgCount) + serviceGroup = 'Service Options' + self.addOptionGroup(serviceGroup, None) + # These will be set via env variables + self.addOptionToGroup(serviceGroup, '', '--service-host', dest='serviceHost', default=self.getDefaultServiceHost(), help='Service host (default: %s, can be set via DM_SERVICE_HOST environment variable).' % self.getDefaultServiceHost()) + self.addOptionToGroup(serviceGroup, '', '--service-port', dest='servicePort', default=self.getDefaultServicePort(), help='Service port (default: %s, can be set via DM_SERVICE_PORT environment variable).' % self.getDefaultServicePort()) + self.addOptionToGroup(serviceGroup, '', '--service-protocol', dest='serviceProtocol', default=self.getDefaultServiceProtocol(), help='Service protocol (default: %s, can be set via DM_SERVICE_PROTOCOL environment variable).' % self.getDefaultServiceProtocol()) + + # SSL options, disabled for now. + #self.addOptionToGroup(commonGroup, '', '--ssl-key', dest='sslKeyFile', help='SSL key file (needed if service requires peer verification, can be set via DM_SSL_KEY_FILE environment variable).') + #self.addOptionToGroup(commonGroup, '', '--ssl-cert', dest='sslCertFile', help='SSL certificate file (needed if service requires peer verification, can be set via DM_SSL_CERT_FILE environment variable).') + #self.addOptionToGroup(commonGroup, '', '--ssl-ca-cert', dest='sslCaCertFile', help='SSL CA certificate file (needed if client requires peer verification, can be set via DM_SSL_CA_CERT_FILE environment variable).') + + def getDefaultServiceHost(self): + return ConfigurationManager.getInstance().getServiceHost() + + def getDefaultServicePort(self): + return ConfigurationManager.getInstance().getServicePort() + def getDefaultServiceProtocol(self): return ConfigurationManager.getInstance().getWebServiceProtocol() -- GitLab