You are viewing a plain text version of this content. The canonical link for it is here.
Posted to sandesha-dev@ws.apache.org by ch...@apache.org on 2006/09/07 09:38:59 UTC

svn commit: r441007 - in /webservices/sandesha/trunk/java/src/org/apache/sandesha2: client/ msgprocessors/ util/ wsrm/

Author: chamikara
Date: Thu Sep  7 00:38:58 2006
New Revision: 441007

URL: http://svn.apache.org/viewvc?view=rev&rev=441007
Log:
Removed the 'factory' from the Constructor of some more elements.
Added the UsesSequenceSTR from Matts patch.


Added:
    webservices/sandesha/trunk/java/src/org/apache/sandesha2/wsrm/UsesSequenceSTR.java
Modified:
    webservices/sandesha/trunk/java/src/org/apache/sandesha2/client/SandeshaClient.java
    webservices/sandesha/trunk/java/src/org/apache/sandesha2/msgprocessors/AcknowledgementProcessor.java
    webservices/sandesha/trunk/java/src/org/apache/sandesha2/util/RMMsgCreator.java
    webservices/sandesha/trunk/java/src/org/apache/sandesha2/util/SandeshaUtil.java
    webservices/sandesha/trunk/java/src/org/apache/sandesha2/wsrm/AcknowledgementRange.java
    webservices/sandesha/trunk/java/src/org/apache/sandesha2/wsrm/CloseSequence.java
    webservices/sandesha/trunk/java/src/org/apache/sandesha2/wsrm/CloseSequenceResponse.java
    webservices/sandesha/trunk/java/src/org/apache/sandesha2/wsrm/CreateSequence.java
    webservices/sandesha/trunk/java/src/org/apache/sandesha2/wsrm/CreateSequenceResponse.java
    webservices/sandesha/trunk/java/src/org/apache/sandesha2/wsrm/Nack.java
    webservices/sandesha/trunk/java/src/org/apache/sandesha2/wsrm/RMElements.java
    webservices/sandesha/trunk/java/src/org/apache/sandesha2/wsrm/SequenceAcknowledgement.java

Modified: webservices/sandesha/trunk/java/src/org/apache/sandesha2/client/SandeshaClient.java
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/java/src/org/apache/sandesha2/client/SandeshaClient.java?view=diff&rev=441007&r1=441006&r2=441007
==============================================================================
--- webservices/sandesha/trunk/java/src/org/apache/sandesha2/client/SandeshaClient.java (original)
+++ webservices/sandesha/trunk/java/src/org/apache/sandesha2/client/SandeshaClient.java Thu Sep  7 00:38:58 2006
@@ -777,7 +777,7 @@
 
 		String rmNamespaceValue = SpecSpecificConstants.getRMNamespaceValue(rmSpecVersion);
 
-		CloseSequence closeSequence = new CloseSequence(factory, rmNamespaceValue);
+		CloseSequence closeSequence = new CloseSequence(rmNamespaceValue);
 		Identifier identifier = new Identifier(rmNamespaceValue);
 		identifier.setIndentifer(sequenceID);
 		closeSequence.setIdentifier(identifier);

Modified: webservices/sandesha/trunk/java/src/org/apache/sandesha2/msgprocessors/AcknowledgementProcessor.java
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/java/src/org/apache/sandesha2/msgprocessors/AcknowledgementProcessor.java?view=diff&rev=441007&r1=441006&r2=441007
==============================================================================
--- webservices/sandesha/trunk/java/src/org/apache/sandesha2/msgprocessors/AcknowledgementProcessor.java (original)
+++ webservices/sandesha/trunk/java/src/org/apache/sandesha2/msgprocessors/AcknowledgementProcessor.java Thu Sep  7 00:38:58 2006
@@ -76,7 +76,7 @@
 			Iterator acks = header.getChildrenWithName(headerName);
 			while(acks.hasNext()) {
 				OMElement ack = (OMElement) acks.next();
-				SequenceAcknowledgement seqAck = new SequenceAcknowledgement(null, headerName.getNamespaceURI());
+				SequenceAcknowledgement seqAck = new SequenceAcknowledgement(headerName.getNamespaceURI());
 			  seqAck.fromOMElement(ack);
 			  processAckHeader(message, seqAck);
 			}

