1
2
3 __docformat__ = 'epytext en'
4 __all__ = ['OpenSearchURL']
5
6 from amplee.ext.opensearch import OPENSEARCH_NS, OPENSEARCH_PREFIX
7 from amplee.utils import qname
8
10 - def __init__(self, template, mimetype, index_offset=None, page_offset=None):
11 self.template = template
12 self.mimetype = mimetype
13 self.index_offset = index_offset
14 self.page_offset = page_offset
15
17 if not self.mimetype:
18 raise ValueError("URL mimetype must be set")
19
20 if not self.template:
21 raise ValueError("URL template must be set")
22
23 attrs = {u'type': self.mimetype, u'template': self.template}
24
25 if self.index_offset != None:
26 attrs[u'indexOffset'] = unicode(self.index_offset)
27
28 if self.page_offset != None:
29 attrs[u'pageOffset'] = unicode(self.page_offset)
30
31 d = parent.ownerDocument
32 parent.xml_append(d.xml_create_element(qname(u"Url", OPENSEARCH_PREFIX),
33 ns=OPENSEARCH_NS, attributes=attrs))
34