Rename BaseModule to Module and Module to LoadedModule

This commit is contained in:
Florent 2014-09-23 10:16:35 +02:00
commit 5a1d83b567
166 changed files with 359 additions and 359 deletions

View file

@ -63,8 +63,8 @@ For example, use this command::
In a module directory, there are commonly these files:
* **__init__.py** - needed in every python modules, it exports your :class:`BaseModule <weboob.tools.backend.BaseModule>` class.
* **module.py** - defines the main class of your module, which derives :class:`BaseModule <weboob.tools.backend.BaseModule>`.
* **__init__.py** - needed in every python modules, it exports your :class:`Module <weboob.tools.backend.Module>` class.
* **module.py** - defines the main class of your module, which derives :class:`Module <weboob.tools.backend.Module>`.
* **browser.py** - your browser, derived from :class:`BaseBrowser <weboob.tools.browser2.browser.BaseBrowser>`, is called by your module to interact with the supported website.
* **pages.py** - all website's pages handled by the browser are defined here
* **test.py** - functional tests
@ -97,9 +97,9 @@ If the last command does not work, check your :doc:`repositories setup </guides/
Module class
*************
Edit ``module.py``. It contains the main class of the module derived from :class:`BaseModule <weboob.tools.backend.BaseModule>` class::
Edit ``module.py``. It contains the main class of the module derived from :class:`Module <weboob.tools.backend.Module>` class::
class ExampleModule(BaseModule, CapBank):
class ExampleModule(Module, CapBank):
NAME = 'example' # The name of module
DESCRIPTION = u'Example bank website' # Description of your module
MAINTAINER = u'John Smith' # Name of maintainer of this module
@ -138,7 +138,7 @@ For example::
from weboob.tools.backend import BackendConfig
# ...
class ExampleModule(BaseModule, CapBank):
class ExampleModule(Module, CapBank):
# ...
CONFIG = BackendConfig(Value('username', label='Username', regexp='.+'),
ValueBackendPassword('password', label='Password'),
@ -155,7 +155,7 @@ Implement capabilities
You need to implement each method of all of the capabilities your module implements. For example, in our case::
# ...
class ExampleModule(BaseModule, CapBank):
class ExampleModule(Module, CapBank):
# ...
def iter_accounts(self):
@ -271,7 +271,7 @@ Now you have a functional browser, you can use it in your class ``ExampleModule`
from .browser import ExampleBrowser
# ...
class ExampleModule(BaseModule, CapBank):
class ExampleModule(Module, CapBank):
# ...
BROWSER = ExampleBrowser
@ -288,9 +288,9 @@ Login management
----------------
When the website requires to be authenticated, you have to give credentials to the constructor of the browser. You can redefine
the method :func:`create_default_browser <weboob.tools.backend.BaseModule.create_default_browser>`::
the method :func:`create_default_browser <weboob.tools.backend.Module.create_default_browser>`::
class ExampleModule(BaseModule, CapBank):
class ExampleModule(Module, CapBank):
# ...
def create_default_browser(self):
return self.create_browser(self.config['username'].get(), self.config['password'].get())
@ -430,8 +430,8 @@ Filling objects
An object returned by a method of a capability can be not fully completed.
The class :class:`BaseModule <weboob.tools.backend.BaseModule>` provides a method named
:func:`fillobj <weboob.tools.backend.BaseModule.fillobj>`, which can be called by an application to
The class :class:`Module <weboob.tools.backend.Module>` provides a method named
:func:`fillobj <weboob.tools.backend.Module.fillobj>`, which can be called by an application to
fill some unloaded fields of a specific object, for example with::
backend.fillobj(video, ['url', 'author'])
@ -443,7 +443,7 @@ uncompleted fields, and call the method associated to the type of the object.
To define what objects are supported to be filled, and what method to call, define the ``OBJECTS``
class attribute in your ``ExampleModule``::
class ExampleModule(BaseModule, CapVideo):
class ExampleModule(Module, CapVideo):
# ...
OBJECTS = {Video: fill_video}
@ -454,7 +454,7 @@ The prototype of the function might be::
Then, the function might, for each requested fields, fetch the right data and fill the object. For example::
class ExampleModule(BaseModule, CapVideo):
class ExampleModule(Module, CapVideo):
# ...
def fill_video(self, video, fields):
@ -477,7 +477,7 @@ The application can provide a storage to let your backend store data. So, you ca
STORAGE = {'seen': {}}
To store and read data in your storage space, use the ``storage`` attribute of your :class:`BaseModule <weboob.tools.backend.BaseModule>`
To store and read data in your storage space, use the ``storage`` attribute of your :class:`Module <weboob.tools.backend.Module>`
object.
It implements the methods of :class:`BackendStorage <weboob.tools.backend.BackendStorage>`.