Modified: webservices/sandesha/trunk/java/src/org/apache/sandesha2/util/RMMsgCreator.java
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/java/src/org/apache/sandesha2/util/RMMsgCreator.java?view=diff&rev=441007&r1=441006&r2=441007
==============================================================================
--- webservices/sandesha/trunk/java/src/org/apache/sandesha2/util/RMMsgCreator.java (original)
+++ webservices/sandesha/trunk/java/src/org/apache/sandesha2/util/RMMsgCreator.java Thu Sep  7 00:38:58 2006
@@ -262,7 +262,7 @@
 		String addressingNamespaceValue = SandeshaUtil.getSequenceProperty(internalSequenceId,
 				Sandesha2Constants.SequenceProperties.ADDRESSING_NAMESPACE_VALUE, storageManager);
 
-		CreateSequence createSequencePart = new CreateSequence(factory, rmNamespaceValue, addressingNamespaceValue);
+		CreateSequence createSequencePart = new CreateSequence(rmNamespaceValue, addressingNamespaceValue);
 
 		// Adding sequence offer - if present
 		OperationContext operationcontext = applicationMsgContext.getOperationContext();
@@ -475,7 +475,7 @@
 		String addressingNamespaceValue = SandeshaUtil.getSequenceProperty(newSequenceID,
 				Sandesha2Constants.SequenceProperties.ADDRESSING_NAMESPACE_VALUE, storageManager);
 
