Author: richard.opalka(a)jboss.com
Date: 2007-11-29 08:53:45 -0500 (Thu, 29 Nov 2007)
New Revision: 5148
Added:
stack/native/trunk/src/main/java/org/jboss/ws/extensions/wsrm/common/RMHelper.java
Modified:
stack/native/trunk/src/main/java/org/jboss/ws/core/jaxws/client/ClientImpl.java
stack/native/trunk/src/main/java/org/jboss/ws/extensions/wsrm/RMSequenceImpl.java
stack/native/trunk/src/main/java/org/jboss/ws/extensions/wsrm/api/RMSequence.java
stack/native/trunk/src/main/java/org/jboss/ws/extensions/wsrm/common/serialization/RMCreateSequenceResponseSerializer.java
stack/native/trunk/src/main/java/org/jboss/ws/extensions/wsrm/common/serialization/RMCreateSequenceSerializer.java
stack/native/trunk/src/main/java/org/jboss/ws/extensions/wsrm/spec200502/RMCreateSequenceImpl.java
stack/native/trunk/src/main/java/org/jboss/ws/extensions/wsrm/spec200502/RMCreateSequenceResponseImpl.java
stack/native/trunk/src/main/java/org/jboss/ws/extensions/wsrm/spec200702/RMCreateSequenceImpl.java
stack/native/trunk/src/main/java/org/jboss/ws/extensions/wsrm/spec200702/RMCreateSequenceResponseImpl.java
stack/native/trunk/src/main/java/org/jboss/ws/extensions/wsrm/spi/protocol/RMCreateSequence.java
stack/native/trunk/src/main/java/org/jboss/ws/extensions/wsrm/spi/protocol/RMCreateSequenceResponse.java
stack/native/trunk/src/test/java/org/jboss/test/ws/jaxws/wsrm/deserialization/RMDeSerializationTestCase.java
stack/native/trunk/src/test/resources/jaxws/wsrm/emulator/common/resources/createSequenceResponse.xml
Log:
refactoring - duration will be javax.xml.datatype.Duration instead of String
Modified: stack/native/trunk/src/main/java/org/jboss/ws/core/jaxws/client/ClientImpl.java
===================================================================
---
stack/native/trunk/src/main/java/org/jboss/ws/core/jaxws/client/ClientImpl.java 2007-11-29
12:35:27 UTC (rev 5147)
+++
stack/native/trunk/src/main/java/org/jboss/ws/core/jaxws/client/ClientImpl.java 2007-11-29
13:53:45 UTC (rev 5148)
@@ -75,6 +75,7 @@
import org.jboss.ws.extensions.wsrm.api.RMException;
import org.jboss.ws.extensions.wsrm.api.RMSequence;
import org.jboss.ws.extensions.wsrm.api.RMSequenceType;
+import org.jboss.ws.extensions.wsrm.common.RMHelper;
import org.jboss.ws.extensions.wsrm.spi.RMProvider;
import org.jboss.ws.extensions.wsrm.spi.protocol.RMCreateSequenceResponse;
import org.jboss.ws.metadata.config.Configurable;
@@ -534,6 +535,9 @@
String outboundId = createSequenceResponse.getIdentifier();
candidateSequence.setClient(this);
candidateSequence.setOutboundId(outboundId);
+
candidateSequence.setBehavior(createSequenceResponse.getIncompleteSequenceBehavior());
+
candidateSequence.setDuration(RMHelper.durationToLong(createSequenceResponse.getExpires()));
+ createSequenceResponse.getIncompleteSequenceBehavior();
return this.wsrmSequence = candidateSequence;
}
catch (Exception e)
Modified:
stack/native/trunk/src/main/java/org/jboss/ws/extensions/wsrm/RMSequenceImpl.java
===================================================================
---
stack/native/trunk/src/main/java/org/jboss/ws/extensions/wsrm/RMSequenceImpl.java 2007-11-29
12:35:27 UTC (rev 5147)
+++
stack/native/trunk/src/main/java/org/jboss/ws/extensions/wsrm/RMSequenceImpl.java 2007-11-29
13:53:45 UTC (rev 5148)
@@ -48,6 +48,7 @@
import org.jboss.ws.extensions.wsrm.config.RMConfig;
import org.jboss.ws.extensions.wsrm.spi.RMConstants;
import org.jboss.ws.extensions.wsrm.spi.RMProvider;
+import org.jboss.ws.extensions.wsrm.spi.protocol.RMIncompleteSequenceBehavior;
import org.jboss.ws.extensions.wsrm.transport.RMUnassignedMessageListener;
/**
@@ -64,11 +65,14 @@
private static final Logger logger = Logger.getLogger(RMSequenceImpl.class);
private static final RMConstants wsrmConstants = RMProvider.get().getConstants();
- private final String incomingSequenceId = "http://sequence/id/123"; // TODO:
use generator
private final RMConfig wsrmConfig;
private final RMSequenceType sequenceType;
private final RMAddressingType addrType;
+ private RMIncompleteSequenceBehavior behavior =
RMIncompleteSequenceBehavior.NO_DISCARD;
+ private String incomingSequenceId;
private String outgoingSequenceId;
+ private long duration = -1;
+ private long creationTime;
private URI backPort;
private ClientImpl client;
// object states variables
@@ -82,6 +86,7 @@
{
// we can't use objectLock in the method - possible deadlock
this.countOfUnassignedMessagesAvailable.addAndGet(1);
+ logger.debug("Expected sequence expiration in " +
((System.currentTimeMillis() - this.creationTime) / 1000) + "seconds");
logger.debug("Unassigned message available in callback handler");
}
@@ -131,6 +136,20 @@
}
}
+ public final void setDuration(long duration)
+ {
+ if (duration > 0)
+ {
+ this.creationTime = System.currentTimeMillis();
+ this.duration = duration;
+ }
+ }
+
+ public final long getDuration()
+ {
+ return -1L;
+ }
+
public final URI getBackPort()
{
return (this.addrType == RMAddressingType.ADDRESSABLE) ? this.backPort : null;
@@ -250,6 +269,22 @@
{
sendMessage(RMConstant.SEQUENCE_ACKNOWLEDGEMENT_WSA_ACTION,
wsrmConstants.getSequenceAcknowledgementQName());
}
+
+ public final void setBehavior(RMIncompleteSequenceBehavior behavior)
+ {
+ this.objectLock.lock();
+ try
+ {
+ if (behavior != null)
+ {
+ this.behavior = behavior;
+ }
+ }
+ finally
+ {
+ this.objectLock.unlock();
+ }
+ }
public final boolean isCompleted()
{
Modified:
stack/native/trunk/src/main/java/org/jboss/ws/extensions/wsrm/api/RMSequence.java
===================================================================
---
stack/native/trunk/src/main/java/org/jboss/ws/extensions/wsrm/api/RMSequence.java 2007-11-29
12:35:27 UTC (rev 5147)
+++
stack/native/trunk/src/main/java/org/jboss/ws/extensions/wsrm/api/RMSequence.java 2007-11-29
13:53:45 UTC (rev 5148)
@@ -25,12 +25,13 @@
public interface RMSequence
{
- String getOutboundId() throws RMException;
- String getInboundId() throws RMException;
- void discard() throws RMException;
- boolean isDiscarded() throws RMException;
- void close() throws RMException;
- boolean isClosed() throws RMException;
- boolean isCompleted() throws RMException;
- boolean isCompleted(int timeAmount, TimeUnit timeUnit) throws RMException;
+ String getOutboundId();
+ String getInboundId();
+ void discard();
+ long getDuration();
+ boolean isDiscarded();
+ void close();
+ boolean isClosed();
+ boolean isCompleted();
+ boolean isCompleted(int timeAmount, TimeUnit timeUnit);
}
Added: stack/native/trunk/src/main/java/org/jboss/ws/extensions/wsrm/common/RMHelper.java
===================================================================
--- stack/native/trunk/src/main/java/org/jboss/ws/extensions/wsrm/common/RMHelper.java
(rev 0)
+++
stack/native/trunk/src/main/java/org/jboss/ws/extensions/wsrm/common/RMHelper.java 2007-11-29
13:53:45 UTC (rev 5148)
@@ -0,0 +1,79 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site:
http://www.fsf.org.
+ */
+package org.jboss.ws.extensions.wsrm.common;
+
+import java.util.Date;
+
+import javax.xml.datatype.DatatypeConfigurationException;
+import javax.xml.datatype.DatatypeFactory;
+import javax.xml.datatype.Duration;
+
+import org.jboss.ws.extensions.wsrm.api.RMException;
+
+/**
+ * RM utility library
+ *
+ * @author richard.opalka(a)jboss.com
+ *
+ * @since Nov 29, 2007
+ */
+public final class RMHelper
+{
+
+ private RMHelper()
+ {
+ // no instances allowed
+ }
+
+ private static final DatatypeFactory factory;
+
+ static
+ {
+ try
+ {
+ factory = DatatypeFactory.newInstance();
+ }
+ catch (DatatypeConfigurationException dce)
+ {
+ throw new RMException(dce.getMessage(), dce);
+ }
+ }
+
+ public static Duration stringToDuration(String s)
+ {
+ return factory.newDuration(s);
+ }
+
+ public static String durationToString(Duration d)
+ {
+ return d.toString();
+ }
+
+ public static long durationToLong(Duration d)
+ {
+ if (d == null)
+ return -1L;
+
+ return d.getTimeInMillis(new Date());
+ }
+
+}
Property changes on:
stack/native/trunk/src/main/java/org/jboss/ws/extensions/wsrm/common/RMHelper.java
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF
Modified:
stack/native/trunk/src/main/java/org/jboss/ws/extensions/wsrm/common/serialization/RMCreateSequenceResponseSerializer.java
===================================================================
---
stack/native/trunk/src/main/java/org/jboss/ws/extensions/wsrm/common/serialization/RMCreateSequenceResponseSerializer.java 2007-11-29
12:35:27 UTC (rev 5147)
+++
stack/native/trunk/src/main/java/org/jboss/ws/extensions/wsrm/common/serialization/RMCreateSequenceResponseSerializer.java 2007-11-29
13:53:45 UTC (rev 5148)
@@ -35,6 +35,7 @@
import javax.xml.ws.addressing.AddressingConstants;
import org.jboss.ws.extensions.wsrm.api.RMException;
+import org.jboss.ws.extensions.wsrm.common.RMHelper;
import org.jboss.ws.extensions.wsrm.spi.RMConstants;
import org.jboss.ws.extensions.wsrm.spi.RMProvider;
import org.jboss.ws.extensions.wsrm.spi.protocol.RMCreateSequenceResponse;
@@ -94,7 +95,7 @@
if (expiresElement != null)
{
String duration = getRequiredTextContent(expiresElement, expiresQName);
- o.setExpires(duration);
+ o.setExpires(RMHelper.stringToDuration(duration));
}
// read optional wsrm:IncompleteSequenceBehavior element
@@ -165,7 +166,7 @@
{
// write optional wsrm:Expires element
QName expiresQName = wsrmConstants.getExpiresQName();
-
createSequenceResponseElement.addChildElement(expiresQName).setValue(o.getExpires());
+
createSequenceResponseElement.addChildElement(expiresQName).setValue(RMHelper.durationToString(o.getExpires()));
}
if (o.getIncompleteSequenceBehavior() != null)
Modified:
stack/native/trunk/src/main/java/org/jboss/ws/extensions/wsrm/common/serialization/RMCreateSequenceSerializer.java
===================================================================
---
stack/native/trunk/src/main/java/org/jboss/ws/extensions/wsrm/common/serialization/RMCreateSequenceSerializer.java 2007-11-29
12:35:27 UTC (rev 5147)
+++
stack/native/trunk/src/main/java/org/jboss/ws/extensions/wsrm/common/serialization/RMCreateSequenceSerializer.java 2007-11-29
13:53:45 UTC (rev 5148)
@@ -25,6 +25,8 @@
import static
org.jboss.ws.extensions.wsrm.common.serialization.RMSerializationHelper.getRequiredElement;
import static
org.jboss.ws.extensions.wsrm.common.serialization.RMSerializationHelper.getRequiredTextContent;
+import javax.xml.datatype.DatatypeConfigurationException;
+import javax.xml.datatype.DatatypeFactory;
import javax.xml.namespace.QName;
import javax.xml.soap.SOAPBody;
import javax.xml.soap.SOAPElement;
@@ -35,6 +37,7 @@
import javax.xml.ws.addressing.AddressingConstants;
import org.jboss.ws.extensions.wsrm.api.RMException;
+import org.jboss.ws.extensions.wsrm.common.RMHelper;
import org.jboss.ws.extensions.wsrm.spi.RMConstants;
import org.jboss.ws.extensions.wsrm.spi.RMProvider;
import org.jboss.ws.extensions.wsrm.spi.protocol.RMCreateSequence;
@@ -96,7 +99,7 @@
if (expiresElement != null)
{
String duration = getRequiredTextContent(expiresElement, expiresQName);
- o.setExpires(duration);
+ o.setExpires(RMHelper.stringToDuration(duration));
}
// read optional wsrm:Offer element
@@ -186,7 +189,7 @@
{
// write optional wsrm:Expires element
QName expiresQName = wsrmConstants.getExpiresQName();
-
createSequenceElement.addChildElement(expiresQName).setValue(o.getExpires());
+
createSequenceElement.addChildElement(expiresQName).setValue(RMHelper.durationToString(o.getExpires()));
}
if (o.getOffer() != null)
Modified:
stack/native/trunk/src/main/java/org/jboss/ws/extensions/wsrm/spec200502/RMCreateSequenceImpl.java
===================================================================
---
stack/native/trunk/src/main/java/org/jboss/ws/extensions/wsrm/spec200502/RMCreateSequenceImpl.java 2007-11-29
12:35:27 UTC (rev 5147)
+++
stack/native/trunk/src/main/java/org/jboss/ws/extensions/wsrm/spec200502/RMCreateSequenceImpl.java 2007-11-29
13:53:45 UTC (rev 5148)
@@ -21,6 +21,8 @@
*/
package org.jboss.ws.extensions.wsrm.spec200502;
+import javax.xml.datatype.Duration;
+
import org.jboss.ws.extensions.wsrm.api.RMException;
import org.jboss.ws.extensions.wsrm.common.serialization.RMAbstractSerializable;
import org.jboss.ws.extensions.wsrm.spi.RMProvider;
@@ -38,7 +40,7 @@
private static final RMProvider PROVIDER = RMProviderImpl.getInstance();
// internal fields
private String acksTo;
- private String expires;
+ private Duration expires;
private Offer offer;
RMCreateSequenceImpl()
@@ -57,7 +59,7 @@
/*
* @see org.jboss.ws.extensions.wsrm.spi.protocol.CreateSequence#getExpires()
*/
- public String getExpires()
+ public Duration getExpires()
{
return this.expires;
}
@@ -94,9 +96,9 @@
/*
* @see
org.jboss.ws.extensions.wsrm.spi.protocol.CreateSequence#setExpires(java.lang.String)
*/
- public void setExpires(String duration)
+ public void setExpires(Duration duration)
{
- if ((duration == null) || (duration.trim().equals("")))
+ if ((duration == null) || (duration.toString().equals("")))
throw new IllegalArgumentException("Duration cannot be null nor empty
string");
if (this.expires != null)
throw new UnsupportedOperationException("Value already set, cannot be
overriden");
Modified:
stack/native/trunk/src/main/java/org/jboss/ws/extensions/wsrm/spec200502/RMCreateSequenceResponseImpl.java
===================================================================
---
stack/native/trunk/src/main/java/org/jboss/ws/extensions/wsrm/spec200502/RMCreateSequenceResponseImpl.java 2007-11-29
12:35:27 UTC (rev 5147)
+++
stack/native/trunk/src/main/java/org/jboss/ws/extensions/wsrm/spec200502/RMCreateSequenceResponseImpl.java 2007-11-29
13:53:45 UTC (rev 5148)
@@ -21,6 +21,8 @@
*/
package org.jboss.ws.extensions.wsrm.spec200502;
+import javax.xml.datatype.Duration;
+
import org.jboss.ws.extensions.wsrm.api.RMException;
import org.jboss.ws.extensions.wsrm.common.serialization.RMAbstractSerializable;
import org.jboss.ws.extensions.wsrm.spi.RMProvider;
@@ -38,7 +40,7 @@
private static final RMProvider PROVIDER = RMProviderImpl.getInstance();
// internal fields
private String identifier;
- private String expires;
+ private Duration expires;
private Accept accept;
RMCreateSequenceResponseImpl()
@@ -57,7 +59,7 @@
/*
* @see
org.jboss.ws.extensions.wsrm.spi.protocol.CreateSequenceResponse#getDuration()
*/
- public String getExpires()
+ public Duration getExpires()
{
return this.expires;
}
@@ -106,9 +108,9 @@
/*
* @see
org.jboss.ws.extensions.wsrm.spi.protocol.CreateSequenceResponse#setExpires(java.lang.String)
*/
- public void setExpires(String duration)
+ public void setExpires(Duration duration)
{
- if ((duration == null) || (duration.trim().equals("")))
+ if ((duration == null) || (duration.toString().equals("")))
throw new IllegalArgumentException("Duration cannot be null nor empty
string");
if (this.expires != null)
throw new UnsupportedOperationException("Value already set, cannot be
overriden");
Modified:
stack/native/trunk/src/main/java/org/jboss/ws/extensions/wsrm/spec200702/RMCreateSequenceImpl.java
===================================================================
---
stack/native/trunk/src/main/java/org/jboss/ws/extensions/wsrm/spec200702/RMCreateSequenceImpl.java 2007-11-29
12:35:27 UTC (rev 5147)
+++
stack/native/trunk/src/main/java/org/jboss/ws/extensions/wsrm/spec200702/RMCreateSequenceImpl.java 2007-11-29
13:53:45 UTC (rev 5148)
@@ -21,6 +21,8 @@
*/
package org.jboss.ws.extensions.wsrm.spec200702;
+import javax.xml.datatype.Duration;
+
import org.jboss.ws.extensions.wsrm.api.RMException;
import org.jboss.ws.extensions.wsrm.common.serialization.RMAbstractSerializable;
import org.jboss.ws.extensions.wsrm.spi.RMProvider;
@@ -38,7 +40,7 @@
private static final RMProvider PROVIDER = RMProviderImpl.getInstance();
// internal fields
private String acksTo;
- private String expires;
+ private Duration expires;
private Offer offer;
RMCreateSequenceImpl()
@@ -57,7 +59,7 @@
/*
* @see org.jboss.ws.extensions.wsrm.spi.protocol.CreateSequence#getExpires()
*/
- public String getExpires()
+ public Duration getExpires()
{
return this.expires;
}
@@ -94,9 +96,9 @@
/*
* @see
org.jboss.ws.extensions.wsrm.spi.protocol.CreateSequence#setExpires(java.lang.String)
*/
- public void setExpires(String duration)
+ public void setExpires(Duration duration)
{
- if ((duration == null) || (duration.trim().equals("")))
+ if ((duration == null) || (duration.toString().equals("")))
throw new IllegalArgumentException("Duration cannot be null nor empty
string");
if (this.expires != null)
throw new UnsupportedOperationException("Value already set, cannot be
overriden");
Modified:
stack/native/trunk/src/main/java/org/jboss/ws/extensions/wsrm/spec200702/RMCreateSequenceResponseImpl.java
===================================================================
---
stack/native/trunk/src/main/java/org/jboss/ws/extensions/wsrm/spec200702/RMCreateSequenceResponseImpl.java 2007-11-29
12:35:27 UTC (rev 5147)
+++
stack/native/trunk/src/main/java/org/jboss/ws/extensions/wsrm/spec200702/RMCreateSequenceResponseImpl.java 2007-11-29
13:53:45 UTC (rev 5148)
@@ -21,6 +21,8 @@
*/
package org.jboss.ws.extensions.wsrm.spec200702;
+import javax.xml.datatype.Duration;
+
import org.jboss.ws.extensions.wsrm.api.RMException;
import org.jboss.ws.extensions.wsrm.common.serialization.RMAbstractSerializable;
import org.jboss.ws.extensions.wsrm.spi.RMProvider;
@@ -38,7 +40,7 @@
private static final RMProvider PROVIDER = RMProviderImpl.getInstance();
// internal fields
private String identifier;
- private String expires;
+ private Duration expires;
private Accept accept;
private RMIncompleteSequenceBehavior incompleteSequenceBehavior;
@@ -58,7 +60,7 @@
/*
* @see
org.jboss.ws.extensions.wsrm.spi.protocol.CreateSequenceResponse#getDuration()
*/
- public String getExpires()
+ public Duration getExpires()
{
return this.expires;
}
@@ -107,9 +109,9 @@
/*
* @see
org.jboss.ws.extensions.wsrm.spi.protocol.CreateSequenceResponse#setExpires(java.lang.String)
*/
- public void setExpires(String duration)
+ public void setExpires(Duration duration)
{
- if ((duration == null) || (duration.trim().equals("")))
+ if ((duration == null) || (duration.toString().equals("")))
throw new IllegalArgumentException("Duration cannot be null nor empty
string");
if (this.expires != null)
throw new UnsupportedOperationException("Value already set, cannot be
overriden");
Modified:
stack/native/trunk/src/main/java/org/jboss/ws/extensions/wsrm/spi/protocol/RMCreateSequence.java
===================================================================
---
stack/native/trunk/src/main/java/org/jboss/ws/extensions/wsrm/spi/protocol/RMCreateSequence.java 2007-11-29
12:35:27 UTC (rev 5147)
+++
stack/native/trunk/src/main/java/org/jboss/ws/extensions/wsrm/spi/protocol/RMCreateSequence.java 2007-11-29
13:53:45 UTC (rev 5148)
@@ -21,6 +21,8 @@
*/
package org.jboss.ws.extensions.wsrm.spi.protocol;
+import javax.xml.datatype.Duration;
+
/**
* <p><b>CreateSequence</b> element requests creation of a new Sequence
between the RM Source that sends it, and the
* RM Destination to which it is sent. The RM Source MUST NOT send this element as a
header
@@ -76,13 +78,13 @@
* the element indicates an implied value of
<b>"PT0S"</b>.
* @param duration
*/
- void setExpires(String duration);
+ void setExpires(Duration duration);
/**
* Getter
* @return duration
*/
- String getExpires();
+ Duration getExpires();
/**
* Factory method
Modified:
stack/native/trunk/src/main/java/org/jboss/ws/extensions/wsrm/spi/protocol/RMCreateSequenceResponse.java
===================================================================
---
stack/native/trunk/src/main/java/org/jboss/ws/extensions/wsrm/spi/protocol/RMCreateSequenceResponse.java 2007-11-29
12:35:27 UTC (rev 5147)
+++
stack/native/trunk/src/main/java/org/jboss/ws/extensions/wsrm/spi/protocol/RMCreateSequenceResponse.java 2007-11-29
13:53:45 UTC (rev 5148)
@@ -21,6 +21,8 @@
*/
package org.jboss.ws.extensions.wsrm.spi.protocol;
+import javax.xml.datatype.Duration;
+
/**
* <p><b>CreateSequenceResponse</b> element is sent in the body of the
response message in response to a <b>CreateSequence</b>
* request message. It indicates that the RM Destination has created a new Sequence at
the
@@ -72,13 +74,13 @@
* the corresponding <b>CreateSequence</b> message.
* @param duration
*/
- void setExpires(String duration);
+ void setExpires(Duration duration);
/**
* Getter
* @return sequence duration
*/
- String getExpires();
+ Duration getExpires();
/**
* This element, if present, specifies the behavior that the destination will exhibit
upon the closure or
Modified:
stack/native/trunk/src/test/java/org/jboss/test/ws/jaxws/wsrm/deserialization/RMDeSerializationTestCase.java
===================================================================
---
stack/native/trunk/src/test/java/org/jboss/test/ws/jaxws/wsrm/deserialization/RMDeSerializationTestCase.java 2007-11-29
12:35:27 UTC (rev 5147)
+++
stack/native/trunk/src/test/java/org/jboss/test/ws/jaxws/wsrm/deserialization/RMDeSerializationTestCase.java 2007-11-29
13:53:45 UTC (rev 5148)
@@ -26,6 +26,7 @@
import javax.xml.soap.SOAPMessage;
+import org.jboss.ws.extensions.wsrm.common.RMHelper;
import org.jboss.ws.extensions.wsrm.spi.RMProvider;
import org.jboss.ws.extensions.wsrm.spi.RMMessageFactory;
import org.jboss.ws.extensions.wsrm.spi.protocol.RMAckRequested;
@@ -363,7 +364,7 @@
createSequenceMessage.deserializeFrom(toSOAPMessage(CREATE_SEQUENCE_MESSAGE));
// perform assertion
assertEquals(createSequenceMessage.getAcksTo(),
"http://Business456.com/serviceA/789");
- assertEquals(createSequenceMessage.getExpires(), "PT0S");
+ assertEquals(createSequenceMessage.getExpires(),
RMHelper.stringToDuration("PT0S"));
RMCreateSequence.Offer offer = createSequenceMessage.getOffer();
assertEquals(offer.getIdentifier(), "http://Business456.com/RM/ABC");
assertEquals(offer.getEndpoint(),
"http://Business456.com/serviceA/ASDF");
@@ -376,7 +377,7 @@
RMCreateSequence createSequenceMessage = WSRM_200702_FACTORY.newCreateSequence();
// construct message
createSequenceMessage.setAcksTo("http://Business456.com/serviceA/789...;
- createSequenceMessage.setExpires("PT0S");
+ createSequenceMessage.setExpires(RMHelper.stringToDuration("PT0S"));
RMCreateSequence.Offer offer = createSequenceMessage.newOffer();
offer.setIdentifier("http://Business456.com/RM/ABC");
offer.setEndpoint("http://Business456.com/serviceA/ASDF");
@@ -393,7 +394,7 @@
createSequenceResponseMessage.deserializeFrom(toSOAPMessage(CREATE_SEQUENCE_RESPONSE_MESSAGE));
// perform assertion
assertEquals(createSequenceResponseMessage.getIdentifier(),
"http://Business456.com/RM/ABC");
- assertEquals(createSequenceResponseMessage.getExpires(), "PT0S");
+ assertEquals(createSequenceResponseMessage.getExpires(),
RMHelper.stringToDuration("PT0S"));
assertEquals(createSequenceResponseMessage.getIncompleteSequenceBehavior(),
RMIncompleteSequenceBehavior.DISCARD_FOLLOWING_FIRST_GAP);
RMCreateSequenceResponse.Accept accept =
createSequenceResponseMessage.getAccept();
assertEquals(accept.getAcksTo(),
"http://Business456.com/serviceA/ASDF");
@@ -404,7 +405,7 @@
RMCreateSequenceResponse createSequenceResponse =
WSRM_200702_FACTORY.newCreateSequenceResponse();
// construct message
createSequenceResponse.setIdentifier("http://Business456.com/RM/ABC&...;
- createSequenceResponse.setExpires("PT0S");
+ createSequenceResponse.setExpires(RMHelper.stringToDuration("PT0S"));
createSequenceResponse.setIncompleteSequenceBehavior(RMIncompleteSequenceBehavior.DISCARD_FOLLOWING_FIRST_GAP);
RMCreateSequenceResponse.Accept accept = createSequenceResponse.newAccept();
accept.setAcksTo("http://Business456.com/serviceA/ASDF");
Modified:
stack/native/trunk/src/test/resources/jaxws/wsrm/emulator/common/resources/createSequenceResponse.xml
===================================================================
---
stack/native/trunk/src/test/resources/jaxws/wsrm/emulator/common/resources/createSequenceResponse.xml 2007-11-29
12:35:27 UTC (rev 5147)
+++
stack/native/trunk/src/test/resources/jaxws/wsrm/emulator/common/resources/createSequenceResponse.xml 2007-11-29
13:53:45 UTC (rev 5148)
@@ -10,6 +10,8 @@
<env:Body>
<wsrm11:CreateSequenceResponse>
<wsrm11:Identifier>${res.wsrm.sequenceid}</wsrm11:Identifier>
+ <wsrm11:Expires>PT10S</wsrm11:Expires>
+
<wsrm11:IncompleteSequenceBehavior>DiscardEntireSequence</wsrm11:IncompleteSequenceBehavior>
</wsrm11:CreateSequenceResponse>
</env:Body>
</env:Envelope>