After the wonderful discussion yesterday, went back and had a quick look at the codec that I intended to design.
Here is what I needed to replace existing blocking IO 1. POJO's - The High level representation of a protocol (already there) 2. Decoders - How I collect information from lower layer eg. CumulativeProtocolDecoder..etc and convert them to POJO 3. Encoder's - How to convert POJO to byte array For us, the tricky part is POJO's. There are two questions 1. Do we maintain protocol POJO's? 2. Do we use an 3rd party POJO library (in my case its jsmpp) Encoder/Decoder shall depend upon POJO's. So if we had to create a Codec repository, we have to decide which approach to use. It could be a mix of both. There are pro's and con's of each and not sure of the way forward. May be we can look at it once we actually create the repository. thanks ashish
