Mercurial > piecrust2
annotate piecrust/sources/list.py @ 1165:a928ee22c20a
cm: Upgrade Jinja2 version.
author | Ludovic Chabant <ludovic@chabant.com> |
---|---|
date | Fri, 04 Oct 2019 09:00:57 -0700 |
parents | 8adc27285d93 |
children |
rev | line source |
---|---|
857
d231a10d18f9
refactor: Make the data providers and blog archives source functional.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
1 from piecrust.sources.base import ContentSource |
d231a10d18f9
refactor: Make the data providers and blog archives source functional.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
2 |
d231a10d18f9
refactor: Make the data providers and blog archives source functional.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
3 |
d231a10d18f9
refactor: Make the data providers and blog archives source functional.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
4 class ListSource(ContentSource): |
d231a10d18f9
refactor: Make the data providers and blog archives source functional.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
5 def __init__(self, inner_source, items): |
d231a10d18f9
refactor: Make the data providers and blog archives source functional.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
6 super().__init__( |
d231a10d18f9
refactor: Make the data providers and blog archives source functional.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
7 inner_source.app, inner_source.name, inner_source.config) |
d231a10d18f9
refactor: Make the data providers and blog archives source functional.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
8 |
d231a10d18f9
refactor: Make the data providers and blog archives source functional.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
9 self.inner_source = inner_source |
d231a10d18f9
refactor: Make the data providers and blog archives source functional.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
10 self.items = items |
d231a10d18f9
refactor: Make the data providers and blog archives source functional.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
11 |
d231a10d18f9
refactor: Make the data providers and blog archives source functional.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
12 def openItem(self, item, mode='r', **kwargs): |
d231a10d18f9
refactor: Make the data providers and blog archives source functional.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
13 return self.inner_source.openItem(item, mode, **kwargs) |
d231a10d18f9
refactor: Make the data providers and blog archives source functional.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
14 |
d231a10d18f9
refactor: Make the data providers and blog archives source functional.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
15 def getItemMtime(self, item): |
d231a10d18f9
refactor: Make the data providers and blog archives source functional.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
16 return self.inner_source.getItemMtime(item) |
d231a10d18f9
refactor: Make the data providers and blog archives source functional.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
17 |
d231a10d18f9
refactor: Make the data providers and blog archives source functional.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
18 def getContents(self, group): |
d231a10d18f9
refactor: Make the data providers and blog archives source functional.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
19 return self.items |
d231a10d18f9
refactor: Make the data providers and blog archives source functional.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
20 |
d231a10d18f9
refactor: Make the data providers and blog archives source functional.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
21 def getRelatedContents(self, item, relationship): |
d231a10d18f9
refactor: Make the data providers and blog archives source functional.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
22 return self.inner_source.getRelatedContents(item, relationship) |
d231a10d18f9
refactor: Make the data providers and blog archives source functional.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
23 |
989
8adc27285d93
bake: Big pass on bake performance.
Ludovic Chabant <ludovic@chabant.com>
parents:
857
diff
changeset
|
24 def findContentFromRoute(self, route_params): |
857
d231a10d18f9
refactor: Make the data providers and blog archives source functional.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
25 # Can't find items... we could find stuff that's not in our list? |
d231a10d18f9
refactor: Make the data providers and blog archives source functional.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
26 raise NotImplementedError( |
d231a10d18f9
refactor: Make the data providers and blog archives source functional.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
27 "The list source doesn't support finding items.") |
d231a10d18f9
refactor: Make the data providers and blog archives source functional.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
28 |
d231a10d18f9
refactor: Make the data providers and blog archives source functional.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
29 def getSupportedRouteParameters(self): |
d231a10d18f9
refactor: Make the data providers and blog archives source functional.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
30 return self.inner_source.getSupportedRouteParameters() |
d231a10d18f9
refactor: Make the data providers and blog archives source functional.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
31 |