Author: nandana
Date: Sun May 18 22:45:16 2008
New Revision: 657727
URL: http://svn.apache.org/viewvc?rev=657727&view=rev
Log:
RAMPART-168 using the attached and unattached references according to policy
Modified:
webservices/rampart/branches/java/1_4/modules/rampart-core/src/main/java/org/apache/rampart/builder/BindingBuilder.java
Modified:
webservices/rampart/branches/java/1_4/modules/rampart-core/src/main/java/org/apache/rampart/builder/BindingBuilder.java
URL:
http://svn.apache.org/viewvc/webservices/rampart/branches/java/1_4/modules/rampart-core/src/main/java/org/apache/rampart/builder/BindingBuilder.java?rev=657727&r1=657726&r2=657727&view=diff
==============================================================================
---
webservices/rampart/branches/java/1_4/modules/rampart-core/src/main/java/org/apache/rampart/builder/BindingBuilder.java
(original)
+++
webservices/rampart/branches/java/1_4/modules/rampart-core/src/main/java/org/apache/rampart/builder/BindingBuilder.java
Sun May 18 22:45:16 2008
@@ -501,11 +501,25 @@
if(policyToken.isDerivedKeys()) {
try {
WSSecDKSign dkSign = new WSSecDKSign();
-
- OMElement ref = tok.getAttachedReference();
- if(ref == null) {
+
+ //Check for whether the token is attached in the message or not
+ boolean attached = false;
+
+ if (SPConstants.INCLUDE_TOEKN_ALWAYS ==
policyToken.getInclusion() ||
+ SPConstants.INCLUDE_TOKEN_ONCE ==
policyToken.getInclusion() ||
+ (rmd.isInitiator() &&
SPConstants.INCLUDE_TOEKN_ALWAYS_TO_RECIPIENT
+ == policyToken.getInclusion())) {
+ attached = true;
+ }
+
+ // Setting the AttachedReference or the UnattachedReference
according to the flag
+ OMElement ref;
+ if (attached == true) {
+ ref = tok.getAttachedReference();
+ } else {
ref = tok.getUnattachedReference();
}
+
if(ref != null) {
dkSign.setExternalKey(tok.getSecret(), (Element)
doc.importNode((Element) ref, true));