View file

@ -18,7 +18,7 @@
# along with weboob. If not, see <http://www.gnu.org/licenses/>.
from weboob.capabilities.recipe import CapRecipe, Recipe
from weboob.tools.backend import BaseModule
from weboob.tools.backend import Module
from .browser import SevenFiftyGramsBrowser
@ -30,7 +30,7 @@ def strip_accents(s):
__all__ = ['SevenFiftyGramsModule']
class SevenFiftyGramsModule(BaseModule, CapRecipe):
class SevenFiftyGramsModule(Module, CapRecipe):
NAME = '750g'
MAINTAINER = u'Julien Veyssier'
EMAIL = 'julien.veyssier@aiur.fr'

View file

@ -18,7 +18,7 @@
# along with weboob. If not, see <http://www.gnu.org/licenses/>.
from weboob.tools.backend import BaseModule, BackendConfig
from weboob.tools.backend import Module, BackendConfig
from weboob.tools.ordereddict import OrderedDict
from weboob.tools.value import Value
from weboob.capabilities.job import CapJob
@ -28,7 +28,7 @@ from .job import AdeccoJobAdvert
__all__ = ['AdeccoModule']
class AdeccoModule(BaseModule, CapJob):
class AdeccoModule(Module, CapJob):
NAME = 'adecco'
DESCRIPTION = u'adecco website'
MAINTAINER = u'Bezleputh'

View file

@ -18,7 +18,7 @@
# along with weboob. If not, see <http://www.gnu.org/licenses/>.
from weboob.tools.backend import BaseModule, BackendConfig
from weboob.tools.backend import Module, BackendConfig
from weboob.capabilities.calendar import CapCalendarEvent, CATEGORIES
from weboob.tools.ordereddict import OrderedDict
from weboob.tools.value import Value
@ -29,7 +29,7 @@ from .browser import AgendadulibreBrowser
__all__ = ['AgendadulibreModule']
class AgendadulibreModule(BaseModule, CapCalendarEvent):
class AgendadulibreModule(Module, CapCalendarEvent):
NAME = 'agendadulibre'
DESCRIPTION = u'agendadulibre website'
MAINTAINER = u'Bezleputh'

View file

@ -18,7 +18,7 @@
# along with weboob. If not, see <http://www.gnu.org/licenses/>.
from weboob.capabilities.cinema import CapCinema, Person, Movie
from weboob.tools.backend import BaseModule
from weboob.tools.backend import Module
from .browser import AllocineBrowser
@ -27,7 +27,7 @@ from urllib import quote_plus
__all__ = ['AllocineModule']
class AllocineModule(BaseModule, CapCinema):
class AllocineModule(Module, CapCinema):
NAME = 'allocine'
MAINTAINER = u'Julien Veyssier'
EMAIL = 'julien.veyssier@aiur.fr'

View file

@ -20,7 +20,7 @@
from weboob.capabilities.bank import CapBank, AccountNotFound
from weboob.tools.backend import BaseModule, BackendConfig
from weboob.tools.backend import Module, BackendConfig
from weboob.tools.value import ValueBackendPassword
from .browser import AlloRestoBrowser
@ -29,7 +29,7 @@ from .browser import AlloRestoBrowser
__all__ = ['AlloRestoModule']
class AlloRestoModule(BaseModule, CapBank):
class AlloRestoModule(Module, CapBank):
NAME = 'alloresto'
MAINTAINER = u'Romain Bignon'
EMAIL = 'romain@weboob.org'

View file

@ -18,7 +18,7 @@
# along with weboob. If not, see <http://www.gnu.org/licenses/>.
from weboob.capabilities.recipe import CapRecipe, Recipe
from weboob.tools.backend import BaseModule
from weboob.tools.backend import Module
from .browser import AllrecipesBrowser
@ -27,7 +27,7 @@ from urllib import quote_plus
__all__ = ['AllrecipesModule']
class AllrecipesModule(BaseModule, CapRecipe):
class AllrecipesModule(Module, CapRecipe):
NAME = 'allrecipes'
MAINTAINER = u'Julien Veyssier'
EMAIL = 'julien.veyssier@aiur.fr'

View file

@ -19,14 +19,14 @@
import urllib
from weboob.capabilities.bill import CapBill, SubscriptionNotFound, BillNotFound, Subscription, Bill
from weboob.tools.backend import BaseModule, BackendConfig
from weboob.tools.backend import Module, BackendConfig
from weboob.tools.value import ValueBackendPassword
from .browser import AmeliBrowser
__all__ = ['AmeliModule']
class AmeliModule(BaseModule, CapBill):
class AmeliModule(Module, CapBill):
NAME = 'ameli'
DESCRIPTION = u'Ameli website: French Health Insurance'
MAINTAINER = u'Christophe Lampin'

