From 25639f66910aa8a188d5b4b8fff8803e169da62a Mon Sep 17 00:00:00 2001 From: Kefu Chai Date: Tue, 5 Sep 2017 16:00:59 +0800 Subject: [PATCH] ceph: extract ids_by_service() so it can be reused Signed-off-by: Kefu Chai --- src/ceph.in | 21 +++++++++++---------- 1 file changed, 11 insertions(+), 10 deletions(-) diff --git a/src/ceph.in b/src/ceph.in index bb2516c788f99..adb11c39b2aee 100755 --- a/src/ceph.in +++ b/src/ceph.in @@ -199,6 +199,14 @@ def mgrids(): return l +def ids_by_service(service): + ids = {"mon": monids, + "osd": osdids, + "mds": mdsids, + "mgr": mgrids} + return ids[service]() + + def validate_target(target): """ this function will return true iff target is a correct @@ -211,16 +219,9 @@ def validate_target(target): if len(target) == 2: # for case "service.id" service_name, service_id = target[0], target[1] - exist_ids = [] - if service_name == "mon": - exist_ids = monids() - elif service_name == "osd": - exist_ids = osdids() - elif service_name == "mds": - exist_ids = mdsids() - elif service_name == "mgr": - exist_ids = mgrids() - else: + try: + exist_ids = ids_by_service(service_name) + except KeyError: print('WARN: {0} is not a legal service name, should be one of mon/osd/mds/mgr'.format(service_name), file=sys.stderr) return False -- 2.39.5