4 # classes for dealing with object cache
6 # (c) 2004, Davyd Madeley
9 import dircache, cPickle, sys, os
12 def __create_name__(self, title, feed):
13 return "%s_%s.cache" % (title.replace(' ', '_'), feed.replace(' ', '_').replace('http://', '').replace('/', '_'))
15 def storeBlog(self, blog):
16 name = self.__create_name__(blog.blogName, blog.feedURL)
17 # write the blog to disk
19 cPickle.dump(blog, open(os.path.join('cache', name), 'w'))
21 # sys.stderr.write('DEBUG: CacheHandler: Item could not be written to cache\n')
24 def getBlog(self, title, feed):
25 name = self.__create_name__(title, feed)
26 # attempt to read the blog from disk
28 blog = cPickle.load(open(os.path.join('cache', name)))
31 # sys.stderr.write('DEBUG: CacheHandler: Could not read item from cache\n')
39 def __ne__(self, other):
40 return self.etag != other.etag or self.date != other.date