summaryrefslogtreecommitdiffstats
path: root/ipalib/frontend.py
diff options
context:
space:
mode:
Diffstat (limited to 'ipalib/frontend.py')
-rw-r--r--ipalib/frontend.py11
1 files changed, 11 insertions, 0 deletions
diff --git a/ipalib/frontend.py b/ipalib/frontend.py
index b79aad955..028e17e79 100644
--- a/ipalib/frontend.py
+++ b/ipalib/frontend.py
@@ -941,6 +941,17 @@ class Command(HasParam):
return rv
+ # list of attributes we want exported to JSON
+ json_friendly_attributes = (
+ 'name', 'takes_args', 'takes_options',
+ )
+
+ def __json__(self):
+ json_dict = dict(
+ (a, getattr(self, a)) for a in self.json_friendly_attributes
+ )
+ return json_dict
+
class LocalOrRemote(Command):
"""
A command that is explicitly executed locally or remotely.