-		CreateSequenceResponse response = new CreateSequenceResponse(factory, rmNamespaceValue,
+		CreateSequenceResponse response = new CreateSequenceResponse(rmNamespaceValue,
 				addressingNamespaceValue);
 
 		Identifier identifier = new Identifier(rmNamespaceValue);
@@ -588,7 +588,7 @@
 		String namespace = closeSeqRMMsg.getRMNamespaceValue();
 		closeSeqResponseRMMsg.setRMNamespaceValue(namespace);
 
-		CloseSequenceResponse closeSequenceResponse = new CloseSequenceResponse(factory, namespace);
+		CloseSequenceResponse closeSequenceResponse = new CloseSequenceResponse(namespace);
 		Identifier identifier = new Identifier(namespace);
 		identifier.setIndentifer(sequenceID);
 		closeSequenceResponse.setIdentifier(identifier);
@@ -640,7 +640,7 @@
 
 		String rmNamespaceValue = SpecSpecificConstants.getRMNamespaceValue(rmVersion);
 
-		SequenceAcknowledgement sequenceAck = new SequenceAcknowledgement(factory, rmNamespaceValue);
+		SequenceAcknowledgement sequenceAck = new SequenceAcknowledgement(rmNamespaceValue);
 		Identifier id = new Identifier(rmNamespaceValue);
 		id.setIndentifer(sequenceId);
 		sequenceAck.setIdentifier(id);

Modified: webservices/sandesha/trunk/java/src/org/apache/sandesha2/util/SandeshaUtil.java
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/java/src/org/apache/sandesha2/util/SandeshaUtil.java?view=diff&rev=441007&r1=441006&r2=441007
==============================================================================
--- webservices/sandesha/trunk/java/src/org/apache/sandesha2/util/SandeshaUtil.java (original)
+++ webservices/sandesha/trunk/java/src/org/apache/sandesha2/util/SandeshaUtil.java Thu Sep  7 00:38:58 2006
@@ -131,7 +131,7 @@
 				completed = false;
 			} else {
 				// add ackRange (lower,upper)
-				AcknowledgementRange ackRange = new AcknowledgementRange(factory, rmNamespaceValue);
+				AcknowledgementRange ackRange = new AcknowledgementRange(rmNamespaceValue);
 				ackRange.setLowerValue(lower);
 				ackRange.setUpperValue(upper);
 				ackRanges.add(ackRange);
@@ -143,7 +143,7 @@
 		}
 
 		if (!completed) {
-			AcknowledgementRange ackRange = new AcknowledgementRange(factory, rmNamespaceValue);
+			AcknowledgementRange ackRange = new AcknowledgementRange(rmNamespaceValue);
 			ackRange.setLowerValue(lower);
 			ackRange.setUpperValue(upper);
 			ackRanges.add(ackRange);

Modified: webservices/sandesha/trunk/java/src/org/apache/sandesha2/wsrm/AcknowledgementRange.java
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/java/src/org/apache/sandesha2/wsrm/AcknowledgementRange.java?view=diff&rev=441007&r1=441006&r2=441007
==============================================================================
--- webservices/sandesha/trunk/java/src/org/apache/sandesha2/wsrm/AcknowledgementRange.java (original)
+++ webservices/sandesha/trunk/java/src/org/apache/sandesha2/wsrm/AcknowledgementRange.java Thu Sep  7 00:38:58 2006
@@ -41,7 +41,7 @@
 	
 	private String namespaceValue = null;
 	
-	public AcknowledgementRange(OMFactory factory, String namespaceValue) throws SandeshaException {
+	public AcknowledgementRange(String namespaceValue) throws SandeshaException {
 		if (!isNamespaceSupported(namespaceValue))
 			throw new SandeshaException (SandeshaMessageHelper.getMessage(
 					SandeshaMessageKeys.unknownSpec,

Modified: webservices/sandesha/trunk/java/src/org/apache/sandesha2/wsrm/CloseSequence.java
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/java/src/org/apache/sandesha2/wsrm/CloseSequence.java?view=diff&rev=441007&r1=441006&r2=441007
==============================================================================
--- webservices/sandesha/trunk/java/src/org/apache/sandesha2/wsrm/CloseSequence.java (original)
+++ webservices/sandesha/trunk/java/src/org/apache/sandesha2/wsrm/CloseSequence.java Thu Sep  7 00:38:58 2006
@@ -40,7 +40,7 @@
 	
 	private String namespaceValue = null;
 	
-	public CloseSequence(OMFactory factory, String namespaceValue) throws SandeshaException {
+	public CloseSequence(String namespaceValue) throws SandeshaException {
 		if (!isNamespaceSupported(namespaceValue))
 			throw new SandeshaException (SandeshaMessageHelper.getMessage(
 					SandeshaMessageKeys.unknownSpec,

Modified: webservices/sandesha/trunk/java/src/org/apache/sandesha2/wsrm/CloseSequenceResponse.java
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/java/src/org/apache/sandesha2/wsrm/CloseSequenceResponse.java?view=diff&rev=441007&r1=441006&r2=441007
==============================================================================
--- webservices/sandesha/trunk/java/src/org/apache/sandesha2/wsrm/CloseSequenceResponse.java (original)
+++ webservices/sandesha/trunk/java/src/org/apache/sandesha2/wsrm/CloseSequenceResponse.java Thu Sep  7 00:38:58 2006
@@ -39,7 +39,7 @@
 	
 	private String namespaceValue = null;
 	
-	public CloseSequenceResponse(OMFactory factory, String namespaceValue) throws SandeshaException {
+	public CloseSequenceResponse(String namespaceValue) throws SandeshaException {
 		if (!isNamespaceSupported(namespaceValue))
 			throw new SandeshaException (SandeshaMessageHelper.getMessage(
 					SandeshaMessageKeys.unknownSpec,

Modified: webservices/sandesha/trunk/java/src/org/apache/sandesha2/wsrm/CreateSequence.java
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/java/src/org/apache/sandesha2/wsrm/CreateSequence.java?view=diff&rev=441007&r1=441006&r2=441007
==============================================================================
--- webservices/sandesha/trunk/java/src/org/apache/sandesha2/wsrm/CreateSequence.java (original)
+++ webservices/sandesha/trunk/java/src/org/apache/sandesha2/wsrm/CreateSequence.java Thu Sep  7 00:38:58 2006
@@ -52,7 +52,7 @@
 	
 	private OMElement securityTokenReference = null;
 	
-	public CreateSequence(OMFactory factory,String rmNamespaceValue,String addressingNamespaceValue) throws SandeshaException {
+	public CreateSequence(String rmNamespaceValue,String addressingNamespaceValue) throws SandeshaException {
 		if (!isNamespaceSupported(rmNamespaceValue))
 			throw new SandeshaException (SandeshaMessageHelper.getMessage(
 					SandeshaMessageKeys.unknownSpec,
@@ -64,7 +64,7 @@
 	}
 	
 	public CreateSequence (AcksTo acksTo,SOAPFactory factory,String rmNamespaceValue,String addressingNamespaceValue) throws SandeshaException {
-		this (factory,rmNamespaceValue,addressingNamespaceValue);
+		this (rmNamespaceValue,addressingNamespaceValue);
 		this.acksTo = acksTo;
 	}
 

Modified: webservices/sandesha/trunk/java/src/org/apache/sandesha2/wsrm/CreateSequenceResponse.java
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/java/src/org/apache/sandesha2/wsrm/CreateSequenceResponse.java?view=diff&rev=441007&r1=441006&r2=441007
==============================================================================
--- webservices/sandesha/trunk/java/src/org/apache/sandesha2/wsrm/CreateSequenceResponse.java (original)
+++ webservices/sandesha/trunk/java/src/org/apache/sandesha2/wsrm/CreateSequenceResponse.java Thu Sep  7 00:38:58 2006
@@ -46,7 +46,7 @@
 	
 	private String addressingNamespaceValue = null;
 	
-	public CreateSequenceResponse(OMFactory factory, String rmNamespaceValue, String addressingNamespaceValue) throws SandeshaException {
+	public CreateSequenceResponse(String rmNamespaceValue, String addressingNamespaceValue) throws SandeshaException {
 		if (!isNamespaceSupported(rmNamespaceValue))
 			throw new SandeshaException (SandeshaMessageHelper.getMessage(
 					SandeshaMessageKeys.unknownSpec,

Modified: webservices/sandesha/trunk/java/src/org/apache/sandesha2/wsrm/Nack.java
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/java/src/org/apache/sandesha2/wsrm/Nack.java?view=diff&rev=441007&r1=441006&r2=441007
==============================================================================
--- webservices/sandesha/trunk/java/src/org/apache/sandesha2/wsrm/Nack.java (original)
+++ webservices/sandesha/trunk/java/src/org/apache/sandesha2/wsrm/Nack.java Thu Sep  7 00:38:58 2006
@@ -37,7 +37,7 @@
 	
 	private String namespaceValue = null;
 		
-	public Nack(SOAPFactory factory,String namespaceValue) throws SandeshaException {
+	public Nack(String namespaceValue) throws SandeshaException {
 		if (!isNamespaceSupported(namespaceValue))
 			throw new SandeshaException (SandeshaMessageHelper.getMessage(
 					SandeshaMessageKeys.unknownSpec,

Modified: webservices/sandesha/trunk/java/src/org/apache/sandesha2/wsrm/RMElements.java
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/java/src/org/apache/sandesha2/wsrm/RMElements.java?view=diff&rev=441007&r1=441006&r2=441007
==============================================================================
--- webservices/sandesha/trunk/java/src/org/apache/sandesha2/wsrm/RMElements.java (original)
+++ webservices/sandesha/trunk/java/src/org/apache/sandesha2/wsrm/RMElements.java Thu Sep  7 00:38:58 2006
@@ -116,7 +116,7 @@
 						Sandesha2Constants.WSRM_COMMON.CREATE_SEQUENCE));
 		
 		if (createSeqElement != null) {
-			createSequence = new CreateSequence(factory,rmNamespaceValue,addressingNamespaceValue);
+			createSequence = new CreateSequence(rmNamespaceValue,addressingNamespaceValue);
 			createSequence.fromOMElement(envelope.getBody());
 		}
 
@@ -125,7 +125,7 @@
 						new QName(rmNamespaceValue,
 								Sandesha2Constants.WSRM_COMMON.CREATE_SEQUENCE_RESPONSE));
 		if (createSeqResElement != null) {
-			createSequenceResponse = new CreateSequenceResponse(factory,rmNamespaceValue,addressingNamespaceValue);
+			createSequenceResponse = new CreateSequenceResponse(rmNamespaceValue,addressingNamespaceValue);
 			createSequenceResponse.fromOMElement(envelope.getBody());
 		}
 
@@ -161,7 +161,7 @@
 				new QName(rmNamespaceValue,
 						Sandesha2Constants.WSRM_COMMON.CLOSE_SEQUENCE));
 		if (closeSequenceElement != null) {
-			closeSequence = new CloseSequence (factory,rmNamespaceValue);
+			closeSequence = new CloseSequence (rmNamespaceValue);
 			closeSequence.fromOMElement(envelope.getBody());
 		}
 
@@ -170,7 +170,7 @@
 					new QName(rmNamespaceValue,
 							Sandesha2Constants.WSRM_COMMON.CLOSE_SEQUENCE_RESPONSE));
 		if (closeSequenceResponseElement != null) {
-			closeSequenceResponse = new CloseSequenceResponse  (factory,rmNamespaceValue);
+			closeSequenceResponse = new CloseSequenceResponse  (rmNamespaceValue);
 			closeSequenceResponse.fromOMElement(envelope.getBody());
 		}
 		
@@ -179,7 +179,7 @@
 						Sandesha2Constants.WSRM_COMMON.SEQUENCE_ACK));
 		while (sequenceAcknowledgementIter.hasNext()) {
 			OMElement sequenceAckElement = (OMElement) sequenceAcknowledgementIter.next();
-			SequenceAcknowledgement sequenceAcknowledgement = new SequenceAcknowledgement  (factory,rmNamespaceValue);
+			SequenceAcknowledgement sequenceAcknowledgement = new SequenceAcknowledgement  (rmNamespaceValue);
 			sequenceAcknowledgement.fromOMElement(sequenceAckElement);
 			
 			sequenceAcknowledgements.add(sequenceAcknowledgement);

Modified: webservices/sandesha/trunk/java/src/org/apache/sandesha2/wsrm/SequenceAcknowledgement.java
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/java/src/org/apache/sandesha2/wsrm/SequenceAcknowledgement.java?view=diff&rev=441007&r1=441006&r2=441007
==============================================================================
--- webservices/sandesha/trunk/java/src/org/apache/sandesha2/wsrm/SequenceAcknowledgement.java (original)
+++ webservices/sandesha/trunk/java/src/org/apache/sandesha2/wsrm/SequenceAcknowledgement.java Thu Sep  7 00:38:58 2006
@@ -46,20 +46,18 @@
 	private Identifier identifier;
 	private ArrayList acknowledgementRangeList;
 	private ArrayList nackList;
-	private SOAPFactory defaultFactory;
 	private String namespaceValue = null;
 	private boolean mustUnderstand = false;
 	private AckNone ackNone = null;
 	private AckFinal ackFinal = null;
 	
-	public SequenceAcknowledgement(SOAPFactory factory,String namespaceValue) throws SandeshaException {
+	public SequenceAcknowledgement(String namespaceValue) throws SandeshaException {
 		if (!isNamespaceSupported(namespaceValue))
 			throw new SandeshaException (SandeshaMessageHelper.getMessage(
 					SandeshaMessageKeys.unknownSpec,
 					namespaceValue));
 		
 		this.namespaceValue = namespaceValue;
-		this.defaultFactory = factory;
 		acknowledgementRangeList = new ArrayList();
 		nackList = new ArrayList();
 	}
@@ -71,8 +69,6 @@
 	public Object fromOMElement(OMElement sequenceAckElement) throws OMException,SandeshaException {
 
 		OMFactory factory = sequenceAckElement.getOMFactory();
-		if (factory==null)
-			factory = defaultFactory;
 		
 		identifier = new Identifier(namespaceValue);
 		identifier.fromOMElement(sequenceAckElement);
@@ -83,7 +79,7 @@
 		while (ackRangeParts.hasNext()) {
 			OMElement ackRangePart = (OMElement) ackRangeParts.next();
 
-			AcknowledgementRange ackRange = new AcknowledgementRange(defaultFactory,namespaceValue);
+			AcknowledgementRange ackRange = new AcknowledgementRange(namespaceValue);
 			ackRange.fromOMElement(ackRangePart);
 			acknowledgementRangeList.add(ackRange);
 		}
@@ -93,7 +89,7 @@
 
 		while (nackParts.hasNext()) {
 			OMElement nackPart = (OMElement) nackParts.next();
-			Nack nack = new Nack(defaultFactory,namespaceValue);
+			Nack nack = new Nack(namespaceValue);
 			nack.fromOMElement(nackPart);
 			nackList.add(nack);
 		}
@@ -125,8 +121,6 @@
 			throw new OMException();
 
 		OMFactory factory = header.getOMFactory();
-		if (factory==null)
-			factory = defaultFactory;
 		
 		OMNamespace rmNamespace = factory.createOMNamespace(namespaceValue,Sandesha2Constants.WSRM_COMMON.NS_PREFIX_RM);
 		

Added: webservices/sandesha/trunk/java/src/org/apache/sandesha2/wsrm/UsesSequenceSTR.java
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/java/src/org/apache/sandesha2/wsrm/UsesSequenceSTR.java?view=auto&rev=441007
==============================================================================
--- webservices/sandesha/trunk/java/src/org/apache/sandesha2/wsrm/UsesSequenceSTR.java (added)
+++ webservices/sandesha/trunk/java/src/org/apache/sandesha2/wsrm/UsesSequenceSTR.java Thu Sep  7 00:38:58 2006
@@ -0,0 +1,113 @@
+/*
+ * Copyright 2006 The Apache Software Foundation.
+ * Copyright 2006 International Business Machines Corp.
+ *
+ *  Licensed under the Apache License, Version 2.0 (the "License");
+ *  you may not use this file except in compliance with the License.
+ *  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *  Unless required by applicable law or agreed to in writing, software
+ *  distributed under the License is distributed on an "AS IS" BASIS,
+ *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ *  See the License for the specific language governing permissions and
+ *  limitations under the License.
+ *
+ */
+
+package org.apache.sandesha2.wsrm;
+
+import javax.xml.namespace.QName;
+
+import org.apache.axiom.om.OMElement;
+import org.apache.axiom.om.OMException;
+import org.apache.axiom.om.OMFactory;
+import org.apache.axiom.om.OMNamespace;
+import org.apache.axiom.soap.SOAPEnvelope;
+import org.apache.axiom.soap.SOAPFactory;
+import org.apache.axiom.soap.SOAPHeader;
+import org.apache.axiom.soap.SOAPHeaderBlock;
+import org.apache.sandesha2.Sandesha2Constants;
+import org.apache.sandesha2.SandeshaException;
+import org.apache.sandesha2.i18n.SandeshaMessageHelper;
+import org.apache.sandesha2.i18n.SandeshaMessageKeys;
+
+/**
+ * Class which handles the UsesSequenceSTR header block
+ */
+public class UsesSequenceSTR implements IOMRMPart {
+	
+	private SOAPFactory defaultFactory;
+	private String namespaceValue = null;
+	
+	public UsesSequenceSTR(SOAPFactory factory,String namespaceValue) throws SandeshaException {
+		if (!isNamespaceSupported(namespaceValue))
+			throw new SandeshaException (SandeshaMessageHelper.getMessage(
+					SandeshaMessageKeys.unknownSpec,
+					namespaceValue));
+		
+		this.namespaceValue = namespaceValue;
+		this.defaultFactory = factory;
+	}
+
+	public String getNamespaceValue() {
+		return namespaceValue;
+	}
+
+	public Object fromOMElement(OMElement header) throws OMException,SandeshaException {
+
+		OMFactory factory = header.getOMFactory();
+		if (factory==null)
+			factory = defaultFactory;
+		
+		return this;
+	}
+
+	public OMElement toOMElement(OMElement header) throws OMException,SandeshaException {
+
+		if (header == null || !(header instanceof SOAPHeader))
+			throw new OMException();
+
+		OMFactory factory = header.getOMFactory();
+		if (factory==null)
+			factory = defaultFactory;
+		
+		OMNamespace rmNamespace = factory.createOMNamespace(namespaceValue,Sandesha2Constants.WSRM_COMMON.NS_PREFIX_RM);
+		
+		SOAPHeader SOAPHeader = (SOAPHeader) header;
+		SOAPHeaderBlock sequenceAcknowledgementHeaderBlock = SOAPHeader.addHeaderBlock(
+				Sandesha2Constants.WSRM_COMMON.USES_SEQUENCE_STR,rmNamespace);
+		
+		if (sequenceAcknowledgementHeaderBlock == null)
+			throw new OMException("Cant set UsesSequenceSTR since the element is null");
+
+		// This header _must_ always be understood
+		sequenceAcknowledgementHeaderBlock.setMustUnderstand(true);
+
+		SOAPHeader.addChild(sequenceAcknowledgementHeaderBlock);
+
+		return header;
+	}
+
+	public void toSOAPEnvelope(SOAPEnvelope envelope) throws SandeshaException {
+		SOAPHeader header = envelope.getHeader();
+
+		//detach if already exist.
+		OMElement elem = header.getFirstChildWithName(new QName(
+				namespaceValue, Sandesha2Constants.WSRM_COMMON.USES_SEQUENCE_STR));
+		if (elem != null)
+			elem.detach();
+
+		toOMElement(header);
+	}
+
+	public boolean isNamespaceSupported (String namespaceName) {
+		// This is only supported using the new namespace
+		if (Sandesha2Constants.SPEC_2006_08.NS_URI.equals(namespaceName))
+			return true;
+		
+		return false;
+	}
+
+}
\ No newline at end of file



---------------------------------------------------------------------
To unsubscribe, e-mail: sandesha-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: sandesha-dev-help@ws.apache.org