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:43:21 GMT
Yes, that's it :)

Le 3 nov. 2017 12:30, Jean-Baptiste Onofré <jb@nanthrax.net> a écrit :
>
> That's before the socket appender sends json. So you are talking about unmarshaller,
not marshaller. The socket collector receives json data and transforms to a map. That's normal
and the expected behavior. 
>
> If you want to be able to change the unmarshaller, that makes sense. 
>
> Regards 
> JB 
>
> On Nov 3, 2017, 09:18, at 09:18, "François Papon" <francois.papon@openobject.fr>
wrote: 
> >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