View file

@ -19,14 +19,14 @@
import urllib
from weboob.capabilities.bill import CapBill, SubscriptionNotFound, BillNotFound, Subscription, Bill
from weboob.tools.backend import BaseModule, BackendConfig
from weboob.tools.backend import Module, BackendConfig
from weboob.tools.value import ValueBackendPassword
from .browser import AmeliProBrowser
__all__ = ['AmeliProModule']
class AmeliProModule(BaseModule, CapBill):
class AmeliProModule(Module, CapBill):
NAME = 'amelipro'
DESCRIPTION = u'Ameli website: French Health Insurance for Professionals'
MAINTAINER = u'Christophe Lampin'

View file

@ -20,7 +20,7 @@
from weboob.capabilities.bank import CapBank, AccountNotFound
from weboob.tools.backend import BaseModule, BackendConfig
from weboob.tools.backend import Module, BackendConfig
from weboob.tools.value import ValueBackendPassword
from .browser import AmericanExpressBrowser
@ -29,7 +29,7 @@ from .browser import AmericanExpressBrowser
__all__ = ['AmericanExpressModule']
class AmericanExpressModule(BaseModule, CapBank):
class AmericanExpressModule(Module, CapBank):
NAME = 'americanexpress'
MAINTAINER = u'Romain Bignon'
EMAIL = 'romain@weboob.org'

View file

@ -18,7 +18,7 @@
# along with weboob. If not, see <http://www.gnu.org/licenses/>.
from weboob.tools.backend import BaseModule, BackendConfig
from weboob.tools.backend import Module, BackendConfig
from weboob.capabilities.job import CapJob
from weboob.tools.ordereddict import OrderedDict
from weboob.tools.value import Value
@ -28,7 +28,7 @@ from .job import ApecJobAdvert
__all__ = ['ApecModule']
class ApecModule(BaseModule, CapJob):
class ApecModule(Module, CapJob):
NAME = 'apec'
DESCRIPTION = u'apec website'
MAINTAINER = u'Bezleputh'

View file

@ -18,7 +18,7 @@
# along with weboob. If not, see <http://www.gnu.org/licenses/>.
from weboob.capabilities.bank import CapBank
from weboob.tools.backend import BaseModule, BackendConfig
from weboob.tools.backend import Module, BackendConfig
from weboob.tools.value import ValueBackendPassword
from .browser import ApivieBrowser
@ -27,7 +27,7 @@ from .browser import ApivieBrowser
__all__ = ['ApivieModule']
class ApivieModule(BaseModule, CapBank):
class ApivieModule(Module, CapBank):
NAME = 'apivie'
DESCRIPTION = u'Apivie'
MAINTAINER = u'Romain Bignon'

View file

@ -20,7 +20,7 @@
from weboob.capabilities.video import CapVideo, BaseVideo
from weboob.capabilities.collection import CapCollection, CollectionNotFound
from weboob.tools.backend import BaseModule, BackendConfig
from weboob.tools.backend import Module, BackendConfig
from weboob.tools.value import ValueBackendPassword
from .browser import ArretSurImagesBrowser
@ -29,7 +29,7 @@ from .video import ArretSurImagesVideo
__all__ = ['ArretSurImagesModule']
class ArretSurImagesModule(BaseModule, CapVideo, CapCollection):
class ArretSurImagesModule(Module, CapVideo, CapCollection):
NAME = 'arretsurimages'
DESCRIPTION = u'arretsurimages website'
MAINTAINER = u'franek'

View file

@ -22,7 +22,7 @@ import re
from weboob.capabilities.video import CapVideo, BaseVideo
from weboob.capabilities.collection import CapCollection, CollectionNotFound, Collection
from weboob.tools.backend import BaseModule, BackendConfig
from weboob.tools.backend import Module, BackendConfig
from weboob.tools.value import Value
from .browser import ArteBrowser
@ -32,7 +32,7 @@ from .video import ArteVideo, ArteLiveVideo
__all__ = ['ArteModule']
class ArteModule(BaseModule, CapVideo, CapCollection):
class ArteModule(Module, CapVideo, CapCollection):
NAME = 'arte'
MAINTAINER = u'Bezleputh'
EMAIL = 'carton_ben@yahoo.fr'

View file

@ -18,7 +18,7 @@
# along with weboob. If not, see <http://www.gnu.org/licenses/>.
from weboob.capabilities.subtitle import CapSubtitle, LanguageNotSupported
from weboob.tools.backend import BaseModule
from weboob.tools.backend import Module
from .browser import AttilasubBrowser
@ -27,7 +27,7 @@ from urllib import quote_plus
__all__ = ['AttilasubModule']
class AttilasubModule(BaseModule, CapSubtitle):
class AttilasubModule(Module, CapSubtitle):
NAME = 'attilasub'
MAINTAINER = u'Julien Veyssier'
EMAIL = 'julien.veyssier@aiur.fr'

