diff options
| author | David Kupka <dkupka@redhat.com> | 2016-07-20 13:23:33 +0200 |
|---|---|---|
| committer | Jan Cholasta <jcholast@redhat.com> | 2016-08-03 16:32:39 +0200 |
| commit | 29f7f822aba674ebc4184ecc126854adb4330a89 (patch) | |
| tree | 27e2da44c822334e41b1dc9ecd13d78d10840bfa /ipaclient/plugins | |
| parent | 47a693d17430e82787d9704637c022a2fcac531a (diff) | |
| download | freeipa-29f7f822aba674ebc4184ecc126854adb4330a89.tar.gz freeipa-29f7f822aba674ebc4184ecc126854adb4330a89.tar.xz freeipa-29f7f822aba674ebc4184ecc126854adb4330a89.zip | |
frontend: Change doc, summary, topic and NO_CLI to class properties
Avoid need to instantiate all commands just to get information for
displaying help.
https://fedorahosted.org/freeipa/ticket/6048
Reviewed-By: Jan Cholasta <jcholast@redhat.com>
Diffstat (limited to 'ipaclient/plugins')
| -rw-r--r-- | ipaclient/plugins/automount.py | 9 | ||||
| -rw-r--r-- | ipaclient/plugins/otptoken_yubikey.py | 11 | ||||
| -rw-r--r-- | ipaclient/plugins/vault.py | 35 |
3 files changed, 35 insertions, 20 deletions
diff --git a/ipaclient/plugins/automount.py b/ipaclient/plugins/automount.py index c6537bc6c..925b635ff 100644 --- a/ipaclient/plugins/automount.py +++ b/ipaclient/plugins/automount.py @@ -27,6 +27,7 @@ from ipalib import api, errors from ipalib import Flag, Str from ipalib.frontend import Command, Method, Object from ipalib.plugable import Registry +from ipalib.util import classproperty from ipalib import _ from ipapython.dn import DN @@ -52,11 +53,13 @@ class _fake_automountlocation_show(Method): @register(override=True, no_fail=True) class automountlocation_tofiles(MethodOverride): - @property - def NO_CLI(self): - return isinstance(self.api.Command.automountlocation_show, + @classmethod + def __NO_CLI_getter(cls): + return isinstance(api.Command.automountlocation_show, _fake_automountlocation_show) + NO_CLI = classproperty(__NO_CLI_getter) + def output_for_cli(self, textui, result, *keys, **options): maps = result['result']['maps'] keys = result['result']['keys'] diff --git a/ipaclient/plugins/otptoken_yubikey.py b/ipaclient/plugins/otptoken_yubikey.py index 423b670de..bfa244c88 100644 --- a/ipaclient/plugins/otptoken_yubikey.py +++ b/ipaclient/plugins/otptoken_yubikey.py @@ -23,10 +23,11 @@ import six import usb.core import yubico -from ipalib import _, IntEnum +from ipalib import _, api, IntEnum from ipalib.errors import NotFound from ipalib.frontend import Command, Method, Object from ipalib.plugable import Registry +from ipalib.util import classproperty if six.PY3: unicode = str @@ -74,11 +75,13 @@ class otptoken_add_yubikey(Command): ) has_output_params = takes_options - @property - def NO_CLI(self): - return isinstance(self.api.Command.otptoken_add, + @classmethod + def __NO_CLI_getter(cls): + return isinstance(api.Command.otptoken_add, _fake_otptoken_add) + NO_CLI = classproperty(__NO_CLI_getter) + def get_args(self): for arg in self.api.Command.otptoken_add.args(): yield arg diff --git a/ipaclient/plugins/vault.py b/ipaclient/plugins/vault.py index 73ad09b38..ed75a0e22 100644 --- a/ipaclient/plugins/vault.py +++ b/ipaclient/plugins/vault.py @@ -38,7 +38,8 @@ import nss.nss as nss from ipaclient.frontend import MethodOverride from ipalib.frontend import Local, Method, Object -from ipalib import errors +from ipalib.util import classproperty +from ipalib import api, errors from ipalib import Bytes, Flag, Str from ipalib.plugable import Registry from ipalib import _ @@ -202,11 +203,13 @@ class vault_add(Local): ), ) - @property - def NO_CLI(self): - return isinstance(self.api.Command.vault_add_internal, + @classmethod + def __NO_CLI_getter(cls): + return isinstance(api.Command.vault_add_internal, _fake_vault_add_internal) + NO_CLI = classproperty(__NO_CLI_getter) + def get_args(self): for arg in self.api.Command.vault_add_internal.args(): yield arg @@ -400,11 +403,13 @@ class vault_mod(Local): ), ) - @property - def NO_CLI(self): - return isinstance(self.api.Command.vault_mod_internal, + @classmethod + def __NO_CLI_getter(cls): + return isinstance(api.Command.vault_mod_internal, _fake_vault_mod_internal) + NO_CLI = classproperty(__NO_CLI_getter) + def get_args(self): for arg in self.api.Command.vault_mod_internal.args(): yield arg @@ -579,11 +584,13 @@ class vault_archive(Local): ), ) - @property - def NO_CLI(self): - return isinstance(self.api.Command.vault_archive_internal, + @classmethod + def __NO_CLI_getter(cls): + return isinstance(api.Command.vault_archive_internal, _fake_vault_archive_internal) + NO_CLI = classproperty(__NO_CLI_getter) + def get_args(self): for arg in self.api.Command.vault_archive_internal.args(): yield arg @@ -828,11 +835,13 @@ class vault_retrieve(Local): ), ) - @property - def NO_CLI(self): - return isinstance(self.api.Command.vault_retrieve_internal, + @classmethod + def __NO_CLI_getter(cls): + return isinstance(api.Command.vault_retrieve_internal, _fake_vault_retrieve_internal) + NO_CLI = classproperty(__NO_CLI_getter) + def get_args(self): for arg in self.api.Command.vault_retrieve_internal.args(): yield arg |
