You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@karaf.apache.org by "Jean-Baptiste Onofré (Jira)" <ji...@apache.org> on 2020/04/19 05:49:00 UTC

[jira] [Commented] (KARAF-5844) Add DispatcherProcessing with OSGi services

    [ https://issues.apache.org/jira/browse/KARAF-5844?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17086764#comment-17086764 ] 

Jean-Baptiste Onofré commented on KARAF-5844:
---------------------------------------------

Actually, no need to create a specific API: we can do the same as appender with a EventHandler. The "relationship" between Decanter components can be done via the dispatcher topics.

> Add DispatcherProcessing with OSGi services
> -------------------------------------------
>
>                 Key: KARAF-5844
>                 URL: https://issues.apache.org/jira/browse/KARAF-5844
>             Project: Karaf
>          Issue Type: Dependency upgrade
>          Components: decanter
>            Reporter: Jean-Baptiste Onofré
>            Assignee: Jean-Baptiste Onofré
>            Priority: Major
>             Fix For: decanter-2.4.0
>
>
> Currently, Decanter uses a "flat" workflow: collect-marhsall-dispatch-unmarhsall-append.
> There's no way for an user to add custom processing logic at dispatching level (at bit like the alerting does).
> The idea is to add a {{DispatcherProcessing}} service in the {{Dispatching}} phase. This {{DispatcherProcessing}} will detect and use (whiteboard pattern) {{DispatcherProcesser}} OSGi services. The {{DispatcherProcessor}} interface can look like:
> {code}
> public interface DispatcherProcessor {
>   void Object process(Object collectedEvent);
> }
> {code} 
> {{DispatcherProcessing}} can  use the service ranking property to execute the {{DispatcherProcessors}} in a given order and filter to apply a set of {{DispatcherProcessors}} only on a given {{EventAdmin}} topic.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)