/** * @see org.apache.vinci.transport.TransportableFactory#makeTransportable() */ public synchronized Transportable makeTransportable() { return new CASTransportable(mCasPool, new OutOfTypeSystemData(), null, false); }
/** * Deserializes an XCAS from a stream. * * @param aStream * input stream from which to read the XCAS XML document * @param aCAS * CAS into which to deserialize. This CAS must be set up with a type system that is * compatible with that in the XCAS. * @param aLenient * if true, unknown Types will be ignored. If false, unknown Types will cause an * exception. The default is false. * * @throws SAXException * if an XML Parsing error occurs * @throws IOException * if an I/O failure occurs */ public static void deserialize(InputStream aStream, CAS aCAS, boolean aLenient) throws SAXException, IOException { XMLReader xmlReader = XMLUtils.createXMLReader(); XCASDeserializer deser = new XCASDeserializer(aCAS.getTypeSystem()); ContentHandler handler; if (aLenient) { handler = deser.getXCASHandler(aCAS, new OutOfTypeSystemData()); } else { handler = deser.getXCASHandler(aCAS); } xmlReader.setContentHandler(handler); xmlReader.parse(new InputSource(aStream)); }
public void startElement(String uri, String localName, String qName, Attributes attributes) throws SAXException { if (mDelegateHandler == null) { // try to find out whether we should use the XCAS or XMI deserializers // if there's an xmi:version attribute, always use XMI String xmiVer = attributes.getValue("xmi:version"); if (xmiVer != null && xmiVer.length() > 0) { XmiCasDeserializer deser = new XmiCasDeserializer(mCAS.getTypeSystem()); mDelegateHandler = deser.getXmiCasHandler(mCAS, mLenient); } else if ("CAS".equals(localName)) // use XCAS { XCASDeserializer deser = new XCASDeserializer(mCAS.getTypeSystem()); mDelegateHandler = deser .getXCASHandler(mCAS, mLenient ? new OutOfTypeSystemData() : null); } else // default to XMI { XmiCasDeserializer deser = new XmiCasDeserializer(mCAS.getTypeSystem()); mDelegateHandler = deser.getXmiCasHandler(mCAS, mLenient); } mDelegateHandler.startDocument(); } mDelegateHandler.startElement(uri, localName, qName, attributes); }
ootsd = new OutOfTypeSystemData();