diff options
Diffstat (limited to 'ipalib/plugins/internal.py')
-rw-r--r-- | ipalib/plugins/internal.py | 17 |
1 files changed, 12 insertions, 5 deletions
diff --git a/ipalib/plugins/internal.py b/ipalib/plugins/internal.py index 096da18d8..e950796b5 100644 --- a/ipalib/plugins/internal.py +++ b/ipalib/plugins/internal.py @@ -73,16 +73,23 @@ class json_metadata(Command): ) def execute(self, objname): + if objname and objname in self.api.Object: - return dict( + + meta = dict( result=dict( ((objname, json_serialize(self.api.Object[objname])), ) ) ) - result=dict( - (o.name, json_serialize(o)) for o in self.api.Object() - ) - retval= dict([("metadata",result),("messages",json_serialize(self.messages))]) + retval= dict([("metadata",meta), ("messages",dict())]) + + else: + meta=dict( + (o.name, json_serialize(o)) for o in self.api.Object() + ) + + retval= dict([("metadata",meta), + ("messages",json_serialize(self.messages))]) return retval |