diff options
| author | 2015-04-20 23:07:42 +0200 | |
|---|---|---|
| committer | 2015-04-20 23:07:42 +0200 | |
| commit | 2475ddb7654d0d6fb1be18082b5c8c480befdbb3 (patch) | |
| tree | b82a8b5fc0a309f69733b0a004284f4ef45833d8 /pyload/plugin | |
| parent | Spare code cosmetics (9) (diff) | |
| parent | added check of classname == filename (diff) | |
| download | pyload-2475ddb7654d0d6fb1be18082b5c8c480befdbb3.tar.xz | |
Merge branch 'pr/n10_ardi69' into 0.4.10
Conflicts:
	pyload/plugin/hoster/FileserveCom.py
Diffstat (limited to 'pyload/plugin')
24 files changed, 92 insertions, 83 deletions
| diff --git a/pyload/plugin/Account.py b/pyload/plugin/Account.py index fda76a78f..bb8f7d59a 100644 --- a/pyload/plugin/Account.py +++ b/pyload/plugin/Account.py @@ -196,7 +196,7 @@ class Account(Base):                  "maxtraffic" : None,                  "premium"    : None,                  "timestamp"  : 0,  #: time this info was retrieved -                "type"       : self.__class__.__name__} +                "type"       : self.getClassName()}      def getAllAccounts(self, force=False): @@ -209,7 +209,7 @@ class Account(Base):          if not user:              return None -        req = self.core.requestFactory.getRequest(self.__class__.__name__, user) +        req = self.core.requestFactory.getRequest(self.getClassName(), user)          return req @@ -219,7 +219,7 @@ class Account(Base):          if not user:              return None -        cj = self.core.requestFactory.getCookieJar(self.__class__.__name__, user) +        cj = self.core.requestFactory.getCookieJar(self.getClassName(), user)          return cj diff --git a/pyload/plugin/Addon.py b/pyload/plugin/Addon.py index e8cc03de2..21a86ab05 100644 --- a/pyload/plugin/Addon.py +++ b/pyload/plugin/Addon.py @@ -16,7 +16,7 @@ class Expose(object):  def threaded(fn): -    def run(*args,**kwargs): +    def run(*args, **kwargs):          addonManager.startThread(fn, *args, **kwargs)      return run @@ -69,6 +69,8 @@ class Addon(Base):              self.event_map = None          if self.event_list: +            self.logWarning(_("Plugin used deprecated 'event_list', use 'event_map' instead")) +              for f in self.event_list:                  self.manager.addEvent(f, getattr(self, f)) @@ -98,7 +100,7 @@ class Addon(Base):      def __repr__(self): -        return "<Addon %s>" % self.__class__.__name__ +        return "<Addon %s>" % self.getClassName()      def setup(self): @@ -109,6 +111,7 @@ class Addon(Base):      def deactivate(self):          """ called when addon was deactivated """          if has_method(self.__class__, "unload"): +            self.logWarning(_("Deprecated method 'unload()', use deactivate() instead"))              self.unload() @@ -127,6 +130,7 @@ class Addon(Base):      def activate(self):          """ called when addon was activated """          if has_method(self.__class__, "coreReady"): +            self.logWarning(_("Deprecated method 'coreReady()', use activate() instead"))              self.coreReady() diff --git a/pyload/plugin/Extractor.py b/pyload/plugin/Extractor.py index c0948c3dd..e50ab8818 100644 --- a/pyload/plugin/Extractor.py +++ b/pyload/plugin/Extractor.py @@ -27,7 +27,7 @@ class Extractor:      __description = """Base extractor plugin"""      __license     = "GPLv3"      __authors     = [("Walter Purcaro", "vuolter@gmail.com"), -                     ("Immenz"        , "immenz@gmx.net"   )] +                     ("Immenz"        , "immenz@gmx.net")]      EXTENSIONS = [] @@ -36,6 +36,11 @@ class Extractor:      @classmethod +    def NAME(self): +        return getattr(self, "_" + self.__name__ + "__name") + + +    @classmethod      def isArchive(cls, filename):          name = os.path.basename(filename).lower()          return any(name.endswith(ext) for ext in cls.EXTENSIONS) diff --git a/pyload/plugin/OCR.py b/pyload/plugin/OCR.py index df5eeea1f..126283f01 100644 --- a/pyload/plugin/OCR.py +++ b/pyload/plugin/OCR.py @@ -60,11 +60,11 @@ class OCR(Base):      def run_tesser(self, subset=False, digits=True, lowercase=True, uppercase=True, pagesegmode=None):          # tmpTif = tempfile.NamedTemporaryFile(suffix=".tif")          try: -            tmpTif = open(fs_join("tmp", "tmpTif_%s.tif" % self.__class__.__name__), "wb") +            tmpTif = open(fs_join("tmp", "tmpTif_%s.tif" % self.getClassName()), "wb")              tmpTif.close()              # tmpTxt = tempfile.NamedTemporaryFile(suffix=".txt") -            tmpTxt = open(fs_join("tmp", "tmpTxt_%s.txt" % self.__class__.__name__), "wb") +            tmpTxt = open(fs_join("tmp", "tmpTxt_%s.txt" % self.getClassName()), "wb")              tmpTxt.close()          except IOError, e: @@ -86,7 +86,7 @@ class OCR(Base):          if subset and (digits or lowercase or uppercase):              # tmpSub = tempfile.NamedTemporaryFile(suffix=".subset") -            with open(fs_join("tmp", "tmpSub_%s.subset" % self.__class__.__name__), "wb") as tmpSub: +            with open(fs_join("tmp", "tmpSub_%s.subset" % self.getClassName()), "wb") as tmpSub:                  tmpSub.write("tessedit_char_whitelist ")                  if digits: diff --git a/pyload/plugin/Plugin.py b/pyload/plugin/Plugin.py index 8b7e6fbc2..a14bb1e9c 100644 --- a/pyload/plugin/Plugin.py +++ b/pyload/plugin/Plugin.py @@ -66,7 +66,7 @@ class Base(object):      def _log(self, type, args):          msg = " | ".join([encode(str(a)).strip() for a in args if a])          logger = getattr(self.core.log, type) -        logger("%s: %s" % (self.__class__.__name__, msg or _("%s MARK" % type.upper()))) +        logger("%s: %s" % (self.getClassName(), msg or _("%s MARK" % type.upper())))      def logDebug(self, *args): @@ -91,7 +91,7 @@ class Base(object):      def getPluginType(self): -        return getattr(self, "_%s__type" % self.__class__.__name__) +        return getattr(self, "_%s__type" % self.getClassName())      @classmethod @@ -100,7 +100,7 @@ class Base(object):      def getPluginConfSection(self): -        return "%s_%s" % (self.__class__.__name__, getattr(self, "_%s__type" % self.__class__.__name__)) +        return "%s_%s" % (self.getClassName(), getattr(self, "_%s__type" % self.getClassName()))      #: Deprecated method @@ -160,7 +160,7 @@ class Base(object):      def delStorage(self, key):          """ Delete entry in db """ -        self.core.db.delStorage(self.__class__.__name__, key) +        self.core.db.delStorage(self.getClassName(), key)  class Plugin(Base): @@ -206,7 +206,7 @@ class Plugin(Base):          self.ocr = None          #: account handler instance, see :py:class:`Account` -        self.account = pyfile.m.core.accountManager.getAccountPlugin(self.__class__.__name__) +        self.account = pyfile.m.core.accountManager.getAccountPlugin(self.getClassName())          #: premium status          self.premium = False @@ -227,7 +227,7 @@ class Plugin(Base):              #: premium status              self.premium = self.account.isPremium(self.user)          else: -            self.req = pyfile.m.core.requestFactory.getRequest(self.__class__.__name__) +            self.req = pyfile.m.core.requestFactory.getRequest(self.getClassName())          #: associated pyfile instance, see `PyFile`          self.pyfile = pyfile @@ -258,7 +258,7 @@ class Plugin(Base):      def __call__(self): -        return self.__class__.__name__ +        return self.getClassName()      def init(self): @@ -295,7 +295,7 @@ class Plugin(Base):      def resetAccount(self):          """ dont use account and retry download """          self.account = None -        self.req = self.core.requestFactory.getRequest(self.__class__.__name__) +        self.req = self.core.requestFactory.getRequest(self.getClassName())          self.retry() @@ -469,13 +469,13 @@ class Plugin(Base):          id = ("%.2f" % time())[-6:].replace(".", "") -        with open(join("tmp", "tmpCaptcha_%s_%s.%s" % (self.__class__.__name__, id, imgtype)), "wb") as tmpCaptcha: +        with open(join("tmp", "tmpCaptcha_%s_%s.%s" % (self.getClassName(), id, imgtype)), "wb") as tmpCaptcha:              tmpCaptcha.write(img) -        has_plugin = self.__class__.__name__ in self.core.pluginManager.ocrPlugins +        has_plugin = self.getClassName() in self.core.pluginManager.ocrPlugins          if self.core.captcha: -            Ocr = self.core.pluginManager.loadClass("ocr", self.__class__.__name__) +            Ocr = self.core.pluginManager.loadClass("ocr", self.getClassName())          else:              Ocr = None @@ -553,10 +553,10 @@ class Plugin(Base):              from inspect import currentframe              frame = currentframe() -            framefile = fs_join("tmp", self.__class__.__name__, "%s_line%s.dump.html" % (frame.f_back.f_code.co_name, frame.f_back.f_lineno)) +            framefile = fs_join("tmp", self.getClassName(), "%s_line%s.dump.html" % (frame.f_back.f_code.co_name, frame.f_back.f_lineno))              try: -                if not exists(join("tmp", self.__class__.__name__)): -                    makedirs(join("tmp", self.__class__.__name__)) +                if not exists(join("tmp", self.getClassName())): +                    makedirs(join("tmp", self.getClassName()))                  with open(framefile, "wb") as f:                      del frame  #: delete the frame or it wont be cleaned diff --git a/pyload/plugin/addon/DeleteFinished.py b/pyload/plugin/addon/DeleteFinished.py index b9368a642..8fe0b1497 100644 --- a/pyload/plugin/addon/DeleteFinished.py +++ b/pyload/plugin/addon/DeleteFinished.py @@ -53,7 +53,7 @@ class DeleteFinished(Addon):      def activate(self):          self.info['sleep'] = True          # interval = self.getConfig('interval') -        # self.pluginConfigChanged(self.__class__.__name__, 'interval', interval) +        # self.pluginConfigChanged(self.getClassName(), 'interval', interval)          self.interval = max(self.MIN_CHECK_INTERVAL, self.getConfig('interval') * 60 * 60)          self.addEvent('packageFinished', self.wakeup)          self.initPeriodical() diff --git a/pyload/plugin/addon/ExtractArchive.py b/pyload/plugin/addon/ExtractArchive.py index 82938921e..b0a24446a 100644 --- a/pyload/plugin/addon/ExtractArchive.py +++ b/pyload/plugin/addon/ExtractArchive.py @@ -111,28 +111,28 @@ class ExtractArchive(Addon):      __type    = "addon"      __version = "1.41" -    __config = [("activated"      , "bool"              , "Activated"                                 , True                                                                     ), -                ("fullpath"       , "bool"              , "Extract with full paths"                   , True                                                                     ), -                ("overwrite"      , "bool"              , "Overwrite files"                           , False                                                                    ), -                ("keepbroken"     , "bool"              , "Try to extract broken archives"            , False                                                                    ), -                ("repair"         , "bool"              , "Repair broken archives (RAR required)"     , False                                                                    ), -                ("test"           , "bool"              , "Test archive before extracting"            , False                                                                    ), -                ("usepasswordfile", "bool"              , "Use password file"                         , True                                                                     ), -                ("passwordfile"   , "file"              , "Password file"                             , "archive_password.txt"                                                   ), -                ("delete"         , "bool"              , "Delete archive after extraction"           , True                                                                     ), -                ("deltotrash"     , "bool"              , "Move to trash (recycle bin) instead delete", True                                                                     ), -                ("subfolder"      , "bool"              , "Create subfolder for each package"         , False                                                                    ), -                ("destination"    , "folder"            , "Extract files to folder"                   , ""                                                                       ), +    __config = [("activated"      , "bool"              , "Activated"                                 , True), +                ("fullpath"       , "bool"              , "Extract with full paths"                   , True), +                ("overwrite"      , "bool"              , "Overwrite files"                           , False), +                ("keepbroken"     , "bool"              , "Try to extract broken archives"            , False), +                ("repair"         , "bool"              , "Repair broken archives (RAR required)"     , False), +                ("test"           , "bool"              , "Test archive before extracting"            , False), +                ("usepasswordfile", "bool"              , "Use password file"                         , True), +                ("passwordfile"   , "file"              , "Password file"                             , "archive_password.txt"), +                ("delete"         , "bool"              , "Delete archive after extraction"           , True), +                ("deltotrash"     , "bool"              , "Move to trash (recycle bin) instead delete", True), +                ("subfolder"      , "bool"              , "Create subfolder for each package"         , False), +                ("destination"    , "folder"            , "Extract files to folder"                   , ""),                  ("extensions"     , "str"               , "Extract archives ending with extension"    , "7z,bz2,bzip2,gz,gzip,lha,lzh,lzma,rar,tar,taz,tbz,tbz2,tgz,xar,xz,z,zip"), -                ("excludefiles"   , "str"               , "Don't extract the following files"         , "*.nfo,*.DS_Store,index.dat,thumb.db"                                    ), -                ("recursive"      , "bool"              , "Extract archives in archives"              , True                                                                     ), -                ("waitall"        , "bool"              , "Run after all downloads was processed"     , False                                                                    ), -                ("renice"         , "int"               , "CPU priority"                              , 0                                                                        )] +                ("excludefiles"   , "str"               , "Don't extract the following files"         , "*.nfo,*.DS_Store,index.dat,thumb.db"), +                ("recursive"      , "bool"              , "Extract archives in archives"              , True), +                ("waitall"        , "bool"              , "Run after all downloads was processed"     , False), +                ("renice"         , "int"               , "CPU priority"                              , 0)]      __description = """Extract different kind of archives"""      __license     = "GPLv3"      __authors     = [("Walter Purcaro", "vuolter@gmail.com"), -                     ("Immenz"        , "immenz@gmx.net"   )] +                     ("Immenz"        , "immenz@gmx.net")]      event_list = ["allDownloadsProcessed", "packageDeleted"] @@ -186,7 +186,7 @@ class ExtractArchive(Addon):                      traceback.print_exc()          if self.extractors: -            self.logDebug(*["Found %s %s" % (Extractor.__name__, Extractor.VERSION) for Extractor in self.extractors]) +            self.logDebug(*["Found %s %s" % (Extractor.NAME(), Extractor.VERSION) for Extractor in self.extractors])              self.extractQueued()  #: Resume unfinished extractions          else:              self.logInfo(_("No Extract plugins activated")) diff --git a/pyload/plugin/addon/RestartFailed.py b/pyload/plugin/addon/RestartFailed.py index 695ebb154..8a3a36fe1 100644 --- a/pyload/plugin/addon/RestartFailed.py +++ b/pyload/plugin/addon/RestartFailed.py @@ -38,6 +38,6 @@ class RestartFailed(Addon):      def activate(self): -        # self.pluginConfigChanged(self.__class__.__name__, "interval", self.getConfig('interval')) +        # self.pluginConfigChanged(self.getClassName(), "interval", self.getConfig('interval'))          self.interval = max(self.MIN_CHECK_INTERVAL, self.getConfig('interval') * 60)          self.initPeriodical() diff --git a/pyload/plugin/crypter/XFileSharingPro.py b/pyload/plugin/crypter/XFileSharingPro.py index c83c0c67e..b78d83262 100644 --- a/pyload/plugin/crypter/XFileSharingPro.py +++ b/pyload/plugin/crypter/XFileSharingPro.py @@ -22,13 +22,13 @@ class XFileSharingPro(XFSCrypter):      def _log(self, type, args):          msg = " | ".join(str(a).strip() for a in args if a)          logger = getattr(self.log, type) -        logger("%s: %s: %s" % (self.__class__.__name__, self.HOSTER_NAME, msg or _("%s MARK" % type.upper()))) +        logger("%s: %s: %s" % (self.getClassName(), self.HOSTER_NAME, msg or _("%s MARK" % type.upper())))      def init(self):          super(XFileSharingPro, self).init() -        self.__pattern = self.core.pluginManager.crypterPlugins[self.__class__.__name__]['pattern'] +        self.__pattern = self.core.pluginManager.crypterPlugins[self.getClassName()]['pattern']          self.HOSTER_DOMAIN = re.match(self.__pattern, self.pyfile.url).group("DOMAIN").lower()          self.HOSTER_NAME   = "".join(part.capitalize() for part in re.split(r'(\.|\d+)', self.HOSTER_DOMAIN) if part != '.') diff --git a/pyload/plugin/hook/BypassCaptcha.py b/pyload/plugin/hook/BypassCaptcha.py index 554452776..95be5f3a6 100644 --- a/pyload/plugin/hook/BypassCaptcha.py +++ b/pyload/plugin/hook/BypassCaptcha.py @@ -104,21 +104,21 @@ class BypassCaptcha(Hook):          if self.getCredits() > 0:              task.handler.append(self) -            task.data['service'] = self.__class__.__name__ +            task.data['service'] = self.getClassName()              task.setWaiting(100)              self._processCaptcha(task)          else: -            self.logInfo(_("Your %s account has not enough credits") % self.__class__.__name__) +            self.logInfo(_("Your %s account has not enough credits") % self.getClassName())      def captchaCorrect(self, task): -        if task.data['service'] == self.__class__.__name__ and "ticket" in task.data: +        if task.data['service'] == self.getClassName() and "ticket" in task.data:              self.respond(task.data['ticket'], True)      def captchaInvalid(self, task): -        if task.data['service'] == self.__class__.__name__ and "ticket" in task.data: +        if task.data['service'] == self.getClassName() and "ticket" in task.data:              self.respond(task.data['ticket'], False) diff --git a/pyload/plugin/hook/Captcha9Kw.py b/pyload/plugin/hook/Captcha9Kw.py index bbf283623..9ceab4b2b 100644 --- a/pyload/plugin/hook/Captcha9Kw.py +++ b/pyload/plugin/hook/Captcha9Kw.py @@ -13,27 +13,27 @@ from pyload.network.RequestFactory import getURL  from pyload.plugin.Hook import Hook, threaded -class Captcha9kw(Hook): +class Captcha9Kw(Hook):      __name    = "Captcha9Kw"      __type    = "hook"      __version = "0.28" -    __config = [("ssl"           , "bool"    , "Use HTTPS"                                                                       , True                                                               ), -                ("force"         , "bool"    , "Force captcha resolving even if client is connected"                             , True                                                               ), -                ("confirm"       , "bool"    , "Confirm Captcha (cost +6 credits)"                                               , False                                                              ), -                ("captchaperhour", "int"     , "Captcha per hour"                                                                , "9999"                                                             ), -                ("captchapermin" , "int"     , "Captcha per minute"                                                              , "9999"                                                             ), -                ("prio"          , "int"     , "Priority (max 10)(cost +0 -> +10 credits)"                                       , "0"                                                                ), -                ("queue"         , "int"     , "Max. Queue (max 999)"                                                            , "50"                                                               ), +    __config = [("ssl"           , "bool"    , "Use HTTPS"                                                                       , True), +                ("force"         , "bool"    , "Force captcha resolving even if client is connected"                             , True), +                ("confirm"       , "bool"    , "Confirm Captcha (cost +6 credits)"                                               , False), +                ("captchaperhour", "int"     , "Captcha per hour"                                                                , "9999"), +                ("captchapermin" , "int"     , "Captcha per minute"                                                              , "9999"), +                ("prio"          , "int"     , "Priority (max 10)(cost +0 -> +10 credits)"                                       , "0"), +                ("queue"         , "int"     , "Max. Queue (max 999)"                                                            , "50"),                  ("hoster_options", "string"  , "Hoster options (format: pluginname:prio=1:selfsolfe=1:confirm=1:timeout=900|...)", "ShareonlineBiz:prio=0:timeout=999 | UploadedTo:prio=0:timeout=999"), -                ("selfsolve"     , "bool"    , "Selfsolve (manually solve your captcha in your 9kw client if active)"            , "0"                                                                ), -                ("passkey"       , "password", "API key"                                                                         , ""                                                                 ), -                ("timeout"       , "int"     , "Timeout in seconds (min 60, max 3999)"                                           , "900"                                                              )] +                ("selfsolve"     , "bool"    , "Selfsolve (manually solve your captcha in your 9kw client if active)"            , "0"), +                ("passkey"       , "password", "API key"                                                                         , ""), +                ("timeout"       , "int"     , "Timeout in seconds (min 60, max 3999)"                                           , "900")]      __description = """Send captchas to 9kw.eu"""      __license     = "GPLv3" -    __authors     = [("RaNaN"         , "RaNaN@pyload.org" ), -                       ("Walter Purcaro", "vuolter@gmail.com")] +    __authors     = [("RaNaN"         , "RaNaN@pyload.org"), +                     ("Walter Purcaro", "vuolter@gmail.com")]      API_URL = "http://www.9kw.eu/index.cgi" diff --git a/pyload/plugin/hook/CaptchaBrotherhood.py b/pyload/plugin/hook/CaptchaBrotherhood.py index 15338b0af..97e1ff25f 100644 --- a/pyload/plugin/hook/CaptchaBrotherhood.py +++ b/pyload/plugin/hook/CaptchaBrotherhood.py @@ -147,7 +147,7 @@ class CaptchaBrotherhood(Hook):          if self.getCredits() > 10:              task.handler.append(self) -            task.data['service'] = self.__class__.__name__ +            task.data['service'] = self.getClassName()              task.setWaiting(100)              self._processCaptcha(task)          else: @@ -155,7 +155,7 @@ class CaptchaBrotherhood(Hook):      def captchaInvalid(self, task): -        if task.data['service'] == self.__class__.__name__ and "ticket" in task.data: +        if task.data['service'] == self.getClassName() and "ticket" in task.data:              res = self.api_response("complainCaptcha", task.data['ticket']) diff --git a/pyload/plugin/hook/DeathByCaptcha.py b/pyload/plugin/hook/DeathByCaptcha.py index b28848422..71d1ddb0a 100644 --- a/pyload/plugin/hook/DeathByCaptcha.py +++ b/pyload/plugin/hook/DeathByCaptcha.py @@ -188,13 +188,13 @@ class DeathByCaptcha(Hook):          if balance > rate:              task.handler.append(self) -            task.data['service'] = self.__class__.__name__ +            task.data['service'] = self.getClassName()              task.setWaiting(180)              self._processCaptcha(task)      def captchaInvalid(self, task): -        if task.data['service'] == self.__class__.__name__ and "ticket" in task.data: +        if task.data['service'] == self.getClassName() and "ticket" in task.data:              try:                  res = self.api_response("captcha/%d/report" % task.data['ticket'], True) diff --git a/pyload/plugin/hook/ImageTyperz.py b/pyload/plugin/hook/ImageTyperz.py index 6c3c5c84b..c134cdaeb 100644 --- a/pyload/plugin/hook/ImageTyperz.py +++ b/pyload/plugin/hook/ImageTyperz.py @@ -118,16 +118,16 @@ class ImageTyperz(Hook):          if self.getCredits() > 0:              task.handler.append(self) -            task.data['service'] = self.__class__.__name__ +            task.data['service'] = self.getClassName()              task.setWaiting(100)              self._processCaptcha(task)          else: -            self.logInfo(_("Your %s account has not enough credits") % self.__class__.__name__) +            self.logInfo(_("Your %s account has not enough credits") % self.getClassName())      def captchaInvalid(self, task): -        if task.data['service'] == self.__class__.__name__ and "ticket" in task.data: +        if task.data['service'] == self.getClassName() and "ticket" in task.data:              res = getURL(self.RESPOND_URL,                           post={'action': "SETBADIMAGE",                                 'username': self.getConfig('username'), diff --git a/pyload/plugin/hoster/FileserveCom.py b/pyload/plugin/hoster/FileserveCom.py index 4530f8ff8..1d4179e5c 100644 --- a/pyload/plugin/hoster/FileserveCom.py +++ b/pyload/plugin/hoster/FileserveCom.py @@ -144,7 +144,7 @@ class FileserveCom(Hoster):          if "fail" in res:              self.fail(_("Failed getting wait time")) -        if self.__class__.__name__ == "FilejungleCom": +        if self.getClassName() == "FilejungleCom":              m = re.search(r'"waitTime":(\d+)', res)              if m is None:                  self.fail(_("Cannot get wait time")) @@ -184,7 +184,7 @@ class FileserveCom(Hoster):      def handlePremium(self, pyfile):          premium_url = None -        if self.__class__.__name__ == "FileserveCom": +        if self.getClassName() == "FileserveCom":              # try api download              res = self.load("http://app.fileserve.com/api/download/premium/",                              post={"username": self.user, diff --git a/pyload/plugin/hoster/NoPremiumPl.py b/pyload/plugin/hoster/NoPremiumPl.py index 8921afe1c..be1e4794e 100644 --- a/pyload/plugin/hoster/NoPremiumPl.py +++ b/pyload/plugin/hoster/NoPremiumPl.py @@ -79,7 +79,7 @@ class NoPremiumPl(MultiHoster):          if "errno" in parsed.keys():              if parsed['errno'] in self.ERROR_CODES:                  # error code in known -                self.fail(self.ERROR_CODES[parsed['errno']] % self.__class__.__name__) +                self.fail(self.ERROR_CODES[parsed['errno']] % self.getClassName())              else:                  # error code isn't yet added to plugin                  self.fail( diff --git a/pyload/plugin/hoster/RapideoPl.py b/pyload/plugin/hoster/RapideoPl.py index e19ccc45b..35d4da0ad 100644 --- a/pyload/plugin/hoster/RapideoPl.py +++ b/pyload/plugin/hoster/RapideoPl.py @@ -79,7 +79,7 @@ class RapideoPl(MultiHoster):          if "errno" in parsed.keys():              if parsed['errno'] in self.ERROR_CODES:                  # error code in known -                self.fail(self.ERROR_CODES[parsed['errno']] % self.__class__.__name__) +                self.fail(self.ERROR_CODES[parsed['errno']] % self.getClassName())              else:                  # error code isn't yet added to plugin                  self.fail( diff --git a/pyload/plugin/hoster/XFileSharingPro.py b/pyload/plugin/hoster/XFileSharingPro.py index 8274a818a..140a69a72 100644 --- a/pyload/plugin/hoster/XFileSharingPro.py +++ b/pyload/plugin/hoster/XFileSharingPro.py @@ -23,13 +23,13 @@ class XFileSharingPro(XFSHoster):      def _log(self, type, args):          msg = " | ".join(str(a).strip() for a in args if a)          logger = getattr(self.log, type) -        logger("%s: %s: %s" % (self.__class__.__name__, self.HOSTER_NAME, msg or _("%s MARK" % type.upper()))) +        logger("%s: %s: %s" % (self.getClassName(), self.HOSTER_NAME, msg or _("%s MARK" % type.upper())))      def init(self):          super(XFileSharingPro, self).init() -        self.__pattern = self.core.pluginManager.hosterPlugins[self.__class__.__name__]['pattern'] +        self.__pattern = self.core.pluginManager.hosterPlugins[self.getClassName()]['pattern']          self.HOSTER_DOMAIN = re.match(self.__pattern, self.pyfile.url).group("DOMAIN").lower()          self.HOSTER_NAME   = "".join(part.capitalize() for part in re.split(r'(\.|\d+)', self.HOSTER_DOMAIN) if part != '.') diff --git a/pyload/plugin/hoster/Xdcc.py b/pyload/plugin/hoster/Xdcc.py index e1a4c72b2..6943f495e 100644 --- a/pyload/plugin/hoster/Xdcc.py +++ b/pyload/plugin/hoster/Xdcc.py @@ -36,7 +36,7 @@ class Xdcc(Hoster):      def process(self, pyfile):          # change request type -        self.req = pyfile.m.core.requestFactory.getRequest(self.__class__.__name__, type="XDCC") +        self.req = pyfile.m.core.requestFactory.getRequest(self.getClassName(), type="XDCC")          self.pyfile = pyfile          for _i in xrange(0, 3): diff --git a/pyload/plugin/internal/MultiHook.py b/pyload/plugin/internal/MultiHook.py index 8140e2431..dc97ffea9 100644 --- a/pyload/plugin/internal/MultiHook.py +++ b/pyload/plugin/internal/MultiHook.py @@ -69,7 +69,7 @@ class MultiHook(Hook):      def initPlugin(self): -        self.pluginname         = self.__class__.__name__ +        self.pluginname         = self.getClassName()          plugin, self.plugintype = self.core.pluginManager.findPlugin(("hoster", "crypter", "container"), self.pluginname)          if plugin: diff --git a/pyload/plugin/internal/MultiHoster.py b/pyload/plugin/internal/MultiHoster.py index a7e74b2ff..8dbcf4f30 100644 --- a/pyload/plugin/internal/MultiHoster.py +++ b/pyload/plugin/internal/MultiHoster.py @@ -86,8 +86,8 @@ class MultiHoster(SimpleHoster):                  self.retryFree()              elif self.getConfig('revertfailed', True) \ -                 and "new_module" in self.core.pluginManager.hosterPlugins[self.__class__.__name__]: -                hdict = self.core.pluginManager.hosterPlugins[self.__class__.__name__] +                 and "new_module" in self.core.pluginManager.hosterPlugins[self.getClassName()]: +                hdict = self.core.pluginManager.hosterPlugins[self.getClassName()]                  tmp_module = hdict['new_module']                  tmp_name   = hdict['new_name'] diff --git a/pyload/plugin/internal/SimpleHoster.py b/pyload/plugin/internal/SimpleHoster.py index 02231decc..75970d814 100644 --- a/pyload/plugin/internal/SimpleHoster.py +++ b/pyload/plugin/internal/SimpleHoster.py @@ -434,7 +434,7 @@ class SimpleHoster(Hoster):              set_cookies(self.req.cj, self.COOKIES)          if (self.MULTI_HOSTER -            and (self.__pattern != self.core.pluginManager.hosterPlugins[self.__class__.__name__]['pattern'] +            and (self.__pattern != self.core.pluginManager.hosterPlugins[self.getClassName()]['pattern']                   or re.match(self.__pattern, self.pyfile.url) is None)):              self.multihost = True              return @@ -746,7 +746,7 @@ class SimpleHoster(Hoster):              return          self.premium = False          self.account = None -        self.req     = self.core.requestFactory.getRequest(self.__class__.__name__) +        self.req     = self.core.requestFactory.getRequest(self.getClassName())          self.retries = 0          raise Retry(_("Fallback to free download")) diff --git a/pyload/plugin/internal/XFSCrypter.py b/pyload/plugin/internal/XFSCrypter.py index 6a3f09e55..6c3a97405 100644 --- a/pyload/plugin/internal/XFSCrypter.py +++ b/pyload/plugin/internal/XFSCrypter.py @@ -31,7 +31,7 @@ class XFSCrypter(SimpleCrypter):              if self.account:                  account      = self.account              else: -                account_name = (self.__class__.__name__ + ".py").replace("Folder.py", "").replace(".py", "") +                account_name = (self.getClassName() + ".py").replace("Folder.py", "").replace(".py", "")                  account      = self.pyfile.m.core.accountManager.getAccountPlugin(account_name)              if account and hasattr(account, "HOSTER_DOMAIN") and account.HOSTER_DOMAIN: diff --git a/pyload/plugin/internal/XFSHoster.py b/pyload/plugin/internal/XFSHoster.py index 7b8149bc3..ff8077f81 100644 --- a/pyload/plugin/internal/XFSHoster.py +++ b/pyload/plugin/internal/XFSHoster.py @@ -65,7 +65,7 @@ class XFSHoster(SimpleHoster):              if self.account:                  account = self.account              else: -                account = self.pyfile.m.core.accountManager.getAccountPlugin(self.__class__.__name__) +                account = self.pyfile.m.core.accountManager.getAccountPlugin(self.getClassName())              if account and hasattr(account, "HOSTER_DOMAIN") and account.HOSTER_DOMAIN:                  self.HOSTER_DOMAIN = account.HOSTER_DOMAIN | 
