Add Django-1.2.1
[frozenviper.git] / Django-1.2.1 / build / lib.linux-i686-2.6 / django / contrib / syndication / feeds.py
blobe4e99da7dda4591e4b19de2c100f3f77e28c8747
1 from django.contrib.syndication import views
2 from django.core.exceptions import ObjectDoesNotExist
3 import warnings
5 # This is part of the deprecated API
6 from django.contrib.syndication.views import FeedDoesNotExist, add_domain
8 class Feed(views.Feed):
9 """Provided for backwards compatibility."""
10 def __init__(self, slug, request):
11 warnings.warn('The syndication feeds.Feed class is deprecated. Please '
12 'use the new class based view API.',
13 category=PendingDeprecationWarning)
15 self.slug = slug
16 self.request = request
17 self.feed_url = getattr(self, 'feed_url', None) or request.path
18 self.title_template = self.title_template or ('feeds/%s_title.html' % slug)
19 self.description_template = self.description_template or ('feeds/%s_description.html' % slug)
21 def get_object(self, bits):
22 return None
24 def get_feed(self, url=None):
25 """
26 Returns a feedgenerator.DefaultFeed object, fully populated, for
27 this feed. Raises FeedDoesNotExist for invalid parameters.
28 """
29 if url:
30 bits = url.split('/')
31 else:
32 bits = []
33 try:
34 obj = self.get_object(bits)
35 except ObjectDoesNotExist:
36 raise FeedDoesNotExist
37 return super(Feed, self).get_feed(obj, self.request)