From e9a0717aeab4a9fb8eb59795a19a043b1e88ef55 Mon Sep 17 00:00:00 2001 From: Nico Di Rocco Date: Wed, 22 Aug 2012 23:05:07 +0200 Subject: [PATCH] Added a new signal `finalized` that is dispatched when pelican finishes. This signal can then be used for post processing. --- docs/plugins.rst | 1 + pelican/__init__.py | 2 ++ pelican/signals.py | 1 + 3 files changed, 4 insertions(+) diff --git a/docs/plugins.rst b/docs/plugins.rst index 53858668..bce17ddb 100644 --- a/docs/plugins.rst +++ b/docs/plugins.rst @@ -57,6 +57,7 @@ Here is the list of currently implemented signals: Signal Arguments Description ========================= ============================ ========================================= initialized pelican object +finalized pelican object article_generate_context article_generator, metadata article_generator_init article_generator invoked in the ArticlesGenerator.__init__ pages_generate_context pages_generator, metadata diff --git a/pelican/__init__.py b/pelican/__init__.py index ba48c4c7..803e289a 100644 --- a/pelican/__init__.py +++ b/pelican/__init__.py @@ -178,6 +178,8 @@ class Pelican(object): if hasattr(p, 'generate_output'): p.generate_output(writer) + signals.finalized.send(self) + def get_generator_classes(self): generators = [StaticGenerator, ArticlesGenerator, PagesGenerator] if self.settings['PDF_GENERATOR']: diff --git a/pelican/signals.py b/pelican/signals.py index 4d9ab512..ddd59621 100644 --- a/pelican/signals.py +++ b/pelican/signals.py @@ -1,6 +1,7 @@ from blinker import signal initialized = signal('pelican_initialized') +finalized = signal('pelican_finalized') article_generate_context = signal('article_generate_context') article_generator_init = signal('article_generator_init') pages_generate_context = signal('pages_generate_context')