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

Reply via email to