On 11.08.2016, at 16:08, Marshall Schor <[email protected]> wrote: > > Re: BinaryCasSerDes6 changes > > BinaryCasSerDes6 has many public constructors, which are variants but end up > calling one common constructor. > This update changes the the arg list for the common constructor, which means > any > callers of this need updating. Since this is a public API, it's possible that > this change could affect some existing non-uima-framework code. > > How about keeping this the same public API, but adding a new API with the > extra > argument? That one would best be made "private", I think.
Ah, I forgot to introduce a new constructor with the old signature in that case. In other cases where I extended the signature, I have always added a method with the old signature that forwards to the extended signature. Making the new constructor with the maximal signature private seems ok. Actually, normally I would work a lot more with setters or maybe with a builder pattern. I just sticked with the constructor stacking because it was the style already used. > ----------------- > An exception is thrown if a call is made with the storeTsi flag on and a type > filtering type system is provided. It seems this, in general, would be quite > reasonable and trivial to support (just serialize the type filtering type > system > instead)? Well... what we serialize is a CASMgrSerializer (TS + Index). It might be trivial to construct a CASMgrSerializer from the index repository in the current CAS and from the type filtering type system. I just didn't try it. Cheers, -- Richard
