# -*- coding: utf-8 -*-
'''
	feedgen.ext.base
	~~~~~~~~~~~~~~~~

	Basic FeedGenerator extension which does nothing but provides all necessary
	methods.

	:copyright: 2013, Lars Kiesow <lkiesow@uos.de>

	:license: FreeBSD and LGPL, see license.* for more details.
'''


class BaseExtension(object):
	'''Basic FeedGenerator extension.
	'''
	def extend_ns(self):
		'''Returns a dict that will be used in the namespace map for the feed.'''
		return dict()

	def extend_rss(self, feed):
		'''Extend a RSS feed xml structure containing all previously set fields.

		:param feed: The feed xml root element.
		:returns: The feed root element.
		'''
		return feed


	def extend_atom(self, feed):
		'''Extend an ATOM feed xml structure containing all previously set
		fields.

		:param feed: The feed xml root element.
		:returns: The feed root element.
		'''
		return feed


class BaseEntryExtension(BaseExtension):
	'''Basic FeedEntry extension.
	'''