You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@santuario.apache.org by mu...@apache.org on 2007/07/24 14:44:32 UTC

svn commit: r559028 - /xml/security/branches/stax_jsr105/src/com/r_bg/stax/XMLSignatureWorker.java

Author: mullan
Date: Tue Jul 24 05:44:31 2007
New Revision: 559028

URL: http://svn.apache.org/viewvc?view=rev&rev=559028
Log:
Implement XMLSignature.getKeySelectorResult.
Return unmodifiable list from XMLSignature.getObjects.

Modified:
    xml/security/branches/stax_jsr105/src/com/r_bg/stax/XMLSignatureWorker.java

Modified: xml/security/branches/stax_jsr105/src/com/r_bg/stax/XMLSignatureWorker.java
URL: http://svn.apache.org/viewvc/xml/security/branches/stax_jsr105/src/com/r_bg/stax/XMLSignatureWorker.java?view=diff&rev=559028&r1=559027&r2=559028
==============================================================================
--- xml/security/branches/stax_jsr105/src/com/r_bg/stax/XMLSignatureWorker.java (original)
+++ xml/security/branches/stax_jsr105/src/com/r_bg/stax/XMLSignatureWorker.java Tue Jul 24 05:44:31 2007
@@ -10,6 +10,7 @@
 import java.security.spec.AlgorithmParameterSpec;
 import java.util.ArrayList;
 import java.util.Arrays;
+import java.util.Collections;
 import java.util.List;
 
 import javax.xml.crypto.Data;
@@ -569,11 +570,12 @@
 
 public class XMLSignatureWorker implements StaxWorker,XMLSignature {		
 	SignedInfoWorker si;
-	SignatureValueWorker sv;
-	XMLObjectWorker xo;
-	KeyInfoWorker ki;
+	private SignatureValueWorker sv;
+	private XMLObjectWorker xo;
+	private KeyInfoWorker ki;
 	private String id;
 	private List<XMLObject> xmlObjects = new ArrayList<XMLObject>();
+	private KeySelectorResult ksr;
 	public StaxWorker read(XMLStreamReader reader) {
 		switch (reader.getEventType()) {
 		  case XMLStreamReader.START_ELEMENT:
@@ -609,6 +611,7 @@
 		return null;
 	}
 	public boolean validate(XMLValidateContext validateContext) throws XMLSignatureException {
+		if (validateContext == null) throw new NullPointerException();
 		StaxValidateContext ctx=(StaxValidateContext) validateContext;
 		try {
 			for (Reference ref: si.references) {
@@ -617,7 +620,6 @@
 			}
 			SignatureAlgorithm sa=new SignatureAlgorithm(si.signatureMethod);
 			// get key from KeySelector
-                        KeySelectorResult ksr = null;
                         try {
                             ksr = ctx.getKeySelector().select(getKeyInfo(), 
 				KeySelector.Purpose.VERIFY, 
@@ -630,11 +632,8 @@
 			sa.update(si.bos.toByteArray());			
 			return sa.verify(sv.getValue());
 		} catch (org.apache.xml.security.signature.XMLSignatureException e) {
-			// TODO Auto-generated catch block
-			e.printStackTrace();
+			throw new XMLSignatureException(e);
 		}
-		
-		return false;
 	}
 	public KeyInfo getKeyInfo() {
 		return ki;
@@ -643,7 +642,7 @@
 		return si;
 	}
 	public List getObjects() {
-		return xmlObjects;
+		return Collections.unmodifiableList(xmlObjects);
 	}
 	public String getId() {
 		return id;
@@ -653,15 +652,12 @@
 	}
 	public void sign(XMLSignContext signContext) throws MarshalException, XMLSignatureException {
 		// TODO Auto-generated method stub
-		
+		throw new UnsupportedOperationException();
 	}
 	public KeySelectorResult getKeySelectorResult() {
-		// TODO Auto-generated method stub
-		return null;
+		return ksr;
 	}
 	public boolean isFeatureSupported(String feature) {
-		// TODO Auto-generated method stub
 		return false;
 	}
-	
 }