private void processEndDocument () { // All is done in close() (used by both modes) close(); }
@Override protected void processStartSubDocument (Event event) { writer.handleEvent(event); }
switch ( event.getEventType() ) { case START_DOCUMENT: processStartDocument((StartDocument)event.getResource()); break; case END_DOCUMENT: processEndDocument(); break; case START_SUBDOCUMENT: processStartSubDocument((StartSubDocument)event.getResource()); break; case END_SUBDOCUMENT: processEndSubDocument((Ending)event.getResource()); break; case START_GROUP: case START_SUBFILTER: processStartGroup((StartGroup)event.getResource()); break; case END_GROUP: case END_SUBFILTER: processEndGroup((Ending)event.getResource()); break; case TEXT_UNIT: processTextUnit(event.getTextUnit()); break; default:
@Override protected void processStartDocument (Event event) { super.processStartDocument(event); writer = new XLIFFWriter(); writer.setOptions(manifest.getTargetLocale(), "UTF-8"); MergingInfo item = manifest.getItem(docId); rawDocPath = manifest.getTempSourceDirectory() + item.getRelativeInputPath() + ".xlf"; writer.setOutput(rawDocPath); // Not really used, but doesn't hurt just in case XLIFFWriterParameters paramsXliff = (XLIFFWriterParameters)writer.getParameters(); // Set the writer's options if ( forOmegat ) { // Direct setting for the writer (not an XLIFF option) paramsXliff.setUseSourceForTranslated(true); } paramsXliff.setPlaceholderMode(options.getPlaceholderMode()); paramsXliff.setCopySource(options.getCopySource()); paramsXliff.setIncludeAltTrans(options.getIncludeAltTrans()); paramsXliff.setSetApprovedAsNoTranslate(options.getSetApprovedAsNoTranslate()); paramsXliff.setIncludeNoTranslate(options.getIncludeNoTranslate()); paramsXliff.setIncludeCodeAttrs(options.getIncludeCodeAttrs()); paramsXliff.setIncludeIts(options.getIncludeIts()); paramsXliff.setEscapeGt(options.getEscapeGT()); StartDocument sd = event.getStartDocument(); writer.create(rawDocPath, null, manifest.getSourceLocale(), manifest.getTargetLocale(), sd.getMimeType(), item.getRelativeInputPath(), null); }
@Override protected Event processEndDocument (Event event) { if ( writer != null ) { writer.handleEvent(event); writer.close(); writer = null; } if ( params.getSendOutput() ) { return super.creatRawDocumentEventSet(rawDocPath, "UTF-8", manifest.getSourceLocale(), manifest.getTargetLocale()); } else { return event; } }
close(); writer.writeAttributeString(Namespaces.ITS_NS_PREFIX+":version", "2.0"); writeAnnotatorsRefIfNeeded();
private void processStartDocument (StartDocument resource) { // trgLoc was set before // fwOutputPath was set before create(fwOutputPath, null, resource.getLocale(), trgLoc, resource.getMimeType(), resource.getName(), null); // Additional variables specific to IFilterWriter mode fwInputEncoding = resource.getEncoding(); IParameters params = resource.getFilterParameters(); if ( params == null ) fwConfigId = null; else fwConfigId = params.getPath(); }
@Override public void close () { if ( writer != null ) { writer.close(); writer = null; } }
@Override protected void processEndSubDocument (Event event) { writer.handleEvent(event); }
@Override protected void processEndGroup (Event event) { writer.handleEvent(event); }
@Override protected void processStartGroup (Event event) { writer.handleEvent(event); }
@Override protected void processTextUnit (Event event) { // XLIFF event = writer.handleEvent(event); // TMX files writeTMXEntries(event.getTextUnit()); // Check if it has been segmented (if not set already) if ( !preSegmented ) { preSegmented = event.getTextUnit().getSource().hasBeenSegmented(); } }