You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@santuario.apache.org by co...@apache.org on 2013/03/07 11:32:17 UTC
svn commit: r1453761 - in
/santuario/xml-security-java/trunk/src/main/java/org/apache/xml/security/signature:
Reference.java reference/ReferenceSubTreeData.java
Author: coheigea
Date: Thu Mar 7 10:32:17 2013
New Revision: 1453761
URL: http://svn.apache.org/r1453761
Log:
[SANTUARIO-353] - ReferenceSubTreeData.iterator() does not return nodes in document order
Modified:
santuario/xml-security-java/trunk/src/main/java/org/apache/xml/security/signature/Reference.java
santuario/xml-security-java/trunk/src/main/java/org/apache/xml/security/signature/reference/ReferenceSubTreeData.java
Modified: santuario/xml-security-java/trunk/src/main/java/org/apache/xml/security/signature/Reference.java
URL: http://svn.apache.org/viewvc/santuario/xml-security-java/trunk/src/main/java/org/apache/xml/security/signature/Reference.java?rev=1453761&r1=1453760&r2=1453761&view=diff
==============================================================================
--- santuario/xml-security-java/trunk/src/main/java/org/apache/xml/security/signature/Reference.java (original)
+++ santuario/xml-security-java/trunk/src/main/java/org/apache/xml/security/signature/Reference.java Thu Mar 7 10:32:17 2013
@@ -612,7 +612,27 @@ public class Reference extends Signature
try {
final Set<Node> s = input.getNodeSet();
referenceData = new ReferenceNodeSetData() {
- public Iterator<Node> iterator() { return s.iterator(); }
+ public Iterator<Node> iterator() {
+ return new Iterator<Node>() {
+
+ Iterator<Node> sIterator = s.iterator();
+
+ @Override
+ public boolean hasNext() {
+ return sIterator.hasNext();
+ }
+
+ @Override
+ public Node next() {
+ return sIterator.next();
+ }
+
+ @Override
+ public void remove() {
+ throw new UnsupportedOperationException();
+ }
+ };
+ }
};
} catch (Exception e) {
// log a warning
Modified: santuario/xml-security-java/trunk/src/main/java/org/apache/xml/security/signature/reference/ReferenceSubTreeData.java
URL: http://svn.apache.org/viewvc/santuario/xml-security-java/trunk/src/main/java/org/apache/xml/security/signature/reference/ReferenceSubTreeData.java?rev=1453761&r1=1453760&r2=1453761&view=diff
==============================================================================
--- santuario/xml-security-java/trunk/src/main/java/org/apache/xml/security/signature/reference/ReferenceSubTreeData.java (original)
+++ santuario/xml-security-java/trunk/src/main/java/org/apache/xml/security/signature/reference/ReferenceSubTreeData.java Thu Mar 7 10:32:17 2013
@@ -131,13 +131,13 @@ public class ReferenceSubTreeData implem
{
switch (node.getNodeType()) {
case Node.ELEMENT_NODE :
+ nodeSet.add(node);
NamedNodeMap attrs = node.getAttributes();
if (attrs != null) {
for (int i = 0, len = attrs.getLength(); i < len; i++) {
nodeSet.add(attrs.item(i));
}
}
- nodeSet.add(node);
Node pSibling = null;
for (Node child = node.getFirstChild(); child != null;
child = child.getNextSibling()) {