The method NLPDecoder.getComponent(InputStream) could be static. It somehow feels like doing something wrong when first having to create an NLPDecoder instance without any configuration just in order to load a serialized component:
NLPDecoder decoder = new NLPDecoder();
OnlineComponent<POSState> component = (OnlineComponent<POSState>)
decoder.getComponent(aStream);
The method NLPDecoder.getComponent(InputStream) could be static. It somehow feels like doing something wrong when first having to create an NLPDecoder instance without any configuration just in order to load a serialized component: