Example #1
0
 def clear(self, program=None):
     super(TvdbFanartProvider, self).clear(program)
     if program is None:
         shutil.rmtree(self.tvdbCacheDir, ignore_errors=True)
         requireDir(self.tvdbCacheDir)
     else:
         pass  # TODO: dont know if we can invalidate individual programs
Example #2
0
 def clear(self, program=None):
     if program is None:
         with self.lock:        
             shutil.rmtree(self.tvdbCacheDir, ignore_errors=True)
             requireDir(self.tvdbCacheDir)
     else:
         log.warn('TVDB: cannot invalidate individual program')
Example #3
0
 def clear(self, program=None):
     super(TvdbFanartProvider, self).clear(program)
     if program is None:        
         shutil.rmtree(self.tvdbCacheDir, ignore_errors=True)
         requireDir(self.tvdbCacheDir)
     else:
         pass # TODO: dont know if we can invalidate individual programs
Example #4
0
 def bootstrapPlatform(self):
     self.stage = 'Initializing Platform'
     import mythbox.platform
     self.platform = mythbox.platform.getPlatform()
     self.platform.addLibsToSysPath()
     sys.setcheckinterval(0)
     cacheDir = self.platform.getCacheDir()
     from mythbox.util import requireDir
     requireDir(cacheDir)
     
     self.log.info('MythBox %s Initialized' % self.platform.addonVersion())
Example #5
0
    def bootstrapPlatform(self):
        self.stage = 'Initializing Platform'
        import mythbox.platform
        self.platform = mythbox.platform.getPlatform()
        self.platform.addLibsToSysPath()
        sys.setcheckinterval(0)
        cacheDir = self.platform.getCacheDir()
        from mythbox.util import requireDir
        requireDir(cacheDir)

        self.log.info('MythBox %s Initialized' % self.platform.addonVersion())
Example #6
0
 def __init__(self, rootDir, resolver):
     """
     @type rootDir: str
     @param rootDir: root directory of the cache. will be created if it does not exist.
     @type resolver: FileResolver
     @param resolver: Pluggable component to retrieve (resolve) files.
     """
     self.rootDir = rootDir
     self.resolver = resolver
     self.locksByResource = SynchronizedDict()
     
     requireDir(rootDir)
     if not os.path.isdir(rootDir):
         raise Exception, 'File cache root dir already exists as a file: %s' % rootDir
    def save(self):
        settingsDir = self.platform.getScriptDataDir()
        requireDir(settingsDir)

        dom = minidom.parseString('<mythtv></mythtv>'.encode('utf-8'))
        for key in self.d.keys():
            e = dom.createElement(key)
            n = dom.createTextNode(self.d[key].strip())
            e.appendChild(n)
            dom.childNodes[0].appendChild(e)
        slog.debug('Saving settings to %s' % self.settingsPath)
        fh = file(self.settingsPath, 'w')
        fh.write(dom.toxml(encoding='utf-8'))
        fh.close()
Example #8
0
    def save(self):
        settingsDir = self.platform.getScriptDataDir()
        requireDir(settingsDir)

        dom = minidom.parseString('<mythtv></mythtv>'.encode('utf-8'))
        for key in self.d.keys():
            e = dom.createElement(key)
            n = dom.createTextNode(self.d[key].strip())
            e.appendChild(n)
            dom.childNodes[0].appendChild(e)
        slog.debug('Saving settings to %s' % self.settingsPath)
        fh = file(self.settingsPath, 'w')
        fh.write(dom.toxml(encoding='utf-8'))
        fh.close()
Example #9
0
    def __init__(self, rootDir, resolver):
        """
        @type rootDir: str
        @param rootDir: root directory of the cache. will be created if it does not exist.
        @type resolver: FileResolver
        @param resolver: Pluggable component to retrieve (resolve) files.
        """
        self.rootDir = rootDir
        self.resolver = resolver
        self.locksByResource = SynchronizedDict()

        requireDir(rootDir)
        if not os.path.isdir(rootDir):
            raise Exception, 'File cache root dir already exists as a file: %s' % rootDir
Example #10
0
 def clear(self, program=None):
     if program is None:
         self.memcache.clear()
         shutil.rmtree(self.cacheDir, ignore_errors=True)
         requireDir(self.cacheDir)         
     else:
         # purge from memory
         if program.title() in self.memcache:
             del self.memcache[program.title()]
         
         # purge from disk
         fname = os.path.join(self.cacheDir, safe_str(program.title().replace('/','_')))
         if os.path.exists(fname):
             os.remove(fname)
Example #11
0
 def __init__(self, platform, nextProvider=None, filename=None, tag=None):
     cacheDir = requireDir(os.path.join(platform.getCacheDir(), 'superfast'))
     if filename is None:
         filename = 'superfast'
     PersistentFanartProvider.__init__(self, nextProvider, os.path.join(cacheDir, '%s.pickle' % filename))
     self.imagePathsByKey = self.pcache
     self.tag = tag
Example #12
0
 def __init__(self, platform, delegate, nextProvider=None, filename=None):
     if not delegate:
         raise Exception('delegate cannot be None')
     oneStrikeDir = requireDir(os.path.join(platform.getCacheDir(), 'onestrike'))
     if filename is None:
         filename = '%s' % delegate.__class__.__name__
     PersistentFanartProvider.__init__(self, nextProvider, os.path.join(oneStrikeDir, '%s.pickle' % filename))
     self.delegate = delegate
     self.struckOut = self.pcache
Example #13
0
 def __init__(self, platform, delegate, nextProvider=None, filename=None, tag=None):
     if not delegate:
         raise Exception('delegate cannot be None')
     oneStrikeDir = requireDir(os.path.join(platform.getCacheDir(), 'onestrike'))
     if filename is None:
         filename = '%s' % delegate.__class__.__name__
     PersistentFanartProvider.__init__(self, nextProvider, os.path.join(oneStrikeDir, '%s.pickle' % filename))
     self.delegate = delegate
     self.struckOut = self.pcache
     self.tag = tag
Example #14
0
 def __init__(self, platform, nextProvider=None):
     BaseFanartProvider.__init__(self, nextProvider)
     self.tvdbCacheDir = requireDir(os.path.join(platform.getCacheDir(), 'tvdb'))
     self.tvdb = tvdb_api.Tvdb(interactive=False, 
         select_first=True, 
         debug=False, 
         cache=self.tvdbCacheDir, 
         banners=True, 
         actors=False, 
         custom_ui=None, 
         language=None, 
         search_all_languages=False, 
         apikey='E2032A158BE34568')
Example #15
0
 def __init__(self, platform, nextProvider=None):
     BaseFanartProvider.__init__(self, nextProvider)
     self.tvdbCacheDir = requireDir(
         os.path.join(platform.getCacheDir(), 'tvdb'))
     self.tvdb = tvdb_api.Tvdb(interactive=False,
                               select_first=True,
                               debug=False,
                               cache=self.tvdbCacheDir,
                               banners=True,
                               actors=False,
                               custom_ui=None,
                               language=None,
                               search_all_languages=False,
                               apikey='E2032A158BE34568')
Example #16
0
 def __init__(self, platform, nextProvider=None):
     self.cacheDir = requireDir(os.path.join(platform.getCacheDir(), 'tvrage'))
     self.nextProvider = nextProvider
     self.memcache = {}
Example #17
0
 def clear(self):
     shutil.rmtree(self.rootDir, True)
     requireDir(self.rootDir)
     self.locksByResource.clear()
Example #18
0
 def __init__(self, platform):
     NoOpFanartProvider.__init__(self)
     self.cacheDir = requireDir(os.path.join(platform.getCacheDir(), 'tvrage'))
     self.memcache = {}
Example #19
0
 def __init__(self, platform, nextProvider=None):
     self.cacheDir = requireDir(
         os.path.join(platform.getCacheDir(), 'tvrage'))
     self.nextProvider = nextProvider
     self.memcache = {}
Example #20
0
 def clear(self):
     self.memcache.clear()
     shutil.rmtree(self.cacheDir, ignore_errors=True)
     requireDir(self.cacheDir)         
Example #21
0
 def clear(self):
     shutil.rmtree(self.rootDir, True)
     requireDir(self.rootDir)
     self.locksByResource.clear()
Example #22
0
 def clear(self):
     super(TvdbFanartProvider, self).clear()        
     shutil.rmtree(self.tvdbCacheDir, ignore_errors=True)
     requireDir(self.tvdbCacheDir)