diff options
| author | Russell Keith-Magee <russell@keith-magee.com> | 2011-04-02 08:36:40 +0000 |
|---|---|---|
| committer | Russell Keith-Magee <russell@keith-magee.com> | 2011-04-02 08:36:40 +0000 |
| commit | 24b7d9017dc4a155c4cdbaa4823b3cc46f7f57ec (patch) | |
| tree | aaee6b2f03c630c7b6c0e3ee1092cdaada7093f5 | |
| parent | 5d5149cd18aa846be88ebcfae5997268359f67bb (diff) | |
Advanced deprecations in contrib.syndication.
git-svn-id: http://code.djangoproject.com/svn/django/trunk@15976 bcc190cf-cafb-0310-a4f2-bffc1f526a37
| -rw-r--r-- | django/contrib/syndication/feeds.py | 38 | ||||
| -rw-r--r-- | django/contrib/syndication/views.py | 44 |
2 files changed, 0 insertions, 82 deletions
diff --git a/django/contrib/syndication/feeds.py b/django/contrib/syndication/feeds.py deleted file mode 100644 index f61b30a740..0000000000 --- a/django/contrib/syndication/feeds.py +++ /dev/null @@ -1,38 +0,0 @@ -from django.contrib.syndication import views -from django.core.exceptions import ObjectDoesNotExist -import warnings - -# This is part of the deprecated API -from django.contrib.syndication.views import FeedDoesNotExist, add_domain - -class Feed(views.Feed): - """Provided for backwards compatibility.""" - def __init__(self, slug, request): - warnings.warn('The syndication feeds.Feed class is deprecated. Please ' - 'use the new class based view API.', - category=DeprecationWarning) - - self.slug = slug - self.request = request - self.feed_url = getattr(self, 'feed_url', None) or request.path - self.title_template = self.title_template or ('feeds/%s_title.html' % slug) - self.description_template = self.description_template or ('feeds/%s_description.html' % slug) - - def get_object(self, bits): - return None - - def get_feed(self, url=None): - """ - Returns a feedgenerator.DefaultFeed object, fully populated, for - this feed. Raises FeedDoesNotExist for invalid parameters. - """ - if url: - bits = url.split('/') - else: - bits = [] - try: - obj = self.get_object(bits) - except ObjectDoesNotExist: - raise FeedDoesNotExist - return super(Feed, self).get_feed(obj, self.request) - diff --git a/django/contrib/syndication/views.py b/django/contrib/syndication/views.py index dbb9eee4ab..8e7c1d125c 100644 --- a/django/contrib/syndication/views.py +++ b/django/contrib/syndication/views.py @@ -183,47 +183,3 @@ class Feed(object): **self.item_extra_kwargs(item) ) return feed - - -def feed(request, url, feed_dict=None): - """Provided for backwards compatibility.""" - from django.contrib.syndication.feeds import Feed as LegacyFeed - import warnings - warnings.warn('The syndication feed() view is deprecated. Please use the ' - 'new class based view API.', - category=DeprecationWarning) - - if not feed_dict: - raise Http404("No feeds are registered.") - - try: - slug, param = url.split('/', 1) - except ValueError: - slug, param = url, '' - - try: - f = feed_dict[slug] - except KeyError: - raise Http404("Slug %r isn't registered." % slug) - - # Backwards compatibility within the backwards compatibility; - # Feeds can be updated to be class-based, but still be deployed - # using the legacy feed view. This only works if the feed takes - # no arguments (i.e., get_object returns None). Refs #14176. - if not issubclass(f, LegacyFeed): - instance = f() - instance.feed_url = getattr(f, 'feed_url', None) or request.path - instance.title_template = f.title_template or ('feeds/%s_title.html' % slug) - instance.description_template = f.description_template or ('feeds/%s_description.html' % slug) - - return instance(request) - - try: - feedgen = f(slug, request).get_feed(param) - except FeedDoesNotExist: - raise Http404("Invalid feed parameters. Slug %r is valid, but other parameters, or lack thereof, are not." % slug) - - response = HttpResponse(mimetype=feedgen.mime_type) - feedgen.write(response, 'utf-8') - return response - |
