I'm starting to look at converting JCas to an interface, with an impl. First issue found: this class contains static methods used by JCasGen-erated code, for factored-out,
common methods to report errors, etc.
(e.g. when getting a feature, there's code like:

if (featOkTst && casFeat_xxxx == null)
           JCas.throwFeatMissing("xxxx, "cas-type-name-for-xxxx");

These calls are in pre-existing JCas cover classes. I guess we're planning to have new JCas cover classes generated (unless we put in a layer to make the old ones work - they would be tying into classes named "com.ibm.etc.").

So I can change JCasGen to generate a ref to JCasImpl.etc. instead of JCas.etc.

if( featOkTst && casFeat_xxxx == null)
           JCasImpl.throwFeatMissing("xxxx, "cas-type-name-for-xxxx");

Does this sound like the right idea?

-Marshall

Reply via email to