summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDavid McMackins II <contact@mcmackins.org>2015-11-17 16:20:18 -0600
committerDavid McMackins II <contact@mcmackins.org>2015-11-17 16:20:18 -0600
commitaf22a3b9a3f81ef82a418b2487c0ea9a46710911 (patch)
tree9dea794058401a0c5c7914ad8a6a65274550ef2d
parentd0d55d7e8603f3ee76d8305ccc51523b5aaa32b5 (diff)
Improve load time for getting list of tickers for user interface
-rwxr-xr-xcoinfetch14
1 files changed, 8 insertions, 6 deletions
diff --git a/coinfetch b/coinfetch
index d1a3f0b..b3ded8e 100755
--- a/coinfetch
+++ b/coinfetch
@@ -50,6 +50,10 @@ else:
default_api = config['coinfetch']['api']
+load_default_plugins()
+tickers = get_registered_tickers()
+tickers.sort()
+
class DefaultApiAction(Action):
def __call__(self, parser, values, namespace, option_string):
config['coinfetch']['api'] = namespace
@@ -60,8 +64,6 @@ class DefaultApiAction(Action):
class ListAction(Action):
def __call__(self, parser, values, namespace, option_string):
- tickers = get_registered_tickers()
- tickers.sort()
for api, desc in tickers:
if api == default_api:
desc += ' (default)'
@@ -73,16 +75,16 @@ class VersionAction(Action):
print(__version_info__)
exit(0)
-load_default_plugins()
-
cli = ArgumentParser(__title__)
-cli.add_argument('-a', '--api', default=default_api, help='uses an API by name')
+cli.add_argument('-a', '--api', default=default_api,
+ choices=[api for api, desc in tickers],
+ help='uses an API by name')
cli.add_argument('-k', '--kind', help='specifies which kind of rate to get')
cli.add_argument('-l', '--list-apis', action=ListAction,
help='list available APIs and exit', nargs=0)
cli.add_argument('--set-default', action=DefaultApiAction,
- choices=[api for api, desc in get_registered_tickers()],
+ choices=[api for api, desc in tickers],
help='sets the default API and exits')
cli.add_argument('-v', '--version', action=VersionAction,
help='show version information and exit', nargs=0)