On 11.08.2016, at 22:04, Marshall Schor <[email protected]> wrote: > > What should a load call using auto-detection, detecting a XMI or XCAS input, > do > if the tsiInputStream is not null? > > Current impl: tsiInputStream is ignored for XMI and XCAS. > > More consistent Impl might be to use read the TSI info and use it to set up > the > CAS's type system and index specs.
Well, I have to admit that I was never sure if overwriting the CAS TSI config is a good idea or not. Probably there are different types of hells to get into depending on the circumstances one does this. I'm trying to list them in order 1) outside a component when a CAS is programmatically created 2) in a reader 3) in a multiplier 4) in an analysis component 5) in an environment with remote delegates 6) ...? It might be better to completely drop the CAS reinitialization from the load method for the moment (except when loading SERIALIZED_TSI)... ... or to introduce another boolean argument "reinitialize" ... ... or maybe a tri-state argument: TsiMode.NONE TsiMode.LENIENT TsiMode.OVERRIDE I think that whenever I needed to have the CAS reinitialized, I have so far used SERIALIZED_TSI. Cheers, -- Richard
