/******************************************************************************* Ċ Ġ* ĠCopyright Ġ 2 0 0 9 - 2 0 2 0 ĠExact pro Ġ( Exact pro ĠSystems ĠLimited ) Ċ Ġ* Ċ Ġ* ĠLicensed Ġunder Ġthe ĠApache ĠLicense , ĠVersion Ġ 2 . 0 Ġ( the Ġ" License "); Ċ Ġ* Ġyou Ġmay Ġnot Ġuse Ġthis Ġfile Ġexcept Ġin Ġcompliance Ġwith Ġthe ĠLicense . Ċ Ġ* ĠYou Ġmay Ġobtain Ġa Ġcopy Ġof Ġthe ĠLicense Ġat Ċ Ġ* Ċ Ġ* ĠĠĠĠ Ġhttp :// www . apache . org / licenses / LICENSE - 2 . 0 Ċ Ġ* Ċ Ġ* ĠUnless Ġrequired Ġby Ġapplicable Ġlaw Ġor Ġagreed Ġto Ġin Ġwriting , Ġsoftware Ċ Ġ* Ġdistributed Ġunder Ġthe ĠLicense Ġis Ġdistributed Ġon Ġan Ġ" AS ĠIS " ĠBASIS , Ċ Ġ* ĠWITHOUT ĠWARRANTIES ĠOR ĠCONDITIONS ĠOF ĠANY ĠKIND , Ġeither Ġexpress Ġor Ġimplied . Ċ Ġ* ĠSee Ġthe ĠLicense Ġfor Ġthe Ġspecific Ġlanguage Ġgoverning Ġpermissions Ġand Ċ Ġ* Ġlimitations Ġunder Ġthe ĠLicense . Ċ Ġ******************************************************************************/ Ċ package Ġcom . exact pro . sf . external api . codec . impl Ċ Ċ import Ġcom . exact pro . sf . common . messages . I Message Ċ import Ġcom . exact pro . sf . external api . codec . I External Codec Ċ import Ġcom . exact pro . sf . external api . codec . I External Codec Settings Ċ import Ġcom . exact pro . sf . services . netty . internal . Net ty Embedded Pipeline Ċ import Ġio . netty . buffer . Byte Buf Ċ import Ġio . netty . channel . Channel HandlerContext Ċ import Ġio . netty . channel . Channel Inbound Handler Ċ import Ġio . netty . channel . Channel Outbound Handler Ċ import Ġio . netty . handler . codec . Message To Byte Encoder Ċ Ċ abstract Ġclass ĠAbstract External Net ty Codec Factory Ġ: ĠAbstract External Codec Factory () Ġ{ ĊĠĠĠ Ġprotected Ġabstract Ġfun Ġget Encode Handlers ( settings : ĠI External Codec Settings ): ĠList < Channel Outbound Handler > ĊĠĠĠ Ġprotected Ġabstract Ġfun Ġget Decode Handlers ( settings : ĠI External Codec Settings ): ĠList < Channel Inbound Handler > ĊĊĠĠĠ Ġoverride Ġfun Ġcreate Codec ( settings : ĠI External Codec Settings ): ĠI External Codec Ġ{ ĊĠĠĠĠĠĠĠ Ġvalidate Di ctionaries ( settings ) ĊĠĠĠĠĠĠĠ Ġreturn ĠExternal Net ty Codec ( Net ty Embedded Pipeline ( get Encode Handlers ( settings ), Ġget Decode Handlers ( settings ))) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprotected Ġclass ĠI Message To Byte Buf Encoder Ġ: ĠMessage To Byte Encoder < I Message >() Ġ{ ĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġencode ( context : ĠChannel HandlerContext , Ġmsg : ĠI Message , Ġout : ĠByte Buf ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġout . write Bytes ( msg . metaData . raw Message ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ }