[teiid-commits] teiid SVN: r3316 - in branches/7.4.x: engine and 3 other directories.

teiid-commits at lists.jboss.org teiid-commits at lists.jboss.org
Tue Jul 19 09:41:14 EDT 2011


Author: van.halbert
Date: 2011-07-19 09:41:13 -0400 (Tue, 19 Jul 2011)
New Revision: 3316

Modified:
   branches/7.4.x/engine/pom.xml
   branches/7.4.x/engine/src/main/java/org/teiid/query/xquery/saxon/DocumentWrapper.java
   branches/7.4.x/engine/src/main/java/org/teiid/query/xquery/saxon/NodeWrapper.java
   branches/7.4.x/engine/src/main/java/org/teiid/query/xquery/saxon/StreamingUtils.java
   branches/7.4.x/engine/src/test/java/org/teiid/query/function/TestFunction.java
   branches/7.4.x/engine/src/test/java/org/teiid/query/processor/TestSQLXMLProcessing.java
   branches/7.4.x/pom.xml
Log:
SOA-3162 saxon upgrade - this is a 7.4.x update only, not for upstream at the moment

Modified: branches/7.4.x/engine/pom.xml
===================================================================
--- branches/7.4.x/engine/pom.xml	2011-07-18 14:45:50 UTC (rev 3315)
+++ branches/7.4.x/engine/pom.xml	2011-07-19 13:41:13 UTC (rev 3316)
@@ -78,14 +78,8 @@
 
 		<dependency>
 			<groupId>net.sourceforge.saxon</groupId>
-			<artifactId>saxon</artifactId>
+			<artifactId>saxonhe</artifactId>
 		</dependency>
-
-		<dependency>
-			<groupId>net.sourceforge.saxon</groupId>
-			<classifier>dom</classifier>
-			<artifactId>saxon</artifactId>
-		</dependency>
 		
 		<dependency>
 			<groupId>com.googlecode.json-simple</groupId>
@@ -106,4 +100,4 @@
 
 	</dependencies>
 
-</project>
\ No newline at end of file
+</project>

Modified: branches/7.4.x/engine/src/main/java/org/teiid/query/xquery/saxon/DocumentWrapper.java
===================================================================
--- branches/7.4.x/engine/src/main/java/org/teiid/query/xquery/saxon/DocumentWrapper.java	2011-07-18 14:45:50 UTC (rev 3315)
+++ branches/7.4.x/engine/src/main/java/org/teiid/query/xquery/saxon/DocumentWrapper.java	2011-07-19 13:41:13 UTC (rev 3316)
@@ -115,7 +115,7 @@
 	 * @return the unique number identifying this document within the name pool
 	 */
 
-	public int getDocumentNumber() {
+	public long getDocumentNumber() {
 		return documentNumber;
 	}
 
@@ -124,12 +124,16 @@
 	 * 
 	 * @param id
 	 *            the required ID value
+	 * @param getParent
+	 *            true if running the element-with-id() function rather than the id()
+	 *            function; the difference is that in the case of an element of type xs:ID,
+	 *            the parent of the element should be returned, not the element itself.
 	 * @return the element with the given ID, or null if there is no such ID
 	 *         present (or if the parser has not notified attributes as being of
 	 *         type ID).
 	 */
 
-	public NodeInfo selectID(String id) {
+	public NodeInfo selectID(String id, boolean getParent) {
 		if (idIndex == null) {
 			Element elem;
 			switch (nodeKind) {
@@ -145,7 +149,14 @@
 			idIndex = new HashMap(50);
 			buildIDIndex(elem);
 		}
-		return (NodeInfo) idIndex.get(id);
+
+		NodeInfo result = (NodeInfo) idIndex.get(id);
+
+		if (result != null && getParent && result.isId() && result.getStringValue().equals(id)) {
+            result = result.getParent();
+        }
+
+		return result ;
 	}
 	
 	

Modified: branches/7.4.x/engine/src/main/java/org/teiid/query/xquery/saxon/NodeWrapper.java
===================================================================
--- branches/7.4.x/engine/src/main/java/org/teiid/query/xquery/saxon/NodeWrapper.java	2011-07-18 14:45:50 UTC (rev 3315)
+++ branches/7.4.x/engine/src/main/java/org/teiid/query/xquery/saxon/NodeWrapper.java	2011-07-19 13:41:13 UTC (rev 3316)
@@ -160,6 +160,14 @@
 	}
 
 	/**
+	 * Get the real XOM node, to implement the VirtualNode interface
+	 */
+
+	public Object getRealNode() {
+		return node;
+	}
+
+	/**
 	 * Get the name pool for this node
 	 *
 	 * @return the NamePool
@@ -799,7 +807,7 @@
 	 * free-standing orphan node, just return the hashcode.
 	 */
 
-	public int getDocumentNumber() {
+	public long getDocumentNumber() {
 		return docWrapper.getDocumentNumber();
 	}
 

Modified: branches/7.4.x/engine/src/main/java/org/teiid/query/xquery/saxon/StreamingUtils.java
===================================================================
--- branches/7.4.x/engine/src/main/java/org/teiid/query/xquery/saxon/StreamingUtils.java	2011-07-18 14:45:50 UTC (rev 3315)
+++ branches/7.4.x/engine/src/main/java/org/teiid/query/xquery/saxon/StreamingUtils.java	2011-07-19 13:41:13 UTC (rev 3316)
@@ -256,6 +256,7 @@
 
 	public void close() throws XPathException {
 		reciever.close();
+		super.close();
 	}
 
 	public void comment(CharSequence content, int locationId, int properties)
@@ -265,6 +266,7 @@
 
 	public void endDocument() throws XPathException {
 		reciever.endDocument();
+		super.endDocument() ;
 	}
 
 	public void endElement() throws XPathException {
@@ -285,6 +287,7 @@
 	}
 
 	public void open() throws XPathException {
+		super.open();
 		reciever.open();
 	}
 
@@ -295,10 +298,12 @@
 
 	public void setPipelineConfiguration(PipelineConfiguration config) {
 		reciever.setPipelineConfiguration(config);
+		super.setPipelineConfiguration(config);
 	}
 
 	public void setSystemId(String systemId) {
 		reciever.setSystemId(systemId);
+		super.setSystemId(systemId);
 	}
 
 	public void setUnparsedEntity(String name, String systemID,
@@ -311,6 +316,7 @@
 	}
 
 	public void startDocument(int properties) throws XPathException {
+		super.startDocument(properties);
 		reciever.startDocument(properties);
 	}
 

Modified: branches/7.4.x/engine/src/test/java/org/teiid/query/function/TestFunction.java
===================================================================
--- branches/7.4.x/engine/src/test/java/org/teiid/query/function/TestFunction.java	2011-07-18 14:45:50 UTC (rev 3315)
+++ branches/7.4.x/engine/src/test/java/org/teiid/query/function/TestFunction.java	2011-07-19 13:41:13 UTC (rev 3316)
@@ -1000,9 +1000,10 @@
     }
 
     @Test public void testTimestampDiffTimeStamp_Day_1() throws Exception {
+    	// Moving to June, March fails because of DST
         helpTestTimestampDiff(NonReserved.SQL_TSI_DAY,
-                              TimestampUtil.createTimestamp((2004-1900), 2, 1, 0, 0, 0, 0),
-                              TimestampUtil.createTimestamp((2004-1900), 3, 1, 0, 0, 0, 0),
+                              TimestampUtil.createTimestamp((2004-1900), 4, 1, 0, 0, 0, 0),
+                              TimestampUtil.createTimestamp((2004-1900), 5, 1, 0, 0, 0, 0),
                               new Long(31));
     }
 

Modified: branches/7.4.x/engine/src/test/java/org/teiid/query/processor/TestSQLXMLProcessing.java
===================================================================
--- branches/7.4.x/engine/src/test/java/org/teiid/query/processor/TestSQLXMLProcessing.java	2011-07-18 14:45:50 UTC (rev 3315)
+++ branches/7.4.x/engine/src/test/java/org/teiid/query/processor/TestSQLXMLProcessing.java	2011-07-19 13:41:13 UTC (rev 3316)
@@ -202,8 +202,8 @@
         String sql = "select * from xmltable('/a/b' passing convert('<a><b>first</b><b x=\"1\">second</b></a>', xml) columns val xml path '.') as x"; //$NON-NLS-1$
         
         List<?>[] expected = new List<?>[] {
-        		Arrays.asList("<b>first</b>"),
-        		Arrays.asList("<b x=\"1\">second</b>"),
+        		Arrays.asList("<b xmlns=\"\">first</b>"),
+        		Arrays.asList("<b xmlns=\"\" x=\"1\">second</b>"),
         };    
     
         process(sql, expected);
@@ -286,7 +286,7 @@
     	String sql = "select xmlquery('/a/b' passing xmlparse(document '<a><b x=''1''/><b x=''2''/></a>') null on empty)"; //$NON-NLS-1$
         
         List<?>[] expected = new List<?>[] {
-        		Arrays.asList("<b x=\"1\"/><b x=\"2\"/>")
+        		Arrays.asList("<b xmlns=\"\" x=\"1\"/><b xmlns=\"\" x=\"2\"/>")
         };    
     
         process(sql, expected);

Modified: branches/7.4.x/pom.xml
===================================================================
--- branches/7.4.x/pom.xml	2011-07-18 14:45:50 UTC (rev 3315)
+++ branches/7.4.x/pom.xml	2011-07-19 13:41:13 UTC (rev 3316)
@@ -439,16 +439,10 @@
             </dependency>            
 			<dependency>
 				<groupId>net.sourceforge.saxon</groupId>
-				<artifactId>saxon</artifactId>
-				<version>9.1.0.8</version>
+				<artifactId>saxonhe</artifactId>
+				<version>9.2.1.5</version>
 			</dependency>
 			<dependency>
-				<groupId>net.sourceforge.saxon</groupId>
-				<artifactId>saxon</artifactId>
-				<classifier>dom</classifier>
-				<version>9.1.0.8</version>
-			</dependency>
-			<dependency>
 				<groupId>org.jboss.netty</groupId>
 				<artifactId>netty</artifactId>
 				<version>3.2.1.Final</version>
@@ -493,4 +487,4 @@
             <url>https://repository.jboss.org/nexus/content/repositories/snapshots/</url>
         </snapshotRepository>
     </distributionManagement>
-</project>
\ No newline at end of file
+</project>



More information about the teiid-commits mailing list