net.sf.saxon.xqj
Class SaxonXQExpression

java.lang.Object
  extended by net.sf.saxon.xqj.Closable
      extended by net.sf.saxon.xqj.SaxonXQDynamicContext
          extended by net.sf.saxon.xqj.SaxonXQExpression
All Implemented Interfaces:
javax.xml.xquery.XQDynamicContext, javax.xml.xquery.XQExpression

public class SaxonXQExpression
extends SaxonXQDynamicContext
implements javax.xml.xquery.XQExpression

Saxon implementation of the XQJ XQExpression interface


Field Summary
 
Fields inherited from class net.sf.saxon.xqj.SaxonXQDynamicContext
connection
 
Method Summary
 void cancel()
          Attempts to cancel the execution if both the XQuery engine and XQJ driver support aborting the execution of an XQExpression.
 void executeCommand(Reader command)
          Executes an implementation-defined command.
 void executeCommand(String command)
          Executes an implementation-defined command.
 javax.xml.xquery.XQResultSequence executeQuery(InputStream query)
          Executes a query expression.
 javax.xml.xquery.XQResultSequence executeQuery(Reader query)
          Executes a query expression.
 javax.xml.xquery.XQResultSequence executeQuery(String query)
          Executes a query expression.
protected  boolean externalVariableExists(QName name)
           
protected  SaxonXQDataFactory getDataFactory()
           
protected  DynamicQueryContext getDynamicContext()
           
 javax.xml.xquery.XQStaticContext getStaticContext()
          Gets an XQStaticContext representing the values for all expression properties.
 
Methods inherited from class net.sf.saxon.xqj.SaxonXQDynamicContext
bindAtomicValue, bindBoolean, bindByte, bindDocument, bindDocument, bindDocument, bindDocument, bindDocument, bindDouble, bindFloat, bindInt, bindItem, bindLong, bindNode, bindObject, bindSequence, bindShort, bindString, getConfiguration, getImplicitTimeZone, setImplicitTimeZone
 
Methods inherited from class net.sf.saxon.xqj.Closable
close, isClosed, setClosableContainer
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface javax.xml.xquery.XQExpression
close, isClosed
 
Methods inherited from interface javax.xml.xquery.XQDynamicContext
bindAtomicValue, bindBoolean, bindByte, bindDocument, bindDocument, bindDocument, bindDocument, bindDocument, bindDouble, bindFloat, bindInt, bindItem, bindLong, bindNode, bindObject, bindSequence, bindShort, bindString, getImplicitTimeZone, setImplicitTimeZone
 

Method Detail

getDynamicContext

protected DynamicQueryContext getDynamicContext()
Specified by:
getDynamicContext in class SaxonXQDynamicContext

getDataFactory

protected SaxonXQDataFactory getDataFactory()
                                     throws javax.xml.xquery.XQException
Specified by:
getDataFactory in class SaxonXQDynamicContext
Throws:
javax.xml.xquery.XQException

cancel

public void cancel()
            throws javax.xml.xquery.XQException
Description copied from interface: javax.xml.xquery.XQExpression
Attempts to cancel the execution if both the XQuery engine and XQJ driver support aborting the execution of an XQExpression. This method can be used by one thread to cancel an XQExpression, that is being executed in another thread. If cancellation is not supported or the attempt to cancel the execution was not successful, the method returns without any error. If the cancellation is successful, an XQException is thrown, to indicate that it has been aborted, by executeQuery, executeCommand or any method accessing the XQResultSequence returned by executeQuery. If applicable, any open XQResultSequence and XQResultItem objects will also be implicitly closed in this case.

Specified by:
cancel in interface javax.xml.xquery.XQExpression
Throws:
javax.xml.xquery.XQException - if the expression is in a closed state

executeCommand

public void executeCommand(Reader command)
                    throws javax.xml.xquery.XQException
Description copied from interface: javax.xml.xquery.XQExpression
Executes an implementation-defined command. Calling this method implicitly closes any previous result sequence obtained from this expression.

Specified by:
executeCommand in interface javax.xml.xquery.XQExpression
Parameters:
command - the input command as a string reader
Throws:
javax.xml.xquery.XQException - if (1) there are errors when executing the command, (2) the expression is in a closed state, or (3) the execution is cancelled

executeCommand

public void executeCommand(String command)
                    throws javax.xml.xquery.XQException
Description copied from interface: javax.xml.xquery.XQExpression
Executes an implementation-defined command. Calling this method implicitly closes any previous result sequence obtained from this expression.

Specified by:
executeCommand in interface javax.xml.xquery.XQExpression
Parameters:
command - the input command as a string
Throws:
javax.xml.xquery.XQException - if (1) there are errors when executing the command, or (2) the expression is in a closed state

executeQuery

public javax.xml.xquery.XQResultSequence executeQuery(InputStream query)
                                               throws javax.xml.xquery.XQException
Description copied from interface: javax.xml.xquery.XQExpression
Executes a query expression. This implicitly closes any previous result sequences obtained from this expression. If the query specifies a version declaration including an encoding, the XQJ implementation may try use this information to parse the query. In absence of the version declaration, the assumed encoding is implementation dependent.

Specified by:
executeQuery in interface javax.xml.xquery.XQExpression
Parameters:
query - the input query expression as a input stream object. Cannot be null
Returns:
an XQResultSequence containing the result of the query execution
Throws:
javax.xml.xquery.XQException - if (1) there are errors when executing the query, (2) the expression is in a closed state, (3) the execution is cancelled, or (4) the xquery parameter is null

executeQuery

public javax.xml.xquery.XQResultSequence executeQuery(Reader query)
                                               throws javax.xml.xquery.XQException
Description copied from interface: javax.xml.xquery.XQExpression
Executes a query expression. This implicitly closes any previous result sequences obtained from this expression.

Specified by:
executeQuery in interface javax.xml.xquery.XQExpression
Parameters:
query - the input query expression as a reader object. Cannot be null
Returns:
an XQResultSequence object containing the result of the query execution
Throws:
javax.xml.xquery.XQException - if (1) there are errors when executing the query, (2) the expression is in a closed state, (3) the execution is cancelled, or (4) the query parameter is null

executeQuery

public javax.xml.xquery.XQResultSequence executeQuery(String query)
                                               throws javax.xml.xquery.XQException
Description copied from interface: javax.xml.xquery.XQExpression
Executes a query expression. This implicitly closes any previous result sequences obtained from this expression.

Specified by:
executeQuery in interface javax.xml.xquery.XQExpression
Parameters:
query - the input query expression string. Cannot be null
Returns:
an XQResultSequence object containing the result of the query execution
Throws:
javax.xml.xquery.XQException - if (1) there are errors when executing the query, (2) the expression is in a closed state, (3) the execution is cancelled, (4) the query parameter is null

getStaticContext

public javax.xml.xquery.XQStaticContext getStaticContext()
                                                  throws javax.xml.xquery.XQException
Description copied from interface: javax.xml.xquery.XQExpression
Gets an XQStaticContext representing the values for all expression properties. Note that these properties cannot be changed; in order to change, a new XQExpression needs to be created.

Specified by:
getStaticContext in interface javax.xml.xquery.XQExpression
Returns:
an XQStaticContext representing the values for all expression properties
Throws:
javax.xml.xquery.XQException - if the expression is in a closed state

externalVariableExists

protected boolean externalVariableExists(QName name)
Specified by:
externalVariableExists in class SaxonXQDynamicContext


Copyright (c) Saxonica Limited. All rights reserved.