summaryrefslogtreecommitdiffstats
path: root/moonclient/moonclient/metarules.py
diff options
context:
space:
mode:
authorWuKong <rebirthmonkey@gmail.com>2015-09-23 11:58:00 +0200
committerWuKong <rebirthmonkey@gmail.com>2015-09-23 11:58:00 +0200
commit480d0fb4390de27b225722e72cb95686f5c42ff8 (patch)
treef4d1c95356fce394c9bc8db427e5be558ae64568 /moonclient/moonclient/metarules.py
parentc572f02590ae0e70118bb6eec71b3bfdf3fb2b25 (diff)
review moonclient
Change-Id: I0969fe42fd756c025d549d0cffe07943cddd2d15 Signed-off-by: WuKong <rebirthmonkey@gmail.com>
Diffstat (limited to 'moonclient/moonclient/metarules.py')
-rw-r--r--moonclient/moonclient/metarules.py81
1 files changed, 44 insertions, 37 deletions
diff --git a/moonclient/moonclient/metarules.py b/moonclient/moonclient/metarules.py
index 51f6a97f..a29ab45f 100644
--- a/moonclient/moonclient/metarules.py
+++ b/moonclient/moonclient/metarules.py
@@ -57,8 +57,8 @@ class AggregationAlgorithmSet(Command):
def get_parser(self, prog_name):
parser = super(AggregationAlgorithmSet, self).get_parser(prog_name)
parser.add_argument(
- 'aggregation_algorithm',
- metavar='<aggregation_algorithm-uuid>',
+ 'aggregation_algorithm_id',
+ metavar='<aggregation-algorithm-uuid>',
help='Aggregation algorithm UUID',
)
parser.add_argument(
@@ -66,6 +66,11 @@ class AggregationAlgorithmSet(Command):
metavar='<intraextension-uuid>',
help='IntraExtension UUID',
)
+ parser.add_argument(
+ '--description',
+ metavar='<description-str>',
+ help='Action description',
+ )
return parser
def take_action(self, parsed_args):
@@ -73,7 +78,9 @@ class AggregationAlgorithmSet(Command):
parsed_args.intraextension = self.app.intraextension
data = self.app.get_url("/v3/OS-MOON/intra_extensions/{}/aggregation_algorithm".format(
parsed_args.intraextension),
- post_data={"aggregation_algorithm_id": parsed_args.aggregation_algorithm},
+ post_data={
+ "aggregation_algorithm_id": parsed_args.aggregation_algorithm_id,
+ "aggregation_algorithm_description": parsed_args.description},
authtoken=True)
algorithm = self.__get_aggregation_algorithm_from_id(data['content'])
return (
@@ -96,23 +103,23 @@ class SubMetaRuleShow(Lister):
)
return parser
- def __get_subject_category_name(self, intraextension, category_id):
+ def __get_subject_category_name(self, intraextension, subject_category_id):
data = self.app.get_url("/v3/OS-MOON/intra_extensions/{}/subject_categories".format(intraextension),
authtoken=True)
- if category_id in data:
- return data[category_id]["name"]
+ if subject_category_id in data:
+ return data[subject_category_id]["name"]
- def __get_object_category_name(self, intraextension, category_id):
+ def __get_object_category_name(self, intraextension, object_category_id):
data = self.app.get_url("/v3/OS-MOON/intra_extensions/{}/object_categories".format(intraextension),
authtoken=True)
- if category_id in data:
- return data[category_id]["name"]
+ if object_category_id in data:
+ return data[object_category_id]["name"]
- def __get_action_category_name(self, intraextension, category_id):
+ def __get_action_category_name(self, intraextension, action_category_id):
data = self.app.get_url("/v3/OS-MOON/intra_extensions/{}/action_categories".format(intraextension),
authtoken=True)
- if category_id in data:
- return data[category_id]["name"]
+ if action_category_id in data:
+ return data[action_category_id]["name"]
def take_action(self, parsed_args):
if not parsed_args.intraextension:
@@ -140,7 +147,7 @@ class SubMetaRuleSet(Command):
def get_parser(self, prog_name):
parser = super(SubMetaRuleSet, self).get_parser(prog_name)
parser.add_argument(
- 'id',
+ 'submetarule_id',
metavar='<sub_meta_rule-uuid>',
help='Sub Meta Rule UUID (example: "12346")',
)
@@ -155,19 +162,19 @@ class SubMetaRuleSet(Command):
help='name to set (example: "my new sub meta rule")',
)
parser.add_argument(
- '--subject_categories',
- metavar='<subject_categories-uuid>',
- help='subject_categories UUID (example: "12346,")',
+ '--subject_category_id',
+ metavar='<subject-category-uuid>',
+ help='subject category UUID (example: "12346,")',
)
parser.add_argument(
- '--action_categories',
- metavar='<action_categories-uuid>',
- help='action_categories UUID (example: "12346,0987654")',
+ '--object_category_id',
+ metavar='<object-category-uuid>',
+ help='object category UUID (example: "12346")',
)
parser.add_argument(
- '--object_categories',
- metavar='<object_categories-uuid>',
- help='object_categories UUID (example: "12346")',
+ '--action_category_id',
+ metavar='<action-category-uuid>',
+ help='action category UUID (example: "12346,0987654")',
)
parser.add_argument(
'--intraextension',
@@ -179,25 +186,25 @@ class SubMetaRuleSet(Command):
def take_action(self, parsed_args):
if not parsed_args.intraextension:
parsed_args.intraextension = self.app.intraextension
- subject_categories = parsed_args.subject_categories
- if not subject_categories:
- subject_categories = ""
- object_categories = parsed_args.object_categories
- if not object_categories:
- object_categories = ""
- action_categories = parsed_args.action_categories
- if not action_categories:
- action_categories = ""
- subject_categories = map(lambda x: x.strip(), subject_categories.split(','))
- action_categories = map(lambda x: x.strip(), action_categories.split(','))
- object_categories = map(lambda x: x.strip(), object_categories.split(','))
+ subject_category_id = parsed_args.subject_category_id
+ if not subject_category_id:
+ subject_category_id = ""
+ object_category_id = parsed_args.object_category_id
+ if not object_category_id:
+ object_category_id = ""
+ action_category_id = parsed_args.action_category_id
+ if not action_category_id:
+ action_category_id = ""
+ subject_category_id = map(lambda x: x.strip(), subject_category_id.split(','))
+ action_category_id = map(lambda x: x.strip(), action_category_id.split(','))
+ object_category_id = map(lambda x: x.strip(), object_category_id.split(','))
sub_meta_rule_id = parsed_args.id
post_data = dict()
post_data["sub_meta_rule_name"] = parsed_args.name
post_data["sub_meta_rule_algorithm"] = parsed_args.algorithm
- post_data["sub_meta_rule_subject_categories"] = filter(lambda x: x, subject_categories)
- post_data["sub_meta_rule_object_categories"] = filter(lambda x: x, object_categories)
- post_data["sub_meta_rule_action_categories"] = filter(lambda x: x, action_categories)
+ post_data["sub_meta_rule_subject_categories"] = filter(lambda x: x, subject_category_id) # TODO: check for multiple categories
+ post_data["sub_meta_rule_object_categories"] = filter(lambda x: x, object_category_id)
+ post_data["sub_meta_rule_action_categories"] = filter(lambda x: x, action_category_id)
self.app.get_url("/v3/OS-MOON/intra_extensions/{}/sub_meta_rules/{}".format(parsed_args.intraextension, sub_meta_rule_id),
post_data=post_data,
method="POST",