/** * Creates a ParametersEvent object with most majority of defaults initialized * @param startDoc - current {@link StartDocument} * @param inputDoc - input {@link RawDocument} * @param secondDoc - optional second input {@link RawDocument} * @param thirdDoc - optional third input {@link RawDocument} */ public PipelineParameters (StartDocument startDoc, RawDocument inputDoc, RawDocument secondDoc, RawDocument thirdDoc) { this.id = startDoc.getId(); this.outputURI = null; this.targetLocale = inputDoc.getTargetLocale(); this.trgLocs = new LinkedList<>(); trgLocs.addAll(startDoc.getTargetLocales()); this.sourceLocale = inputDoc.getSourceLocale(); this.outputEncoding = null; this.inputURI = inputDoc.getInputURI(); this.filterConfigId = inputDoc.getFilterConfigId(); this.fcMapper = null; this.inputRawDocument = inputDoc; this.secondInputRawDocument = secondDoc; this.thirdInputRawDocument = thirdDoc; this.rootDirectory = null; this.inputRootDirectory = null; this.uiParent = null; this.context = null; }
private Event openSubDocument () { if (subFilter != null) subFilter.close(); Event event; try { subFilter.open(new RawDocument(zipFile.getInputStream(entry), "UTF-8", srcLoc, trgLoc)); event = subFilter.next(); // START_DOCUMENT } catch (IOException e) { throw new OkapiIOException("Error opening internal file.", e); } // Change the START_DOCUMENT event from sub-filter to START_SUBDOCUMENT StartDocument sd = null; StartSubDocument ssd = null; if (event.getEventType() == EventType.START_DOCUMENT) { sd = (StartDocument) event.getResource(); ssd = new StartSubDocument(SID, sd.getId()); saveStartDoc = sd; // Remember the SD transformed to SSD not to loose isMultilingual } else ssd = new StartSubDocument(SID, String.valueOf(++subDocId)); ResourceUtil.copyProperties(sd, ssd); ssd.setName(docURI.getPath() + "/" + entry.getName()); // Use '/' nextAction = NextAction.NEXTINSUBDOC; ZipSkeleton skel = new ZipSkeleton( (GenericSkeleton)event.getResource().getSkeleton(), zipFile, entry); return new Event(EventType.START_SUBDOCUMENT, ssd, skel); }
/** * create a START_DOCUMENT {@link Event} * @return the newly created {@link StartDocument} event. */ protected Event createStartFilterEvent() { StartDocument startDocument = new StartDocument( documentId.createId(IdGenerator.START_DOCUMENT)); startDocument.setEncoding(getEncoding(), isUtf8Encoding() && isUtf8Bom()); startDocument.setLocale(getSrcLoc()); startDocument.setMimeType(getMimeType()); startDocument.setLineBreak(getNewlineType()); startDocument.setFilterParameters(getParameters()); startDocument.setFilterWriter(getFilterWriter()); startDocument.setName(getDocumentName()); startDocument.setMultilingual(isMultilingual()); LOGGER.debug("Start Document for " + startDocument.getId()); //$NON-NLS-1$ return new Event(EventType.START_DOCUMENT, startDocument); }