karaf-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From François Papon <francois.pa...@openobject.fr>
Subject Re: [Decanter] - Collector socket marshaller improvement
Date Fri, 03 Nov 2017 08:18:23 GMT
Ok, I miss something, because I see the unmarshall method in the collector and for me it take
json and transform it to a Map. I would explain that how could the collector take another
format than json from the socket inputstream reader.

Le 3 nov. 2017 12:08, Jean-Baptiste Onofré <jb@nanthrax.net> a écrit :
>
> See my last e-mail in the thread. 
>
> The collector should only send map. Marshaller should be called by the appender. 
>
> That's really important to both decouple collectors and appenders and be able to use
the alerts checker. 
>
> Regards 
> JB 
>
> On Nov 3, 2017, 09:05, at 09:05, Francois Papon <francois.papon@openobject.fr>
wrote: 
> >We also have to change the target of the @Reference unmarshaller in the 
> >SocketCollector 
> > 
> >@Reference(target=Marshaller.SERVICE_KEY_DATAFORMAT + 
> >"=my-data-format") 
> >    public void setUnmarshaller(Unmarshaller unmarshaller) { 
> >        this.unmarshaller = unmarshaller; 
> >    } 
> > 
> >where my-data-format is a config propertie, may be the reference have 
> >to 
> >be set in the activate method. 
> > 
> >Le 03/11/2017 à 11:56, Francois Papon a écrit : 
> >> Hi, 
> >> 
> >> I'm back with Decanter :) 
> >> 
> >> I'm thinking about adding a new propertie in the collector-socket to 
> >> define wich marshaller to use. 
> >> 
> >> Actually, the collector-socket marshaller work's only with Json 
> >format 
> >> in input but it will be nice if other format could be support. 
> >> 
> >> In the case of network equipement, data is send in different format, 
> >and 
> >> most of the time, each constructor send data in proprietary format. 
> >> 
> >> We could made custom dataFormatter implement Marshaller/Unmarshaller 
> >> decanter API packaging in a bundle as the Decanter Marshall Json, 
> >> declare like : 
> >> 
> >> @Component( 
> >>     immediate = true, 
> >>     property = Marshaller.SERVICE_KEY_DATAFORMAT + "=my-data-format" 
> >> ) 
> >> 
> >> in the properties cfg of the collector-socket we could add : 
> >> 
> >> # Dataformat json(default) 
> >> #dataformat=json 
> >> 
> >> dataformat=my-data-format 
> >> 
> >> I'm ready to do it if you think it could be reuse. 
> >> 
Mime
View raw message