On Apr 14, 2012, at 12:13 AM, Eduard Moraru wrote:
On Fri, Apr 13, 2012 at 6:47 PM, Paul Libbrecht
<paul(a)hoplahup.net> wrote:
Vincent,
on IRC you had suggested me to use such an event.
I couldn't find it.
Is there an overview of such events?
That would indeed be a valueable piece of lore, specially for (but not
limited to) newcomers.
Eddy, there's an overview, it's at:
http://extensions.xwiki.org/xwiki/bin/view/Extension/Observation+Module
What's missing IMO is that each Module needs to document what Events it creates and
thus what event can be consumed by others. It's up to each module to document that.
For example the Model module should document all the model events (add/update/delete for
all Entities). Right now we have 2 model modules: xwiki-platform-oldcore and
xwiki-platform-model.
Right now we have
http://extensions.xwiki.org/xwiki/bin/view/Extension/Model+Module and we
could either add doc for the oldcore there too or (better) create an oldcore module on
e.x.o.
Thanks
-Vincent
Thanks,
Eduard
>
> thanks in advance
>
> Paul
>
>
> Le 13 avr. 2012 à 17:43, Vincent Massol a écrit :
>
>> Hi devs,
>>
>> We already have ApplicationStartedEvent and ApplicationReadyEvent (when
> DB is ready). We also need an event when the wiki is ready since in s a
> multiwiki environment when you create a new wiki for example, you might
> need to init some stuff (like initialize mandatory classes). It's also
> needed the first time a request comes in for a given wiki.
>>
>> Thus I propose to add a WikiReadyEvent next to ApplicationStartedEvent
> and to send it in XWiki.updateDatabase():
>>
>> ...
>> synchronized (wikiName) {
>> if (!wikiList.contains(wikiName)) {
>> wikiList.add(wikiName);
>>
>> // Make sure these classes exists
>> if (initClasses) {
>> initializeMandatoryClasses(context);
>> getPluginManager().virtualInit(context);
>> getRenderingEngine().virtualInit(context);
>> }
>>
>> --> send WikiReadyEvent here
>>
>> }
>> }
>>
>> WDYT?
>>
>> Note that I was tempted to have a WikiCreatedEvent event sent when
> creating a wiki but that wouldn't fill the use case of initializing the
> wiki on the first request to it.
>>
>> Thanks
>> -Vincent