/** * Make a PipelineConfiguration from the properties of this Configuration * * @return a new PipelineConfiguration * @since 8.4 */ public PipelineConfiguration makePipelineConfiguration() { PipelineConfiguration pipe = new PipelineConfiguration(); pipe.setConfiguration(this); pipe.setErrorListener(getErrorListener()); pipe.setURIResolver(getURIResolver()); pipe.setSchemaURIResolver(getSchemaURIResolver()); pipe.setHostLanguage(getHostLanguage()); pipe.setExpandAttributeDefaults(isExpandAttributeDefaults()); pipe.setUseXsiSchemaLocation(useXsiSchemaLocation); return pipe; }
public void setPipelineConfiguration(PipelineConfiguration pipe) { if (pipe != null) { super.setPipelineConfiguration(pipe); if (context == null) { Controller controller = pipe.getController(); if (controller != null) { context = controller.newXPathContext(); } } if (element == null) { element = new Orphan(pipe.getConfiguration()); element.setNodeKind(Type.ELEMENT); } } }
public void report(String message, String errorType, Object relatedInformation, Location location) throws XMLStreamException { ExpressionLocation loc = translateLocation(location); XPathException err = new XPathException("Error reported by XML parser: " + message + " (" + errorType + ')'); err.setLocator(loc); try { pipe.getErrorListener().error(err); } catch (TransformerException e) { throw new XMLStreamException(e); } }
/** * Set configuration information. This must only be called before any events * have been read. * @param pipe the pipeline configuration */ public void setPipelineConfiguration(PipelineConfiguration pipe) { this.pipe = new PipelineConfiguration(pipe); this.pipe.setLocationProvider(this); config = pipe.getConfiguration(); ignoreIgnorable = config.getStripsWhiteSpace() != Whitespace.NONE; }
public void setPipelineConfiguration(PipelineConfiguration pipe) { PipelineConfiguration pipe2 = new PipelineConfiguration(pipe); pipe2.setLocationProvider(this); super.setPipelineConfiguration(pipe2); }
/** * Make a PipelineConfiguration from the properties of this Configuration * * @return a new PipelineConfiguration * @since 8.4 */ public PipelineConfiguration makePipelineConfiguration() { PipelineConfiguration pipe = new PipelineConfiguration(this); pipe.setURIResolver(getURIResolver()); pipe.setParseOptions(new ParseOptions(defaultParseOptions)); pipe.setErrorListener(getErrorListener()); return pipe; }
/** * Make a PipelineConfiguration based on the properties of this Controller. * <p>This interface is intended primarily for internal use, although it may be necessary * for applications to call it directly if they construct pull or push pipelines.</p> * * @return a newly constructed PipelineConfiguration holding a reference to this * Controller as well as other configuration information. */ /*@NotNull*/ public PipelineConfiguration makePipelineConfiguration() { PipelineConfiguration pipe = config.makePipelineConfiguration(); pipe.setURIResolver(userURIResolver == null ? standardURIResolver : userURIResolver); pipe.getParseOptions().setSchemaValidationMode(validationMode); // added in 9.7 pipe.getParseOptions().setErrorListener(errorListener); // added in 9.7.0.4 pipe.setController(this); final Executable executable = getExecutable(); if (executable != null) { // can be null for an IdentityTransformer pipe.setHostLanguage(executable.getHostLanguage()); } return pipe; }
pipe.setErrorListener(compilation.getCompilerInfo().getErrorListener()); LinkedTreeBuilder styleBuilder = new LinkedTreeBuilder(pipe); pipe.setURIResolver(compilation.getCompilerInfo().getURIResolver()); styleBuilder.setSystemId(styleSource.getSystemId()); options.setLineNumbering(true); options.setSpaceStrippingRule(NoElementsSpaceStrippingRule.getInstance()); options.setErrorListener(pipe.getErrorListener()); try { if (options.getXMLReader() == null && options.getXMLReaderMaker() == null && Version.platform.isJava()
oldPipe.setController(context.getController()); final PipelineConfiguration newPipe = new PipelineConfiguration(oldPipe); final UnfailingErrorListener oldErrorListener = controller == null ? new StandardErrorListener() : controller.getErrorListener(); if (onError == URIQueryParameters.ON_ERROR_IGNORE) { newPipe.setErrorListener(new UnfailingErrorListener() { public void warning(TransformerException exception) { newPipe.setErrorListener(new UnfailingErrorListener() { public void warning(TransformerException exception) { oldErrorListener.warning(exception);
/** * Allocate a SequenceOutputter. Used from generated bytecode. * * @param context dynamic XPath context * @param hostLang host language (XSLT/XQuery) * @return the allocated SequenceOutputter * @see com.saxonica.ee.bytecode.util.CompilerService */ /*@Nullable*/ public static SequenceOutputter allocateSequenceOutputter(XPathContext context, int hostLang) { Controller controller = context.getController(); SequenceOutputter seq = controller.allocateSequenceOutputter(20); seq.getPipelineConfiguration().setHostLanguage(hostLang); return seq; }
oldPipe.setController(context.getController()); final PipelineConfiguration newPipe = new PipelineConfiguration(oldPipe); final UnfailingErrorListener oldErrorListener = controller == null ? new StandardErrorListener() : controller.getErrorListener(); AbstractResourceCollection.setupErrorHandlingForCollection( newPipe.getParseOptions(), onError, oldErrorListener);
/** * Set configuration information. This must only be called before any events * have been read. */ public void setPipelineConfiguration(PipelineConfiguration pipe) { this.pipe = new PipelineConfiguration(pipe); this.namePool = pipe.getConfiguration().getNamePool(); ignoreIgnorable = pipe.getConfiguration().getParseOptions().getSpaceStrippingRule() != NoElementsSpaceStrippingRule.getInstance(); }
final PipelineConfiguration newPipe = new PipelineConfiguration(oldPipe); final ErrorListener oldErrorListener = controller.getErrorListener(); if (onError == URIQueryParameters.ON_ERROR_IGNORE) { newPipe.setErrorListener(new ErrorListener() { public void warning(TransformerException exception) {} public void error(TransformerException exception) {} }); } else if (onError == URIQueryParameters.ON_ERROR_WARNING) { newPipe.setErrorListener(new ErrorListener() { public void warning(TransformerException exception) throws TransformerException { oldErrorListener.warning(exception);
/** * Get the Saxon Configuration * * @return the Configuration */ public final Configuration getConfiguration() { return pipelineConfiguration.getConfiguration(); }
((Receiver)result).getPipelineConfiguration().setController(controller); SerializerFactory sf = context.getConfiguration().getSerializerFactory(); PipelineConfiguration pipe = controller.makePipelineConfiguration(); pipe.setHostLanguage(Configuration.XQUERY); out = sf.getReceiver(result, new SerializationProperties(actualProperties), pipe);
// create Saxon IdentityTransformer final Transformer transformer = new TransformerFactoryImpl().newTransformer(); // set up holder for the output final TinyBuilder outputTarget = new TinyBuilder( new PipelineConfiguration(new Configuration())); // transform into Saxon's immutable TinyTree transformer.transform(xml, outputTarget); // extract the whole XML as TinyNode final TinyNodeImpl tinyNode = outputTarget.getTree().getNode(0); // wrap TinyNode as DOM final NodeOverNodeInfo nodeOverNodeInfo = DocumentOverNodeInfo.wrap(tinyNode); // cast to DOM final Document doc = (Document) nodeOverNodeInfo;
protected String getErrorCodeForDecomposingFunctionItems() { boolean isXSLT = getPipelineConfiguration().getHostLanguage() == Configuration.XSLT; return isXSLT ? "XTDE0450" : "XQTY0105"; // Use SENR0001 when doing sequence normalization as per the Serialization spec. }
/** * Create a TinyTree to hold a document or element node. * @throws net.sf.saxon.trans.XPathException */ private void createTree() throws XPathException { PipelineConfiguration pipe = getPipelineConfiguration(); builder = pipe.getController().makeBuilder(); builder.setPipelineConfiguration(pipe); builder.setSystemId(getSystemId()); builder.setTiming(false); NamespaceReducer reducer = new NamespaceReducer(); reducer.setUnderlyingReceiver(builder); reducer.setPipelineConfiguration(getPipelineConfiguration()); ComplexContentOutputter cco = new ComplexContentOutputter(); cco.setHostLanguage(getPipelineConfiguration().getHostLanguage()); cco.setPipelineConfiguration(getPipelineConfiguration()); cco.setReceiver(reducer); outputter = cco; outputter.setSystemId(systemId); outputter.setPipelineConfiguration(getPipelineConfiguration()); outputter.open(); }
/** * Set the pipeline configuration * @param pipe the pipeline configuration */ public void setPipelineConfiguration(PipelineConfiguration pipe) { this.pipe = pipe; locationProvider = pipe.getLocationProvider(); }
/** * Notify a namespace. Namespaces are notified <b>after</b> the startElement event, and before * any children for the element. The namespaces that are reported are only required * to include those that are different from the parent element; however, duplicates may be reported. * A namespace must not conflict with any namespaces already used for element or attribute names. * @param namespaceCode an integer: the top half is a prefix code, the bottom half a URI code. * These may be translated into an actual prefix and URI using the name pool. A prefix code of * zero represents the empty prefix (that is, the default namespace). A URI code of zero represents * a URI of "", that is, a namespace undeclaration. * @throws IllegalStateException: attempt to output a namespace when there is no open element * start tag */ public void namespace(int namespaceCode, int properties) throws XPathException { if (contentStarted) { throw NoOpenStartTagException.makeNoOpenStartTagException( Type.NAMESPACE, getNamePool().getPrefixFromNamespaceCode(namespaceCode), getPipelineConfiguration().getHostLanguage(), true, getPipelineConfiguration().isSerializing()); } nextReceiver.namespace(namespaceCode, properties); previousAtomic = false; }