plugable: turn Plugin attributes into properties

Implement the `name`, `doc` and `summary` Plugin attributes as properties
to allow them to be overriden in sub-classes.

Always use .doc rather than .__doc__ to access plugin documentation.

Remove the mostly unused `module`, `fullname`, `bases` and `label`
attributes.

https://fedorahosted.org/freeipa/ticket/4739

Reviewed-By: David Kupka <dkupka@redhat.com>
This commit is contained in:
Jan Cholasta
2016-05-30 09:40:07 +02:00
parent fe18adb258
commit ed4c2d9252
6 changed files with 32 additions and 45 deletions

View File

@@ -214,13 +214,13 @@ def validate_doc():
topic = next_topic
# Does the command have documentation?
if cmd.__doc__ is None:
if cmd.doc is None:
src_file = inspect.getsourcefile(cmd_class)
line_num = inspect.getsourcelines(cmd_class)[1]
n_missing_cmd_doc += 1
print("%s:%d command \"%s\" has no doc" % (src_file, line_num, cmd.name))
# Yes the command has doc, but is it internationalized?
elif not is_i18n(cmd.__doc__):
elif not is_i18n(cmd.doc):
src_file = inspect.getsourcefile(cmd_class)
line_num = inspect.getsourcelines(cmd_class)[1]
n_missing_cmd_i18n += 1