aboutsummaryrefslogtreecommitdiffhomepage
path: root/src
diff options
context:
space:
mode:
authorGravatar Christopher Rosell <chrippa@tanuki.se>2011-10-26 03:23:43 +0200
committerGravatar Christopher Rosell <chrippa@tanuki.se>2011-10-26 03:23:43 +0200
commit480296354615632f6dcd1dae39d6addfa034f4a3 (patch)
treea736c373e3350758659dc9bde46eb88395fbe3de /src
parent93a3a5fadab3f8accb475a80aa8f32dad6c8b92a (diff)
Some code rearrangements.
Diffstat (limited to 'src')
-rw-r--r--src/livestreamer/__init__.py13
-rw-r--r--src/livestreamer/cli.py14
2 files changed, 15 insertions, 12 deletions
diff --git a/src/livestreamer/__init__.py b/src/livestreamer/__init__.py
index 0d1a455..0e399b9 100644
--- a/src/livestreamer/__init__.py
+++ b/src/livestreamer/__init__.py
@@ -1 +1,12 @@
-from livestreamer.cli import main
+from livestreamer import plugins
+
+def resolve_url(url):
+ for name, plugin in plugins.get_plugins().items():
+ if plugin.can_handle_url(url):
+ return (name, plugin)
+ return None
+
+def get_plugins():
+ return plugins.get_plugins()
+
+plugins.load_plugins(plugins)
diff --git a/src/livestreamer/cli.py b/src/livestreamer/cli.py
index 18ac7e5..b4b99e7 100644
--- a/src/livestreamer/cli.py
+++ b/src/livestreamer/cli.py
@@ -3,7 +3,7 @@
import argparse
import sys, os
-from livestreamer import plugins
+import livestreamer
parser = argparse.ArgumentParser(description="Util to play various livestreaming services in a custom player")
parser.add_argument("url", help="URL to stream", nargs="?")
@@ -18,14 +18,8 @@ def exit(msg):
sys.stderr.write("error: " + msg + "\n")
sys.exit()
-def get_plugin_for_url(url):
- for name, plugin in plugins.get_plugins().items():
- if plugin.can_handle_url(url):
- return (name, plugin)
- return None
-
def handle_url(args):
- (pluginname, plugin) = get_plugin_for_url(args.url)
+ (pluginname, plugin) = livestreamer.resolve_url(args.url)
if not plugin:
exit(("No plugin can handle url: {0}").format(args.url))
@@ -60,13 +54,11 @@ def handle_url(args):
def print_plugins():
- pluginlist = list(plugins.get_plugins().keys())
+ pluginlist = list(livestreamer.get_plugins().keys())
print(("Installed plugins: {0}").format(", ".join(pluginlist)))
def main():
- plugins.load_plugins(plugins)
-
args = parser.parse_args()
if args.url: