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: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to