summaryrefslogtreecommitdiffstats
path: root/ipaclient/plugins
diff options
context:
space:
mode:
authorDavid Kupka <dkupka@redhat.com>2016-07-20 13:23:33 +0200
committerJan Cholasta <jcholast@redhat.com>2016-08-03 16:32:39 +0200
commit29f7f822aba674ebc4184ecc126854adb4330a89 (patch)
tree27e2da44c822334e41b1dc9ecd13d78d10840bfa /ipaclient/plugins
parent47a693d17430e82787d9704637c022a2fcac531a (diff)
downloadfreeipa-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.py9
-rw-r--r--ipaclient/plugins/otptoken_yubikey.py11
-rw-r--r--ipaclient/plugins/vault.py35
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