View file

@ -22,7 +22,7 @@ from weboob.capabilities.radio import CapRadio, Radio
from weboob.capabilities.audiostream import BaseAudioStream
from weboob.tools.capabilities.streaminfo import StreamInfo
from weboob.capabilities.collection import CapCollection, Collection
from weboob.tools.backend import BaseModule, BackendConfig
from weboob.tools.backend import Module, BackendConfig
from weboob.tools.value import Value
from weboob.tools.browser import StandardBrowser
import time
@ -38,7 +38,7 @@ __all__ = ['AudioAddictModule']
# option to another player in the ~/.config/weboob/radioob config file:
# [ROOT]
# media_player = your_non_mplayer_player
class AudioAddictModule(BaseModule, CapRadio, CapCollection):
class AudioAddictModule(Module, CapRadio, CapCollection):
NAME = 'audioaddict'
MAINTAINER = u'Pierre Mazière'
EMAIL = 'pierre.maziere@gmx.com'

View file

@ -33,7 +33,7 @@ from weboob.capabilities.messages import CapMessages, CapMessagesPost, Message,
from weboob.capabilities.dating import CapDating, OptimizationNotFound, Event
from weboob.capabilities.contact import CapContact, ContactPhoto, Query, QueryError
from weboob.capabilities.account import CapAccount, StatusField
from weboob.tools.backend import BaseModule, BackendConfig
from weboob.tools.backend import Module, BackendConfig
from weboob.tools.browser import BrowserUnavailable, BrowserHTTPNotFound
from weboob.tools.value import Value, ValuesDict, ValueBool, ValueBackendPassword
from weboob.tools.log import getLogger
@ -57,7 +57,7 @@ def parse_dt(s):
return local2utc(d)
class AuMModule(BaseModule, CapMessages, CapMessagesPost, CapDating, CapChat, CapContact, CapAccount):
class AuMModule(Module, CapMessages, CapMessagesPost, CapDating, CapChat, CapContact, CapAccount):
NAME = 'aum'
MAINTAINER = u'Romain Bignon'
EMAIL = 'romain@weboob.org'
@ -79,7 +79,7 @@ class AuMModule(BaseModule, CapMessages, CapMessagesPost, CapDating, CapChat, Ca
MAGIC_ID_BASKET = 1
def __init__(self, *args, **kwargs):
BaseModule.__init__(self, *args, **kwargs)
Module.__init__(self, *args, **kwargs)
if self.config['antispam'].get():
self.antispam = AntiSpam()
else:

View file

@ -19,7 +19,7 @@
from weboob.capabilities.bank import CapBank, AccountNotFound
from weboob.tools.backend import BaseModule, BackendConfig
from weboob.tools.backend import Module, BackendConfig
from weboob.tools.value import ValueBackendPassword
from .browser import AXABanque
@ -28,7 +28,7 @@ from .browser import AXABanque
__all__ = ['AXABanqueModule']
class AXABanqueModule(BaseModule, CapBank):
class AXABanqueModule(Module, CapBank):
NAME = 'axabanque'
MAINTAINER = u'Romain Bignon'
EMAIL = 'romain@weboob.org'

View file

@ -20,7 +20,7 @@
from weboob.capabilities.base import find_object
from weboob.capabilities.bank import CapBank, AccountNotFound
from weboob.tools.backend import BaseModule, BackendConfig
from weboob.tools.backend import Module, BackendConfig
from weboob.tools.value import ValueBackendPassword
from .browser import BanqueAccordBrowser
@ -29,7 +29,7 @@ from .browser import BanqueAccordBrowser
__all__ = ['BanqueAccordModule']
class BanqueAccordModule(BaseModule, CapBank):
class BanqueAccordModule(Module, CapBank):
NAME = 'banqueaccord'
DESCRIPTION = u'Banque Accord'
MAINTAINER = u'Romain Bignon'

View file

@ -19,7 +19,7 @@
from weboob.capabilities.bank import CapBank, AccountNotFound
from weboob.tools.backend import BaseModule, BackendConfig
from weboob.tools.backend import Module, BackendConfig
from weboob.tools.ordereddict import OrderedDict
from weboob.tools.value import ValueBackendPassword, Value
@ -29,7 +29,7 @@ from .browser import BanquePopulaire
__all__ = ['BanquePopulaireModule']
class BanquePopulaireModule(BaseModule, CapBank):
class BanquePopulaireModule(Module, CapBank):
NAME = 'banquepopulaire'
MAINTAINER = u'Romain Bignon'
EMAIL = 'romain@weboob.org'

Some files were not shown because too many files have changed in this diff Show more