In the current design, I think the following code does not make much sense:

    // To support writing to ZIPs, the type system must be written separately 
from the CAS data
    if (typeOS != null && !typeSystemWritten) {
      writeTypeSystem(aCas, typeOS);
      typeSystemWritten = true;
    }

Originally, this was meant to support writing to ZIPs. But in the original 
code, the OutputStream
was the obtained later, i.e. inside the writeTypeSystem() call. It is not 
possible to obtain
an OutputStream for a "future" position in the ZIP file.

So I wonder if this part of the code should be changed such that a type system 
is always written
to the TS output stream if that stream is null.

At least the comment should be removed.

-- Richard

Reply via email to