You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@commons.apache.org by dm...@apache.org on 2002/05/09 01:19:31 UTC
cvs commit: jakarta-commons/jxpath/src/java/org/apache/commons/jxpath JXPathContext.java
dmitri 02/05/08 16:19:31
Modified: jxpath/src/java/org/apache/commons/jxpath/ri
JXPathContextReferenceImpl.java
jxpath/src/java/org/apache/commons/jxpath JXPathContext.java
Log:
"compile" is now a static method
Revision Changes Path
1.17 +5 -5 jakarta-commons/jxpath/src/java/org/apache/commons/jxpath/ri/JXPathContextReferenceImpl.java
Index: JXPathContextReferenceImpl.java
===================================================================
RCS file: /home/cvs/jakarta-commons/jxpath/src/java/org/apache/commons/jxpath/ri/JXPathContextReferenceImpl.java,v
retrieving revision 1.16
retrieving revision 1.17
diff -u -r1.16 -r1.17
--- JXPathContextReferenceImpl.java 8 May 2002 23:05:05 -0000 1.16
+++ JXPathContextReferenceImpl.java 8 May 2002 23:19:31 -0000 1.17
@@ -1,7 +1,7 @@
/*
- * $Header: /home/cvs/jakarta-commons/jxpath/src/java/org/apache/commons/jxpath/ri/JXPathContextReferenceImpl.java,v 1.16 2002/05/08 23:05:05 dmitri Exp $
- * $Revision: 1.16 $
- * $Date: 2002/05/08 23:05:05 $
+ * $Header: /home/cvs/jakarta-commons/jxpath/src/java/org/apache/commons/jxpath/ri/JXPathContextReferenceImpl.java,v 1.17 2002/05/08 23:19:31 dmitri Exp $
+ * $Revision: 1.17 $
+ * $Date: 2002/05/08 23:19:31 $
*
* ====================================================================
* The Apache Software License, Version 1.1
@@ -84,7 +84,7 @@
* The reference implementation of JXPathContext.
*
* @author Dmitri Plotnikov
- * @version $Revision: 1.16 $ $Date: 2002/05/08 23:05:05 $
+ * @version $Revision: 1.17 $ $Date: 2002/05/08 23:19:31 $
*/
public class JXPathContextReferenceImpl extends JXPathContext
{
@@ -147,7 +147,7 @@
return nodeFactoryArray;
}
- public CompiledExpression compile(String xpath){
+ protected CompiledExpression compilePath(String xpath){
return new JXPathCompiledExpression(xpath, compileExpression(xpath));
}
1.9 +18 -5 jakarta-commons/jxpath/src/java/org/apache/commons/jxpath/JXPathContext.java
Index: JXPathContext.java
===================================================================
RCS file: /home/cvs/jakarta-commons/jxpath/src/java/org/apache/commons/jxpath/JXPathContext.java,v
retrieving revision 1.8
retrieving revision 1.9
diff -u -r1.8 -r1.9
--- JXPathContext.java 8 May 2002 23:05:05 -0000 1.8
+++ JXPathContext.java 8 May 2002 23:19:31 -0000 1.9
@@ -1,7 +1,7 @@
/*
- * $Header: /home/cvs/jakarta-commons/jxpath/src/java/org/apache/commons/jxpath/JXPathContext.java,v 1.8 2002/05/08 23:05:05 dmitri Exp $
- * $Revision: 1.8 $
- * $Date: 2002/05/08 23:05:05 $
+ * $Header: /home/cvs/jakarta-commons/jxpath/src/java/org/apache/commons/jxpath/JXPathContext.java,v 1.9 2002/05/08 23:19:31 dmitri Exp $
+ * $Revision: 1.9 $
+ * $Date: 2002/05/08 23:19:31 $
*
* ====================================================================
* The Apache Software License, Version 1.1
@@ -404,7 +404,7 @@
* Also see <a href="http://www.w3.org/TR/xpath">XML Path Language (XPath) Version 1.0 </a>
*
* @author Dmitri Plotnikov
- * @version $Revision: 1.8 $ $Date: 2002/05/08 23:05:05 $
+ * @version $Revision: 1.9 $ $Date: 2002/05/08 23:19:31 $
*/
public abstract class JXPathContext {
protected JXPathContext parentContext;
@@ -415,6 +415,8 @@
protected Locale locale;
protected boolean lenient = false;
+ private static JXPathContext compilationContext;
+
/**
* Creates a new JXPathContext with the specified bean as the root node.
*/
@@ -543,7 +545,18 @@
* and there is a convenient place to cache CompiledExpression
* between invocations.
*/
- public abstract CompiledExpression compile(String xpath);
+ public static CompiledExpression compile(String xpath){
+ if (compilationContext == null){
+ compilationContext = JXPathContext.newContext(null);
+ }
+ return compilationContext.compilePath(xpath);
+ }
+
+ /**
+ * Overridden by each concrete implementation of JXPathContext
+ * to perform compilation.
+ */
+ protected abstract CompiledExpression compilePath(String xpath);
/**
* Evaluates the xpath and returns the resulting object. Primitive
--
To unsubscribe, e-mail: <ma...@jakarta.apache.org>
For additional commands, e-mail: <ma...@jakarta.apache.org>