On Wed, Nov 10, 2010 at 20:45, Sergiu Dumitriu <[email protected]> wrote:
> On 11/10/2010 07:29 PM, Marius Dumitru Florea wrote:
>> What about creating an EventLogger component with implementations for
>> each of the events that need to be logged by the activity stream? When
>> an event is triggered you lookup the corresponding EventLogger. If there
>> is no EventLogger for the specific hint then ignore the event.
>>
>
> The problem is that you have to write extra code to store the extra
> events. It's just moving the current if-else to a different level. It is
> more easily extensible, but I don't agree that any new component sending
> events has to have a dependency on the activity stream plugin to also be
> able to store those events in the stream.

I don't agree with the activity stream dependency. It's not about
activity stream, it's a handler that extract important event
informations in a serializable object. This system is then used by
activity stream and remote observation manager to store or send
events.

>
>> Hope this helps,
>> Marius
>>
>> On 11/10/2010 10:08 AM, Stefan abageru wrote:
>>> Hi devs !
>>>
>>> I thought about adding some changes in Events and Activity Stream.
>>>
>>> First of all, I want to remove all the listeners from Activity Stream
>>> and make this class listen to AllEvent, making it capable of cathcing
>>> all events that occur in the wiki (and this way, when adding a new
>>> event, you wouldn't need any modifications to this class in order to
>>> catch it).
>>>
>>> Secondly, I would like to modify onEvent function in the class so that
>>> it uses the simpleClassName of the event occurred in order to log the
>>> event (the eventType would be this simpleClassName...for example
>>> DocumentSavedEvent, AnnotationAddedEvent and so on).
>>>
>>> And thirdly i thought about adding one field in AbstractFilterableEvent
>>> called /identifier/ and make all events extend directly this class. And
>>> that /identifier/ would be used in a different way by the events
>>> themselves. But it would be used to retrieve infos about that events.
>>> And so, when logging an event, we could use classname + identifier.
>>> For example
>>> AnnotationAddedEvent + "This is my annotation" .
>>> CommentAddedEvent + "This is my comment" or the number of the comment.
>
>
> --
> Sergiu Dumitriu
> http://purl.org/net/sergiu/
> _______________________________________________
> devs mailing list
> [email protected]
> http://lists.xwiki.org/mailman/listinfo/devs
>



-- 
Thomas Mortagne
_______________________________________________
devs mailing list
[email protected]
http://lists.xwiki.org/mailman/listinfo/devs

Reply via email to