From 5b6fc25cf843f29f99921818932a9fb380c9ea7b Mon Sep 17 00:00:00 2001 From: Stein Magnus Jodal Date: Mon, 1 Apr 2013 15:04:25 +0200 Subject: [PATCH] mpris: Define extension --- mopidy/frontends/mpris/__init__.py | 33 +++++++++++++++++++++++++++--- setup.py | 1 + 2 files changed, 31 insertions(+), 3 deletions(-) diff --git a/mopidy/frontends/mpris/__init__.py b/mopidy/frontends/mpris/__init__.py index 2be6efea..acaff7ff 100644 --- a/mopidy/frontends/mpris/__init__.py +++ b/mopidy/frontends/mpris/__init__.py @@ -1,4 +1,11 @@ -""" +from __future__ import unicode_literals + +import mopidy +from mopidy import ext +from mopidy.exceptions import ExtensionError + + +__doc__ = """ Frontend which lets you control Mopidy through the Media Player Remote Interfacing Specification (`MPRIS `_) D-Bus interface. @@ -50,7 +57,27 @@ Now you can control Mopidy through the player object. Examples: player.Quit(dbus_interface='org.mpris.MediaPlayer2') """ -from __future__ import unicode_literals -# flake8: noqa +# TODO Move import into method when FRONTENDS setting is removed from .actor import MprisFrontend + + +class Extension(ext.Extension): + + name = 'Mopidy-MPRIS' + version = mopidy.__version__ + + def get_default_config(self): + return '[mpris]' + + def validate_config(self, config): + pass + + def validate_environment(self): + try: + import dbus # noqa + except ImportError as e: + raise ExtensionError('Library dbus not found', e) + + def get_frontend_classes(self): + return [MprisFrontend] diff --git a/setup.py b/setup.py index eb46fe87..3672e2f2 100644 --- a/setup.py +++ b/setup.py @@ -47,6 +47,7 @@ setup( b'mopidy.extension': [ 'local = mopidy.backends.local:Extension', 'mpd = mopidy.frontends.mpd:Extension', + 'mpris = mopidy.frontends.mpris:Extension', 'spotify = mopidy.backends.spotify:Extension', 'stream = mopidy.backends.stream:Extension', ],