You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@servicemix.apache.org by ff...@apache.org on 2007/08/20 05:37:50 UTC
svn commit: r567536 [3/4] - in /incubator/servicemix/trunk/deployables:
bindingcomponents/servicemix-cxf-bc/
bindingcomponents/servicemix-cxf-bc/src/main/java/org/apache/servicemix/cxfbc/
bindingcomponents/servicemix-cxf-bc/src/main/java/org/apache/ser...
Added: incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-cxf-bc/src/test/java/org/apache/servicemix/cxfbc/ws/rm/MessageFlow.java
URL: http://svn.apache.org/viewvc/incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-cxf-bc/src/test/java/org/apache/servicemix/cxfbc/ws/rm/MessageFlow.java?rev=567536&view=auto
==============================================================================
--- incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-cxf-bc/src/test/java/org/apache/servicemix/cxfbc/ws/rm/MessageFlow.java (added)
+++ incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-cxf-bc/src/test/java/org/apache/servicemix/cxfbc/ws/rm/MessageFlow.java Sun Aug 19 20:37:48 2007
@@ -0,0 +1,511 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You 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.servicemix.cxfbc.ws.rm;
+
+import java.io.ByteArrayInputStream;
+import java.util.ArrayList;
+import java.util.List;
+
+import javax.xml.namespace.QName;
+import javax.xml.parsers.DocumentBuilder;
+import javax.xml.parsers.DocumentBuilderFactory;
+import org.w3c.dom.Document;
+import org.w3c.dom.Element;
+import org.w3c.dom.Node;
+import junit.framework.Assert;
+import org.apache.cxf.ws.rm.RMConstants;
+
+
+
+
+public class MessageFlow extends Assert {
+
+ private List<byte[]> inStreams;
+ private List<byte[]> outStreams;
+ private List<Document> outboundMessages;
+ private List<Document> inboundMessages;
+
+ public MessageFlow(List<byte[]> out, List<byte[]> in) throws Exception {
+ inboundMessages = new ArrayList<Document>();
+ outboundMessages = new ArrayList<Document>();
+ reset(out, in);
+ }
+
+ public void clear() throws Exception {
+ inStreams.clear();
+ outStreams.clear();
+ }
+
+ public final void reset(List<byte[]> out, List<byte[]> in) throws Exception {
+ for (int i = 0; i < inboundMessages.size(); i++) {
+ in.remove(0);
+ }
+ inStreams = in;
+ for (int i = 0; i < outboundMessages.size(); i++) {
+ out.remove(0);
+ }
+ outStreams = out;
+ DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
+ factory.setNamespaceAware(true);
+ DocumentBuilder parser = factory.newDocumentBuilder();
+ inboundMessages.clear();
+ for (int i = 0; i < inStreams.size(); i++) {
+ byte[] bytes = inStreams.get(i);
+ ByteArrayInputStream is = new ByteArrayInputStream(bytes);
+ Document document = parser.parse(is);
+ inboundMessages.add(document);
+ }
+ outboundMessages.clear();
+ for (int i = 0; i < outStreams.size(); i++) {
+ byte[] bytes = outStreams.get(i);
+ ByteArrayInputStream is = new ByteArrayInputStream(bytes);
+ Document document = parser.parse(is);
+ outboundMessages.add(document);
+ }
+ }
+
+ public void verifyActions(String[] expectedActions, boolean outbound) throws Exception {
+
+ assertEquals(expectedActions.length, outbound ? outboundMessages.size() : inboundMessages.size());
+
+ for (int i = 0; i < expectedActions.length; i++) {
+ String action = outbound ? getAction(outboundMessages.get(i)) : getAction(inboundMessages.get(i));
+ if (null == expectedActions[i]) {
+ assertNull((outbound ? "Outbound " : "Inbound") + " message " + i
+ + " has unexpected action: " + action, action);
+ } else {
+ assertEquals((outbound ? "Outbound " : "Inbound") + " message " + i
+ + " does not contain expected action header"
+ + System.getProperty("line.separator"), expectedActions[i], action);
+ }
+ }
+ }
+
+ public void verifyActionsIgnoringPartialResponses(String[] expectedActions) throws Exception {
+ int j = 0;
+ for (int i = 0; i < inboundMessages.size() && j < expectedActions.length; i++) {
+ String action = getAction(inboundMessages.get(i));
+ if (null == action && emptyBody(inboundMessages.get(i))) {
+ continue;
+ }
+ if (null == expectedActions[j]) {
+ assertNull("Inbound message " + i + " has unexpected action: " + action, action);
+ } else {
+ assertEquals("Inbound message " + i + " has unexpected action: ", expectedActions[j], action);
+ }
+ j++;
+ }
+ if (j < expectedActions.length) {
+ fail("Inbound messages do not contain all expected actions.");
+ }
+ }
+
+ public boolean checkActions(String[] expectedActions, boolean outbound) throws Exception {
+
+ if (expectedActions.length != (outbound ? outboundMessages.size() : inboundMessages.size())) {
+ return false;
+ }
+
+ for (int i = 0; i < expectedActions.length; i++) {
+ String action = outbound ? getAction(outboundMessages.get(i)) : getAction(inboundMessages.get(i));
+ if (null == expectedActions[i]) {
+ if (action != null) {
+ return false;
+ }
+ } else {
+ if (!expectedActions[i].equals(action)) {
+ return false;
+ }
+ }
+ }
+ return true;
+ }
+
+ public void verifyAction(String expectedAction,
+ int expectedCount,
+ boolean outbound,
+ boolean exact) throws Exception {
+ int messageCount = outbound ? outboundMessages.size() : inboundMessages.size();
+ int count = 0;
+ for (int i = 0; i < messageCount; i++) {
+ String action = outbound ? getAction(outboundMessages.get(i)) : getAction(inboundMessages.get(i));
+ if (null == expectedAction) {
+ if (action == null) {
+ count++;
+ }
+ } else {
+ if (expectedAction.equals(action)) {
+ count++;
+ }
+ }
+ }
+ if (exact) {
+ assertEquals("unexpected count for action: " + expectedAction,
+ expectedCount,
+ count);
+ } else {
+ assertTrue("unexpected count for action: " + expectedAction + ": " + count,
+ expectedCount <= count);
+ }
+
+ }
+
+ public void verifyMessageNumbers(String[] expectedMessageNumbers, boolean outbound) throws Exception {
+ verifyMessageNumbers(expectedMessageNumbers, outbound, true);
+ }
+
+ public void verifyMessageNumbers(String[] expectedMessageNumbers,
+ boolean outbound,
+ boolean exact) throws Exception {
+
+ int actualMessageCount =
+ outbound ? outboundMessages.size() : inboundMessages.size();
+ if (exact) {
+ assertEquals(expectedMessageNumbers.length, actualMessageCount);
+ } else {
+ assertTrue(expectedMessageNumbers.length <= actualMessageCount);
+ }
+
+ if (exact) {
+ for (int i = 0; i < expectedMessageNumbers.length; i++) {
+ Element e = outbound ? getSequence(outboundMessages.get(i))
+ : getSequence(inboundMessages.get(i));
+ if (null == expectedMessageNumbers[i]) {
+ assertNull((outbound ? "Outbound" : "Inbound") + " message " + i
+ + " contains unexpected message number ", e);
+ } else {
+ assertEquals((outbound ? "Outbound" : "Inbound") + " message " + i
+ + " does not contain expected message number "
+ + expectedMessageNumbers[i], expectedMessageNumbers[i],
+ getMessageNumber(e));
+ }
+ }
+ } else {
+ boolean[] matches = new boolean[expectedMessageNumbers.length];
+ for (int i = 0; i < actualMessageCount; i++) {
+ String messageNumber = null;
+ Element e = outbound ? getSequence(outboundMessages.get(i))
+ : getSequence(inboundMessages.get(i));
+ messageNumber = null == e ? null : getMessageNumber(e);
+ for (int j = 0; j < expectedMessageNumbers.length; j++) {
+ if (messageNumber == null) {
+ if (expectedMessageNumbers[j] == null && !matches[j]) {
+ matches[j] = true;
+ break;
+ }
+ } else {
+ if (messageNumber.equals(expectedMessageNumbers[j]) && !matches[j]) {
+ matches[j] = true;
+ break;
+ }
+ }
+ }
+ }
+ for (int k = 0; k < expectedMessageNumbers.length; k++) {
+ assertTrue("no match for message number: " + expectedMessageNumbers[k],
+ matches[k]);
+ }
+ }
+ }
+
+ public void verifyLastMessage(boolean[] expectedLastMessages,
+ boolean outbound) throws Exception {
+ verifyLastMessage(expectedLastMessages, outbound, true);
+ }
+
+ public void verifyLastMessage(boolean[] expectedLastMessages,
+ boolean outbound,
+ boolean exact) throws Exception {
+
+ int actualMessageCount =
+ outbound ? outboundMessages.size() : inboundMessages.size();
+ if (exact) {
+ assertEquals(expectedLastMessages.length, actualMessageCount);
+ } else {
+ assertTrue(expectedLastMessages.length <= actualMessageCount);
+ }
+
+ for (int i = 0; i < expectedLastMessages.length; i++) {
+ boolean lastMessage;
+ Element e = outbound ? getSequence(outboundMessages.get(i))
+ : getSequence(inboundMessages.get(i));
+ lastMessage = null == e ? false : getLastMessage(e);
+ assertEquals("Outbound message " + i
+ + (expectedLastMessages[i] ? " does not contain expected last message element."
+ : " contains last message element."),
+ expectedLastMessages[i], lastMessage);
+
+ }
+ }
+
+ public void verifyAcknowledgements(boolean[] expectedAcks, boolean outbound) throws Exception {
+ assertEquals(expectedAcks.length, outbound ? outboundMessages.size()
+ : inboundMessages.size());
+
+ for (int i = 0; i < expectedAcks.length; i++) {
+ boolean ack = outbound ? (null != getAcknowledgment(outboundMessages.get(i)))
+ : (null != getAcknowledgment(inboundMessages.get(i)));
+
+ if (expectedAcks[i]) {
+ assertTrue((outbound ? "Outbound" : "Inbound") + " message " + i
+ + " does not contain expected acknowledgement", ack);
+ } else {
+ assertFalse((outbound ? "Outbound" : "Inbound") + " message " + i
+ + " contains unexpected acknowledgement", ack);
+ }
+ }
+ }
+
+ public void verifyAcknowledgements(int expectedAcks,
+ boolean outbound,
+ boolean exact) throws Exception {
+
+ int actualMessageCount =
+ outbound ? outboundMessages.size() : inboundMessages.size();
+ int ackCount = 0;
+ for (int i = 0; i < actualMessageCount; i++) {
+ boolean ack = outbound ? (null != getAcknowledgment(outboundMessages.get(i)))
+ : (null != getAcknowledgment(inboundMessages.get(i)));
+ if (ack) {
+ ackCount++;
+ }
+ }
+ if (exact) {
+ assertEquals("unexpected number of acks", expectedAcks, ackCount);
+ } else {
+ assertTrue("unexpected number of acks: " + ackCount,
+ expectedAcks <= ackCount);
+ }
+ }
+
+
+ public void verifyAckRequestedOutbound(boolean outbound) throws Exception {
+ boolean found = false;
+ List<Document> messages = outbound ? outboundMessages : inboundMessages;
+ for (Document d : messages) {
+ Element se = getAckRequested(d);
+ if (se != null) {
+ found = true;
+ break;
+ }
+ }
+ assertTrue("expected AckRequested", found);
+ }
+
+ public void verifySequenceFault(QName code, boolean outbound, int index) throws Exception {
+ Document d = outbound ? outboundMessages.get(index) : inboundMessages.get(index);
+ assert null != getRMHeaderElement(d, RMConstants.getSequenceFaultName());
+ }
+
+ public void verifyHeader(QName name, boolean outbound, int index) throws Exception {
+ Document d = outbound ? outboundMessages.get(index) : inboundMessages.get(index);
+ assertNotNull((outbound ? "Outbound" : "Inbound")
+ + " message " + index + " does not have " + name + "header.",
+ getHeaderElement(d, name.getNamespaceURI(), name.getLocalPart()));
+ }
+
+ public void verifyNoHeader(QName name, boolean outbound, int index) throws Exception {
+ Document d = outbound ? outboundMessages.get(index) : inboundMessages.get(index);
+ assertNull((outbound ? "Outbound" : "Inbound")
+ + " message " + index + " has " + name + "header.",
+ getHeaderElement(d, name.getNamespaceURI(), name.getLocalPart()));
+ }
+
+ protected String getAction(Document document) throws Exception {
+ Element e = getHeaderElement(document, RMConstants.getAddressingNamespace(), "Action");
+ if (null != e) {
+ return getText(e);
+ }
+ return null;
+ }
+
+ protected Element getSequence(Document document) throws Exception {
+ return getRMHeaderElement(document, RMConstants.getSequenceName());
+ }
+
+ public String getMessageNumber(Element elem) throws Exception {
+ for (Node nd = elem.getFirstChild(); nd != null; nd = nd.getNextSibling()) {
+ if (Node.ELEMENT_NODE == nd.getNodeType() && "MessageNumber".equals(nd.getLocalName())) {
+ return getText(nd);
+ }
+ }
+ return null;
+ }
+
+ private boolean getLastMessage(Element element) throws Exception {
+ for (Node nd = element.getFirstChild(); nd != null; nd = nd.getNextSibling()) {
+ if (Node.ELEMENT_NODE == nd.getNodeType() && "LastMessage".equals(nd.getLocalName())) {
+ return true;
+ }
+ }
+ return false;
+ }
+
+ protected Element getAcknowledgment(Document document) throws Exception {
+ return getRMHeaderElement(document, RMConstants.getSequenceAckName());
+ }
+
+ private Element getAckRequested(Document document) throws Exception {
+ return getRMHeaderElement(document, RMConstants.getAckRequestedName());
+ }
+
+ private Element getRMHeaderElement(Document document, String name) throws Exception {
+ return getHeaderElement(document, RMConstants.getNamespace(), name);
+ }
+
+ private Element getHeaderElement(Document document, String namespace, String localName)
+ throws Exception {
+ Element envelopeElement = document.getDocumentElement();
+ Element headerElement = null;
+ for (Node nd = envelopeElement.getFirstChild(); nd != null; nd = nd.getNextSibling()) {
+ if (Node.ELEMENT_NODE == nd.getNodeType() && "Header".equals(nd.getLocalName())) {
+ headerElement = (Element)nd;
+ break;
+ }
+ }
+ if (null == headerElement) {
+ return null;
+ }
+ for (Node nd = headerElement.getFirstChild(); nd != null; nd = nd.getNextSibling()) {
+ if (Node.ELEMENT_NODE != nd.getNodeType()) {
+ continue;
+ }
+ Element element = (Element)nd;
+ String ns = element.getNamespaceURI();
+ String ln = element.getLocalName();
+ if (namespace.equals(ns)
+ && localName.equals(ln)) {
+ return element;
+ }
+ }
+ return null;
+ }
+
+
+ public void verifyMessages(int nExpected, boolean outbound) {
+ verifyMessages(nExpected, outbound, true);
+ }
+
+ public void verifyMessages(int nExpected, boolean outbound, boolean exact) {
+ if (outbound) {
+ if (exact) {
+ assertEquals("Unexpected number of outbound messages" + outboundDump(),
+ nExpected, outboundMessages.size());
+ } else {
+ assertTrue("Unexpected number of outbound messages: " + outboundDump(),
+ nExpected <= outboundMessages.size());
+ }
+ } else {
+ if (exact) {
+ assertEquals("Unexpected number of inbound messages", nExpected, inboundMessages.size());
+ } else {
+ assertTrue("Unexpected number of inbound messages: " + inboundMessages.size(),
+ nExpected <= inboundMessages.size());
+ }
+ }
+ }
+
+ public void purgePartialResponses() throws Exception {
+ for (int i = inboundMessages.size() - 1; i >= 0; i--) {
+ if (isPartialResponse(inboundMessages.get(i))) {
+ inboundMessages.remove(i);
+ }
+ }
+ }
+
+ public void purge() {
+ inboundMessages.clear();
+ outboundMessages.clear();
+ inStreams.clear();
+ outStreams.clear();
+ }
+
+ public void verifyPartialResponses(int nExpected) throws Exception {
+ verifyPartialResponses(nExpected, null);
+ }
+
+ public void verifyPartialResponses(int nExpected, boolean[] piggybackedAcks) throws Exception {
+ int npr = 0;
+ for (int i = 0; i < inboundMessages.size(); i++) {
+ if (isPartialResponse(inboundMessages.get(i))) {
+ if (piggybackedAcks != null) {
+ Element ack = getAcknowledgment(inboundMessages.get(i));
+ if (piggybackedAcks[npr]) {
+ assertNotNull("Partial response " + npr + " does not include acknowledgement.", ack);
+ } else {
+ assertNull("Partial response " + npr + " has unexpected acknowledgement.", ack);
+ }
+ }
+ npr++;
+ }
+ }
+ assertEquals("Inbound messages did not contain expected number of partial responses.",
+ nExpected, npr);
+ }
+
+ public boolean isPartialResponse(Document d) throws Exception {
+ return null == getAction(d) && emptyBody(d);
+ }
+
+ public boolean emptyBody(Document d) throws Exception {
+ Element envelopeElement = d.getDocumentElement();
+ Element bodyElement = null;
+ for (Node nd = envelopeElement.getFirstChild(); nd != null; nd = nd.getNextSibling()) {
+ if (Node.ELEMENT_NODE == nd.getNodeType() && "Body".equals(nd.getLocalName())) {
+ bodyElement = (Element)nd;
+ break;
+ }
+ }
+ if (null != bodyElement && bodyElement.hasChildNodes()) {
+ return false;
+ }
+ return true;
+ }
+
+
+ private String outboundDump() {
+ StringBuffer buf = new StringBuffer();
+ try {
+ buf.append(System.getProperty("line.separator"));
+ for (int i = 0; i < outStreams.size(); i++) {
+ buf.append("[");
+ buf.append(i);
+ buf.append("] : ");
+ buf.append(new String(outStreams.get(i)));
+ buf.append(System.getProperty("line.separator"));
+ }
+ } catch (Exception ex) {
+ return "";
+ }
+
+ return buf.toString();
+ }
+
+ private String getText(Node node) {
+ for (Node nd = node.getFirstChild(); nd != null; nd = nd.getNextSibling()) {
+ if (Node.TEXT_NODE == nd.getNodeType()) {
+ return nd.getNodeValue();
+ }
+ }
+ return null;
+ }
+
+ protected QName getNodeName(Node nd) {
+ return new QName(nd.getNamespaceURI(), nd.getLocalName());
+ }
+
+}
Propchange: incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-cxf-bc/src/test/java/org/apache/servicemix/cxfbc/ws/rm/MessageFlow.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-cxf-bc/src/test/java/org/apache/servicemix/cxfbc/ws/rm/MessageFlow.java
------------------------------------------------------------------------------
svn:keywords = Rev Date
Added: incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-cxf-bc/src/test/java/org/apache/servicemix/cxfbc/ws/rm/MessageLossSimulator.java
URL: http://svn.apache.org/viewvc/incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-cxf-bc/src/test/java/org/apache/servicemix/cxfbc/ws/rm/MessageLossSimulator.java?rev=567536&view=auto
==============================================================================
--- incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-cxf-bc/src/test/java/org/apache/servicemix/cxfbc/ws/rm/MessageLossSimulator.java (added)
+++ incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-cxf-bc/src/test/java/org/apache/servicemix/cxfbc/ws/rm/MessageLossSimulator.java Sun Aug 19 20:37:48 2007
@@ -0,0 +1,122 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You 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.servicemix.cxfbc.ws.rm;
+
+import java.io.IOException;
+import java.io.OutputStream;
+import java.math.BigInteger;
+import java.util.ListIterator;
+import java.util.logging.Level;
+import java.util.logging.Logger;
+
+import org.apache.cxf.interceptor.Fault;
+import org.apache.cxf.interceptor.InterceptorChain;
+import org.apache.cxf.interceptor.MessageSenderInterceptor;
+import org.apache.cxf.io.AbstractWrappedOutputStream;
+import org.apache.cxf.message.Message;
+import org.apache.cxf.message.MessageUtils;
+import org.apache.cxf.phase.AbstractPhaseInterceptor;
+import org.apache.cxf.phase.Phase;
+import org.apache.cxf.phase.PhaseInterceptor;
+import org.apache.cxf.ws.addressing.AddressingProperties;
+import org.apache.cxf.ws.rm.RMContextUtils;
+
+public class MessageLossSimulator extends AbstractPhaseInterceptor<Message> {
+
+ private static final Logger LOG = Logger.getLogger(MessageLossSimulator.class.getName());
+ private int appMessageCount;
+
+ public MessageLossSimulator() {
+ super(Phase.PREPARE_SEND);
+ addBefore(MessageSenderInterceptor.class.getName());
+ }
+
+ public void handleMessage(Message message) throws Fault {
+ AddressingProperties maps =
+ RMContextUtils.retrieveMAPs(message, false, true);
+ RMContextUtils.ensureExposedVersion(maps);
+ String action = null;
+ if (maps != null && null != maps.getAction()) {
+ action = maps.getAction().getValue();
+ }
+ if (RMContextUtils.isRMProtocolMessage(action)) {
+ return;
+ }
+ if (MessageUtils.isPartialResponse(message)) {
+ return;
+ }
+ appMessageCount++;
+ if (0 != (appMessageCount % 2)) {
+ return;
+ }
+
+ InterceptorChain chain = message.getInterceptorChain();
+ ListIterator it = chain.getIterator();
+ while (it.hasNext()) {
+ PhaseInterceptor pi = (PhaseInterceptor)it.next();
+ if (MessageSenderInterceptor.class.getName().equals(pi.getId())) {
+ chain.remove(pi);
+ LOG.fine("Removed MessageSenderInterceptor from interceptor chain.");
+ break;
+ }
+ }
+
+ message.setContent(OutputStream.class, new WrappedOutputStream(message));
+
+ message.getInterceptorChain().add(new AbstractPhaseInterceptor<Message>(Phase.PREPARE_SEND_ENDING) {
+
+ public void handleMessage(Message message) throws Fault {
+ try {
+ message.getContent(OutputStream.class).close();
+ } catch (IOException e) {
+ throw new Fault(e);
+ }
+ }
+
+ });
+ }
+
+ private class WrappedOutputStream extends AbstractWrappedOutputStream {
+
+ private Message outMessage;
+
+ public WrappedOutputStream(Message m) {
+ this.outMessage = m;
+ }
+
+ @Override
+ protected void onFirstWrite() throws IOException {
+ if (LOG.isLoggable(Level.FINE)) {
+ BigInteger nr = RMContextUtils.retrieveRMProperties(outMessage, true)
+ .getSequence().getMessageNumber();
+ LOG.fine("Losing message " + nr);
+ }
+ wrappedStream = new DummyOutputStream();
+ }
+ }
+
+ private class DummyOutputStream extends OutputStream {
+
+ @Override
+ public void write(int b) throws IOException {
+ // TODO Auto-generated method stub
+
+ }
+
+ }
+
+}
Propchange: incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-cxf-bc/src/test/java/org/apache/servicemix/cxfbc/ws/rm/MessageLossSimulator.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-cxf-bc/src/test/java/org/apache/servicemix/cxfbc/ws/rm/MessageLossSimulator.java
------------------------------------------------------------------------------
svn:keywords = Rev Date
Added: incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-cxf-bc/src/test/java/org/apache/servicemix/cxfbc/ws/rm/MessageRecorder.java
URL: http://svn.apache.org/viewvc/incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-cxf-bc/src/test/java/org/apache/servicemix/cxfbc/ws/rm/MessageRecorder.java?rev=567536&view=auto
==============================================================================
--- incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-cxf-bc/src/test/java/org/apache/servicemix/cxfbc/ws/rm/MessageRecorder.java (added)
+++ incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-cxf-bc/src/test/java/org/apache/servicemix/cxfbc/ws/rm/MessageRecorder.java Sun Aug 19 20:37:48 2007
@@ -0,0 +1,55 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You 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.servicemix.cxfbc.ws.rm;
+
+import junit.framework.Assert;
+
+public class MessageRecorder extends Assert {
+
+ private OutMessageRecorder outRecorder;
+ private InMessageRecorder inRecorder;
+
+ public MessageRecorder(OutMessageRecorder or, InMessageRecorder ir) {
+ inRecorder = ir;
+ outRecorder = or;
+ }
+
+ public void awaitMessages(int nExpectedOut, int nExpectedIn, int timeout) {
+ int waited = 0;
+ int nOut = 0;
+ int nIn = 0;
+ while (waited <= timeout) {
+ synchronized (outRecorder) {
+ nOut = outRecorder.getOutboundMessages().size();
+ }
+ synchronized (inRecorder) {
+ nIn = inRecorder.getInboundMessages().size();
+ }
+ if (nIn >= nExpectedIn && nOut >= nExpectedOut) {
+ return;
+ }
+ try {
+ Thread.sleep(100);
+ } catch (InterruptedException ex) {
+ // ignore
+ }
+ waited += 100;
+ }
+ assertEquals("Did not receive expected number of inbound messages", nExpectedIn, nIn);
+ assertEquals("Did not send expected number of outbound messages", nExpectedOut, nOut);
+ }
+}
Propchange: incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-cxf-bc/src/test/java/org/apache/servicemix/cxfbc/ws/rm/MessageRecorder.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-cxf-bc/src/test/java/org/apache/servicemix/cxfbc/ws/rm/MessageRecorder.java
------------------------------------------------------------------------------
svn:keywords = Rev Date
Added: incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-cxf-bc/src/test/java/org/apache/servicemix/cxfbc/ws/rm/OutMessageRecorder.java
URL: http://svn.apache.org/viewvc/incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-cxf-bc/src/test/java/org/apache/servicemix/cxfbc/ws/rm/OutMessageRecorder.java?rev=567536&view=auto
==============================================================================
--- incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-cxf-bc/src/test/java/org/apache/servicemix/cxfbc/ws/rm/OutMessageRecorder.java (added)
+++ incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-cxf-bc/src/test/java/org/apache/servicemix/cxfbc/ws/rm/OutMessageRecorder.java Sun Aug 19 20:37:48 2007
@@ -0,0 +1,87 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You 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.servicemix.cxfbc.ws.rm;
+
+import java.io.ByteArrayOutputStream;
+import java.io.OutputStream;
+import java.util.ArrayList;
+import java.util.List;
+import java.util.logging.Level;
+import java.util.logging.Logger;
+
+import org.apache.cxf.interceptor.Fault;
+import org.apache.cxf.interceptor.StaxOutInterceptor;
+import org.apache.cxf.io.CachedOutputStream;
+import org.apache.cxf.io.CachedOutputStreamCallback;
+import org.apache.cxf.io.WriteOnCloseOutputStream;
+import org.apache.cxf.message.Message;
+import org.apache.cxf.phase.AbstractPhaseInterceptor;
+import org.apache.cxf.phase.Phase;
+import org.apache.cxf.ws.rm.RMUtils;
+import org.apache.cxf.ws.rm.RetransmissionInterceptor;
+
+public class OutMessageRecorder extends AbstractPhaseInterceptor {
+
+ private static final Logger LOG = Logger.getLogger(OutMessageRecorder.class.getName());
+ private List<byte[]> outbound;
+
+ public OutMessageRecorder() {
+ super(Phase.PRE_STREAM);
+ outbound = new ArrayList<byte[]>();
+ addAfter(RetransmissionInterceptor.class.getName());
+ addBefore(StaxOutInterceptor.class.getName());
+ }
+
+ public void handleMessage(Message message) throws Fault {
+ OutputStream os = message.getContent(OutputStream.class);
+ if (null == os) {
+ return;
+ }
+
+ WriteOnCloseOutputStream stream = RMUtils.createCachedStream(message, os);
+ stream.registerCallback(new RecorderCallback());
+ }
+
+ public List<byte[]> getOutboundMessages() {
+ return outbound;
+ }
+
+ class RecorderCallback implements CachedOutputStreamCallback {
+
+ public void onFlush(CachedOutputStream cos) {
+
+ }
+
+ public void onClose(CachedOutputStream cos) {
+ // bytes were already copied after flush
+ OutputStream os = cos.getOut();
+ if (os instanceof ByteArrayOutputStream) {
+ ByteArrayOutputStream bos = (ByteArrayOutputStream)os;
+ outbound.add(bos.toByteArray());
+ if (LOG.isLoggable(Level.FINE)) {
+ LOG.fine("outbound: " + bos.toString());
+ }
+ LOG.info("***outbound: " + bos.toString());
+ } else {
+ LOG.fine("Can't record message from output stream class: " + os.getClass().getName());
+ }
+ }
+
+ }
+
+}
+
Propchange: incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-cxf-bc/src/test/java/org/apache/servicemix/cxfbc/ws/rm/OutMessageRecorder.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-cxf-bc/src/test/java/org/apache/servicemix/cxfbc/ws/rm/OutMessageRecorder.java
------------------------------------------------------------------------------
svn:keywords = Rev Date
Added: incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-cxf-bc/src/test/java/org/apache/servicemix/cxfbc/ws/rm/TwowayThread.java
URL: http://svn.apache.org/viewvc/incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-cxf-bc/src/test/java/org/apache/servicemix/cxfbc/ws/rm/TwowayThread.java?rev=567536&view=auto
==============================================================================
--- incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-cxf-bc/src/test/java/org/apache/servicemix/cxfbc/ws/rm/TwowayThread.java (added)
+++ incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-cxf-bc/src/test/java/org/apache/servicemix/cxfbc/ws/rm/TwowayThread.java Sun Aug 19 20:37:48 2007
@@ -0,0 +1,38 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You 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.servicemix.cxfbc.ws.rm;
+
+import org.apache.cxf.greeter_control.Greeter;
+
+public class TwowayThread extends Thread {
+
+ private String response;
+ private Greeter greeter;
+ public TwowayThread(Greeter gr) {
+ greeter = gr;
+ }
+ @Override
+ public void run() {
+
+ response = greeter.greetMe("twoway");
+ }
+
+ public String getResponse() {
+ return response;
+ }
+
+}
\ No newline at end of file
Propchange: incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-cxf-bc/src/test/java/org/apache/servicemix/cxfbc/ws/rm/TwowayThread.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-cxf-bc/src/test/java/org/apache/servicemix/cxfbc/ws/rm/TwowayThread.java
------------------------------------------------------------------------------
svn:keywords = Rev Date
Added: incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-cxf-bc/src/test/java/org/apache/servicemix/cxfbc/ws/security/CxfBCSecurityTest.java
URL: http://svn.apache.org/viewvc/incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-cxf-bc/src/test/java/org/apache/servicemix/cxfbc/ws/security/CxfBCSecurityTest.java?rev=567536&view=auto
==============================================================================
--- incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-cxf-bc/src/test/java/org/apache/servicemix/cxfbc/ws/security/CxfBCSecurityTest.java (added)
+++ incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-cxf-bc/src/test/java/org/apache/servicemix/cxfbc/ws/security/CxfBCSecurityTest.java Sun Aug 19 20:37:48 2007
@@ -0,0 +1,80 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You 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.servicemix.cxfbc.ws.security;
+
+import java.util.logging.Logger;
+
+import org.apache.cxf.Bus;
+import org.apache.cxf.BusFactory;
+import org.apache.cxf.bus.spring.SpringBusFactory;
+import org.apache.cxf.interceptor.LoggingInInterceptor;
+import org.apache.cxf.interceptor.LoggingOutInterceptor;
+import org.apache.hello_world_soap_http.Greeter;
+import org.apache.servicemix.tck.SpringTestSupport;
+import org.apache.xbean.spring.context.ClassPathXmlApplicationContext;
+import org.springframework.context.support.AbstractXmlApplicationContext;
+
+public class CxfBCSecurityTest extends SpringTestSupport {
+
+ private static final Logger LOG = Logger.getLogger(CxfBCSecurityTest.class
+ .getName());
+
+ private static final java.net.URL WSDL_LOC;
+ static {
+ java.net.URL tmp = null;
+ try {
+ tmp = CxfBCSecurityTest.class.getClassLoader().getResource(
+ "org/apache/servicemix/cxfbc/ws/security/hello_world.wsdl"
+ );
+ } catch (final Exception e) {
+ e.printStackTrace();
+ }
+ WSDL_LOC = tmp;
+ }
+
+ public void testTimestampSignEncrypt() {
+ LOG.info("test security");
+ Bus bus = new SpringBusFactory().createBus(
+ "org/apache/servicemix/cxfbc/ws/security/client.xml");
+ BusFactory.setDefaultBus(bus);
+ LoggingInInterceptor in = new LoggingInInterceptor();
+ bus.getInInterceptors().add(in);
+ bus.getInFaultInterceptors().add(in);
+ LoggingOutInterceptor out = new LoggingOutInterceptor();
+ bus.getOutInterceptors().add(out);
+ bus.getOutFaultInterceptors().add(out);
+ final javax.xml.ws.Service svc = javax.xml.ws.Service.create(WSDL_LOC,
+ new javax.xml.namespace.QName(
+ "http://apache.org/hello_world_soap_http",
+ "SOAPServiceWSSecurity"));
+ final Greeter greeter = svc.getPort(new javax.xml.namespace.QName(
+ "http://apache.org/hello_world_soap_http",
+ "TimestampSignEncrypt"), Greeter.class);
+ String ret = greeter.sayHi();
+ assertEquals(ret, "Bonjour");
+ ret = greeter.greetMe("ffang");
+ assertEquals(ret, "Hello ffang");
+ }
+
+ @Override
+ protected AbstractXmlApplicationContext createBeanFactory() {
+ // load cxf se and bc from spring config file
+ return new ClassPathXmlApplicationContext(
+ "org/apache/servicemix/cxfbc/ws/security/xbean.xml");
+ }
+
+}
Propchange: incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-cxf-bc/src/test/java/org/apache/servicemix/cxfbc/ws/security/CxfBCSecurityTest.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-cxf-bc/src/test/java/org/apache/servicemix/cxfbc/ws/security/CxfBCSecurityTest.java
------------------------------------------------------------------------------
svn:keywords = Rev Date
Added: incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-cxf-bc/src/test/java/org/apache/servicemix/cxfbc/ws/security/GreeterImpl.java
URL: http://svn.apache.org/viewvc/incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-cxf-bc/src/test/java/org/apache/servicemix/cxfbc/ws/security/GreeterImpl.java?rev=567536&view=auto
==============================================================================
--- incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-cxf-bc/src/test/java/org/apache/servicemix/cxfbc/ws/security/GreeterImpl.java (added)
+++ incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-cxf-bc/src/test/java/org/apache/servicemix/cxfbc/ws/security/GreeterImpl.java Sun Aug 19 20:37:48 2007
@@ -0,0 +1,33 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You 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.servicemix.cxfbc.ws.security;
+
+@javax.jws.WebService(
+ serviceName = "SOAPServiceWSSecurity",
+ portName = "TimestampSignEncrypt",
+ endpointInterface = "org.apache.hello_world_soap_http.Greeter",
+ targetNamespace = "http://apache.org/hello_world_soap_http",
+ wsdlLocation = "org/apache/servicemix/cxfbc/ws/security/hello_world.wsdl"
+ )
+public class GreeterImpl
+ extends org.apache.hello_world_soap_http.GreeterImpl {
+ public String greetMe(String me) {
+ System.out.println("\n\n*** GreetMe called with: " + me + "***\n\n");
+ return "Hello " + me;
+ }
+
+}
Propchange: incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-cxf-bc/src/test/java/org/apache/servicemix/cxfbc/ws/security/GreeterImpl.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-cxf-bc/src/test/java/org/apache/servicemix/cxfbc/ws/security/GreeterImpl.java
------------------------------------------------------------------------------
svn:keywords = Rev Date
Added: incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-cxf-bc/src/test/java/org/apache/servicemix/cxfbc/ws/security/KeystorePasswordCallback.java
URL: http://svn.apache.org/viewvc/incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-cxf-bc/src/test/java/org/apache/servicemix/cxfbc/ws/security/KeystorePasswordCallback.java?rev=567536&view=auto
==============================================================================
--- incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-cxf-bc/src/test/java/org/apache/servicemix/cxfbc/ws/security/KeystorePasswordCallback.java (added)
+++ incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-cxf-bc/src/test/java/org/apache/servicemix/cxfbc/ws/security/KeystorePasswordCallback.java Sun Aug 19 20:37:48 2007
@@ -0,0 +1,62 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You 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.servicemix.cxfbc.ws.security;
+
+import java.io.IOException;
+import java.util.HashMap;
+import java.util.Map;
+
+import javax.security.auth.callback.Callback;
+import javax.security.auth.callback.CallbackHandler;
+import javax.security.auth.callback.UnsupportedCallbackException;
+
+import org.apache.ws.security.WSPasswordCallback;
+
+public class KeystorePasswordCallback implements CallbackHandler {
+
+ private Map<String, String> passwords =
+ new HashMap<String, String>();
+
+ public KeystorePasswordCallback() {
+ passwords.put("alice", "password");
+ passwords.put("bob", "password");
+ }
+
+ /**
+ * It attempts to get the password from the private
+ * alias/passwords map.
+ */
+ public void handle(Callback[] callbacks) throws IOException, UnsupportedCallbackException {
+ for (int i = 0; i < callbacks.length; i++) {
+ WSPasswordCallback pc = (WSPasswordCallback)callbacks[i];
+
+ String pass = passwords.get(pc.getIdentifer());
+ if (pass != null) {
+ pc.setPassword(pass);
+ return;
+ }
+ }
+ }
+
+ /**
+ * Add an alias/password pair to the callback mechanism.
+ */
+ public void setAliasPassword(String alias, String password) {
+ passwords.put(alias, password);
+ }
+}
+
Propchange: incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-cxf-bc/src/test/java/org/apache/servicemix/cxfbc/ws/security/KeystorePasswordCallback.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-cxf-bc/src/test/java/org/apache/servicemix/cxfbc/ws/security/KeystorePasswordCallback.java
------------------------------------------------------------------------------
svn:keywords = Rev Date
Added: incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-cxf-bc/src/test/resources/org/apache/servicemix/cxfbc/ws/rm/atmostonce.xml
URL: http://svn.apache.org/viewvc/incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-cxf-bc/src/test/resources/org/apache/servicemix/cxfbc/ws/rm/atmostonce.xml?rev=567536&view=auto
==============================================================================
--- incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-cxf-bc/src/test/resources/org/apache/servicemix/cxfbc/ws/rm/atmostonce.xml (added)
+++ incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-cxf-bc/src/test/resources/org/apache/servicemix/cxfbc/ws/rm/atmostonce.xml Sun Aug 19 20:37:48 2007
@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one
+ or more contributor license agreements. See the NOTICE file
+ distributed with this work for additional information
+ regarding copyright ownership. The ASF licenses this file
+ to you 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.
+-->
+<beans xmlns="http://www.springframework.org/schema/beans"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns:wsrm-mgr="http://cxf.apache.org/ws/rm/manager"
+ xmlns:wsrm-policy="http://schemas.xmlsoap.org/ws/2005/02/rm/policy"
+ xsi:schemaLocation="
+http://schemas.xmlsoap.org/ws/2005/02/rm/policy http://schemas.xmlsoap.org/ws/2005/02/rm/wsrm-policy.xsd
+http://cxf.apache.org/ws/rm/manager http://cxf.apache.org/schemas/configuration/wsrm-manager.xsd
+http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">
+
+ <import resource="rminterceptors.xml" />
+
+ <wsrm-mgr:rmManager id="org.apache.cxf.ws.rm.RMManager">
+ <wsrm-policy:RMAssertion>
+ <wsrm-policy:BaseRetransmissionInterval Milliseconds="60000" />
+ <wsrm-policy:AcknowledgementInterval Milliseconds="10000" />
+ </wsrm-policy:RMAssertion>
+ <wsrm-mgr:deliveryAssurance>
+ <wsrm-mgr:AtMostOnce />
+ </wsrm-mgr:deliveryAssurance>
+ <wsrm-mgr:destinationPolicy>
+ <wsrm-mgr:acksPolicy intraMessageThreshold="0" />
+ </wsrm-mgr:destinationPolicy>
+ </wsrm-mgr:rmManager>
+
+
+</beans>
\ No newline at end of file
Propchange: incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-cxf-bc/src/test/resources/org/apache/servicemix/cxfbc/ws/rm/atmostonce.xml
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-cxf-bc/src/test/resources/org/apache/servicemix/cxfbc/ws/rm/atmostonce.xml
------------------------------------------------------------------------------
svn:keywords = Rev Date
Propchange: incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-cxf-bc/src/test/resources/org/apache/servicemix/cxfbc/ws/rm/atmostonce.xml
------------------------------------------------------------------------------
svn:mime-type = text/xml
Added: incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-cxf-bc/src/test/resources/org/apache/servicemix/cxfbc/ws/rm/decoupled.xml
URL: http://svn.apache.org/viewvc/incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-cxf-bc/src/test/resources/org/apache/servicemix/cxfbc/ws/rm/decoupled.xml?rev=567536&view=auto
==============================================================================
--- incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-cxf-bc/src/test/resources/org/apache/servicemix/cxfbc/ws/rm/decoupled.xml (added)
+++ incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-cxf-bc/src/test/resources/org/apache/servicemix/cxfbc/ws/rm/decoupled.xml Sun Aug 19 20:37:48 2007
@@ -0,0 +1,63 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one
+ or more contributor license agreements. See the NOTICE file
+ distributed with this work for additional information
+ regarding copyright ownership. The ASF licenses this file
+ to you 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.
+-->
+<beans xmlns="http://www.springframework.org/schema/beans"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns:http="http://cxf.apache.org/transports/http/configuration"
+ xsi:schemaLocation="
+http://cxf.apache.org/transports/http/configuration http://cxf.apache.org/schemas/configuration/http-conf.xsd
+http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">
+
+ <http:conduit name="{http://cxf.apache.org/greeter_control}GreeterPort.http-conduit">
+ <http:client DecoupledEndpoint="http://localhost:9995/decoupled_endpoint"/>
+ </http:conduit>
+
+ <bean id="mapAggregator" class="org.apache.cxf.ws.addressing.MAPAggregator"/>
+ <bean id="mapCodec" class="org.apache.cxf.ws.addressing.soap.MAPCodec"/>
+
+ <!-- We are adding the interceptors to the bus as we will have only one endpoint/service/bus. -->
+
+ <bean id="cxf" class="org.apache.cxf.bus.CXFBusImpl">
+ <property name="inInterceptors">
+ <list>
+ <ref bean="mapAggregator"/>
+ <ref bean="mapCodec"/>
+ </list>
+ </property>
+ <property name="inFaultInterceptors">
+ <list>
+ <ref bean="mapAggregator"/>
+ <ref bean="mapCodec"/>
+ </list>
+ </property>
+ <property name="outInterceptors">
+ <list>
+ <ref bean="mapAggregator"/>
+ <ref bean="mapCodec"/>
+ </list>
+ </property>
+ <property name="outFaultInterceptors">
+ <list>
+ <ref bean="mapAggregator"/>
+ <ref bean="mapCodec"/>
+ </list>
+ </property>
+ </bean>
+
+</beans>
\ No newline at end of file
Propchange: incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-cxf-bc/src/test/resources/org/apache/servicemix/cxfbc/ws/rm/decoupled.xml
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-cxf-bc/src/test/resources/org/apache/servicemix/cxfbc/ws/rm/decoupled.xml
------------------------------------------------------------------------------
svn:keywords = Rev Date
Propchange: incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-cxf-bc/src/test/resources/org/apache/servicemix/cxfbc/ws/rm/decoupled.xml
------------------------------------------------------------------------------
svn:mime-type = text/xml
Added: incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-cxf-bc/src/test/resources/org/apache/servicemix/cxfbc/ws/rm/deferred.xml
URL: http://svn.apache.org/viewvc/incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-cxf-bc/src/test/resources/org/apache/servicemix/cxfbc/ws/rm/deferred.xml?rev=567536&view=auto
==============================================================================
--- incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-cxf-bc/src/test/resources/org/apache/servicemix/cxfbc/ws/rm/deferred.xml (added)
+++ incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-cxf-bc/src/test/resources/org/apache/servicemix/cxfbc/ws/rm/deferred.xml Sun Aug 19 20:37:48 2007
@@ -0,0 +1,41 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one
+ or more contributor license agreements. See the NOTICE file
+ distributed with this work for additional information
+ regarding copyright ownership. The ASF licenses this file
+ to you 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.
+-->
+<beans xmlns="http://www.springframework.org/schema/beans"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns:wsrm-mgr="http://cxf.apache.org/ws/rm/manager"
+ xmlns:wsrm-policy="http://schemas.xmlsoap.org/ws/2005/02/rm/policy"
+ xsi:schemaLocation="
+http://schemas.xmlsoap.org/ws/2005/02/rm/policy http://schemas.xmlsoap.org/ws/2005/02/rm/wsrm-policy.xsd
+http://cxf.apache.org/ws/rm/manager http://cxf.apache.org/schemas/configuration/wsrm-manager.xsd
+http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">
+
+ <import resource="rminterceptors.xml"/>
+
+ <wsrm-mgr:rmManager id="org.apache.cxf.ws.rm.RMManager">
+ <wsrm-policy:RMAssertion>
+ <wsrm-policy:BaseRetransmissionInterval Milliseconds="10000"/>
+ <wsrm-policy:AcknowledgementInterval Milliseconds="2000"/>
+ </wsrm-policy:RMAssertion>
+ <wsrm-mgr:destinationPolicy>
+ <wsrm-mgr:acksPolicy intraMessageThreshold="0"/>
+ </wsrm-mgr:destinationPolicy>
+ </wsrm-mgr:rmManager>
+
+</beans>
Propchange: incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-cxf-bc/src/test/resources/org/apache/servicemix/cxfbc/ws/rm/deferred.xml
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-cxf-bc/src/test/resources/org/apache/servicemix/cxfbc/ws/rm/deferred.xml
------------------------------------------------------------------------------
svn:keywords = Rev Date
Propchange: incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-cxf-bc/src/test/resources/org/apache/servicemix/cxfbc/ws/rm/deferred.xml
------------------------------------------------------------------------------
svn:mime-type = text/xml
Added: incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-cxf-bc/src/test/resources/org/apache/servicemix/cxfbc/ws/rm/inactivity-timeout.xml
URL: http://svn.apache.org/viewvc/incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-cxf-bc/src/test/resources/org/apache/servicemix/cxfbc/ws/rm/inactivity-timeout.xml?rev=567536&view=auto
==============================================================================
--- incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-cxf-bc/src/test/resources/org/apache/servicemix/cxfbc/ws/rm/inactivity-timeout.xml (added)
+++ incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-cxf-bc/src/test/resources/org/apache/servicemix/cxfbc/ws/rm/inactivity-timeout.xml Sun Aug 19 20:37:48 2007
@@ -0,0 +1,38 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one
+ or more contributor license agreements. See the NOTICE file
+ distributed with this work for additional information
+ regarding copyright ownership. The ASF licenses this file
+ to you 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.
+-->
+<beans xmlns="http://www.springframework.org/schema/beans"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns:wsrm-mgr="http://cxf.apache.org/ws/rm/manager"
+ xmlns:wsrm-policy="http://schemas.xmlsoap.org/ws/2005/02/rm/policy"
+ xsi:schemaLocation="
+http://schemas.xmlsoap.org/ws/2005/02/rm/policy http://schemas.xmlsoap.org/ws/2005/02/rm/wsrm-policy.xsd
+http://cxf.apache.org/ws/rm/manager http://cxf.apache.org/schemas/configuration/wsrm-manager.xsd
+http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">
+
+ <import resource="rminterceptors.xml" />
+
+ <wsrm-mgr:rmManager id="org.apache.cxf.ws.rm.RMManager">
+ <wsrm-policy:RMAssertion>
+ <wsrm-policy:InactivityTimeout Milliseconds="200" />
+ </wsrm-policy:RMAssertion>
+ </wsrm-mgr:rmManager>
+
+
+</beans>
\ No newline at end of file
Propchange: incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-cxf-bc/src/test/resources/org/apache/servicemix/cxfbc/ws/rm/inactivity-timeout.xml
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-cxf-bc/src/test/resources/org/apache/servicemix/cxfbc/ws/rm/inactivity-timeout.xml
------------------------------------------------------------------------------
svn:keywords = Rev Date
Propchange: incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-cxf-bc/src/test/resources/org/apache/servicemix/cxfbc/ws/rm/inactivity-timeout.xml
------------------------------------------------------------------------------
svn:mime-type = text/xml
Added: incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-cxf-bc/src/test/resources/org/apache/servicemix/cxfbc/ws/rm/message-loss-server.xml
URL: http://svn.apache.org/viewvc/incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-cxf-bc/src/test/resources/org/apache/servicemix/cxfbc/ws/rm/message-loss-server.xml?rev=567536&view=auto
==============================================================================
--- incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-cxf-bc/src/test/resources/org/apache/servicemix/cxfbc/ws/rm/message-loss-server.xml (added)
+++ incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-cxf-bc/src/test/resources/org/apache/servicemix/cxfbc/ws/rm/message-loss-server.xml Sun Aug 19 20:37:48 2007
@@ -0,0 +1,89 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one
+ or more contributor license agreements. See the NOTICE file
+ distributed with this work for additional information
+ regarding copyright ownership. The ASF licenses this file
+ to you 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.
+-->
+<beans xmlns="http://www.springframework.org/schema/beans"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns:wsrm-mgr="http://cxf.apache.org/ws/rm/manager"
+ xmlns:wsrm-policy="http://schemas.xmlsoap.org/ws/2005/02/rm/policy"
+ xmlns:http-conf="http://cxf.apache.org/transports/http/configuration"
+ xsi:schemaLocation="
+http://schemas.xmlsoap.org/ws/2005/02/rm/policy http://schemas.xmlsoap.org/ws/2005/02/rm/wsrm-policy.xsd
+http://cxf.apache.org/ws/rm/manager http://cxf.apache.org/schemas/configuration/wsrm-manager.xsd
+http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">
+
+ <bean id="mapAggregator" class="org.apache.cxf.ws.addressing.MAPAggregator"/>
+ <bean id="mapCodec" class="org.apache.cxf.ws.addressing.soap.MAPCodec"/>
+ <bean id="rmLogicalOut" class="org.apache.cxf.ws.rm.RMOutInterceptor">
+ <property name="bus" ref="cxf"/>
+ </bean>
+ <bean id="rmLogicalIn" class="org.apache.cxf.ws.rm.RMInInterceptor">
+ <property name="bus" ref="cxf"/>
+ </bean>
+ <bean id="rmCodec" class="org.apache.cxf.ws.rm.soap.RMSoapInterceptor"/>
+ <bean id="messageLoss" class="org.apache.servicemix.cxfbc.ws.rm.MessageLossSimulator"/>
+
+ <!-- We are adding the interceptors to the bus as we will have only one endpoint/service/bus. -->
+
+ <bean id="cxf" class="org.apache.cxf.bus.CXFBusImpl">
+ <property name="inInterceptors">
+ <list>
+ <ref bean="mapAggregator"/>
+ <ref bean="mapCodec"/>
+ <ref bean="rmLogicalIn"/>
+ <ref bean="rmCodec"/>
+ </list>
+ </property>
+ <property name="inFaultInterceptors">
+ <list>
+ <ref bean="mapAggregator"/>
+ <ref bean="mapCodec"/>
+ <ref bean="rmLogicalIn"/>
+ <ref bean="rmCodec"/>
+ </list>
+ </property>
+ <property name="outInterceptors">
+ <list>
+ <ref bean="mapAggregator"/>
+ <ref bean="mapCodec"/>
+ <ref bean="rmLogicalOut"/>
+ <ref bean="rmCodec"/>
+ <ref bean="messageLoss"/>
+ </list>
+ </property>
+ <property name="outFaultInterceptors">
+ <list>
+ <ref bean="mapAggregator"/>
+ <ref bean="mapCodec"/>
+ <ref bean="rmLogicalOut"/>
+ <ref bean="rmCodec"/>
+ </list>
+ </property>
+ </bean>
+
+
+
+ <wsrm-mgr:rmManager id="org.apache.cxf.ws.rm.RMManager">
+ <wsrm-policy:RMAssertion>
+ <!-- avoid server side resends, change programatically for client -->
+ <wsrm-policy:BaseRetransmissionInterval Milliseconds="2000" />
+ </wsrm-policy:RMAssertion>
+ </wsrm-mgr:rmManager>
+
+
+</beans>
Propchange: incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-cxf-bc/src/test/resources/org/apache/servicemix/cxfbc/ws/rm/message-loss-server.xml
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-cxf-bc/src/test/resources/org/apache/servicemix/cxfbc/ws/rm/message-loss-server.xml
------------------------------------------------------------------------------
svn:keywords = Rev Date
Propchange: incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-cxf-bc/src/test/resources/org/apache/servicemix/cxfbc/ws/rm/message-loss-server.xml
------------------------------------------------------------------------------
svn:mime-type = text/xml
Added: incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-cxf-bc/src/test/resources/org/apache/servicemix/cxfbc/ws/rm/message-loss.xml
URL: http://svn.apache.org/viewvc/incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-cxf-bc/src/test/resources/org/apache/servicemix/cxfbc/ws/rm/message-loss.xml?rev=567536&view=auto
==============================================================================
--- incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-cxf-bc/src/test/resources/org/apache/servicemix/cxfbc/ws/rm/message-loss.xml (added)
+++ incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-cxf-bc/src/test/resources/org/apache/servicemix/cxfbc/ws/rm/message-loss.xml Sun Aug 19 20:37:48 2007
@@ -0,0 +1,41 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one
+ or more contributor license agreements. See the NOTICE file
+ distributed with this work for additional information
+ regarding copyright ownership. The ASF licenses this file
+ to you 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.
+-->
+<beans xmlns="http://www.springframework.org/schema/beans"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns:wsrm-mgr="http://cxf.apache.org/ws/rm/manager"
+ xmlns:wsrm-policy="http://schemas.xmlsoap.org/ws/2005/02/rm/policy"
+ xmlns:http-conf="http://cxf.apache.org/transports/http/configuration"
+ xsi:schemaLocation="
+http://schemas.xmlsoap.org/ws/2005/02/rm/policy http://schemas.xmlsoap.org/ws/2005/02/rm/wsrm-policy.xsd
+http://cxf.apache.org/ws/rm/manager http://cxf.apache.org/schemas/configuration/wsrm-manager.xsd
+http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">
+
+ <import resource="rminterceptors.xml" />
+
+ <wsrm-mgr:rmManager id="org.apache.cxf.ws.rm.RMManager">
+ <wsrm-policy:RMAssertion>
+ <!-- avoid server side resends, change programatically for client -->
+ <wsrm-policy:BaseRetransmissionInterval Milliseconds="60000" />
+ <wsrm-policy:AcknowledgementInterval Milliseconds="2000" />
+ </wsrm-policy:RMAssertion>
+ </wsrm-mgr:rmManager>
+
+
+</beans>
\ No newline at end of file
Propchange: incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-cxf-bc/src/test/resources/org/apache/servicemix/cxfbc/ws/rm/message-loss.xml
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-cxf-bc/src/test/resources/org/apache/servicemix/cxfbc/ws/rm/message-loss.xml
------------------------------------------------------------------------------
svn:keywords = Rev Date
Propchange: incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-cxf-bc/src/test/resources/org/apache/servicemix/cxfbc/ws/rm/message-loss.xml
------------------------------------------------------------------------------
svn:mime-type = text/xml
Added: incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-cxf-bc/src/test/resources/org/apache/servicemix/cxfbc/ws/rm/no-offer.xml
URL: http://svn.apache.org/viewvc/incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-cxf-bc/src/test/resources/org/apache/servicemix/cxfbc/ws/rm/no-offer.xml?rev=567536&view=auto
==============================================================================
--- incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-cxf-bc/src/test/resources/org/apache/servicemix/cxfbc/ws/rm/no-offer.xml (added)
+++ incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-cxf-bc/src/test/resources/org/apache/servicemix/cxfbc/ws/rm/no-offer.xml Sun Aug 19 20:37:48 2007
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one
+ or more contributor license agreements. See the NOTICE file
+ distributed with this work for additional information
+ regarding copyright ownership. The ASF licenses this file
+ to you 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.
+-->
+<beans xmlns="http://www.springframework.org/schema/beans"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns:wsrm-mgr="http://cxf.apache.org/ws/rm/manager"
+ xmlns:wsrm-policy="http://schemas.xmlsoap.org/ws/2005/02/rm/policy"
+ xsi:schemaLocation="
+http://schemas.xmlsoap.org/ws/2005/02/rm/policy http://schemas.xmlsoap.org/ws/2005/02/rm/wsrm-policy.xsd
+http://cxf.apache.org/ws/rm/manager http://cxf.apache.org/schemas/configuration/wsrm-manager.xsd
+http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">
+
+ <import resource="rminterceptors.xml" />
+
+ <wsrm-mgr:rmManager id="org.apache.cxf.ws.rm.RMManager">
+ <wsrm-policy:RMAssertion>
+ <wsrm-policy:BaseRetransmissionInterval Milliseconds="60000" />
+ <wsrm-policy:AcknowledgementInterval Milliseconds="60000" />
+ </wsrm-policy:RMAssertion>
+ <wsrm-mgr:sourcePolicy includeOffer="false"/>
+ <wsrm-mgr:destinationPolicy>
+ <wsrm-mgr:acksPolicy intraMessageThreshold="0" />
+ </wsrm-mgr:destinationPolicy>
+ </wsrm-mgr:rmManager>
+
+</beans>
\ No newline at end of file
Propchange: incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-cxf-bc/src/test/resources/org/apache/servicemix/cxfbc/ws/rm/no-offer.xml
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-cxf-bc/src/test/resources/org/apache/servicemix/cxfbc/ws/rm/no-offer.xml
------------------------------------------------------------------------------
svn:keywords = Rev Date
Propchange: incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-cxf-bc/src/test/resources/org/apache/servicemix/cxfbc/ws/rm/no-offer.xml
------------------------------------------------------------------------------
svn:mime-type = text/xml
Added: incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-cxf-bc/src/test/resources/org/apache/servicemix/cxfbc/ws/rm/rminterceptors.xml
URL: http://svn.apache.org/viewvc/incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-cxf-bc/src/test/resources/org/apache/servicemix/cxfbc/ws/rm/rminterceptors.xml?rev=567536&view=auto
==============================================================================
--- incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-cxf-bc/src/test/resources/org/apache/servicemix/cxfbc/ws/rm/rminterceptors.xml (added)
+++ incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-cxf-bc/src/test/resources/org/apache/servicemix/cxfbc/ws/rm/rminterceptors.xml Sun Aug 19 20:37:48 2007
@@ -0,0 +1,70 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one
+ or more contributor license agreements. See the NOTICE file
+ distributed with this work for additional information
+ regarding copyright ownership. The ASF licenses this file
+ to you 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.
+-->
+<beans xmlns="http://www.springframework.org/schema/beans"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="
+http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">
+
+ <bean id="mapAggregator" class="org.apache.cxf.ws.addressing.MAPAggregator"/>
+ <bean id="mapCodec" class="org.apache.cxf.ws.addressing.soap.MAPCodec"/>
+ <bean id="rmLogicalOut" class="org.apache.cxf.ws.rm.RMOutInterceptor">
+ <property name="bus" ref="cxf"/>
+ </bean>
+ <bean id="rmLogicalIn" class="org.apache.cxf.ws.rm.RMInInterceptor">
+ <property name="bus" ref="cxf"/>
+ </bean>
+ <bean id="rmCodec" class="org.apache.cxf.ws.rm.soap.RMSoapInterceptor"/>
+
+
+ <bean id="cxf" class="org.apache.cxf.bus.CXFBusImpl">
+ <property name="inInterceptors">
+ <list>
+ <ref bean="mapAggregator"/>
+ <ref bean="mapCodec"/>
+ <ref bean="rmLogicalIn"/>
+ <ref bean="rmCodec"/>
+ </list>
+ </property>
+ <property name="inFaultInterceptors">
+ <list>
+ <ref bean="mapAggregator"/>
+ <ref bean="mapCodec"/>
+ <ref bean="rmLogicalIn"/>
+ <ref bean="rmCodec"/>
+ </list>
+ </property>
+ <property name="outInterceptors">
+ <list>
+ <ref bean="mapAggregator"/>
+ <ref bean="mapCodec"/>
+ <ref bean="rmLogicalOut"/>
+ <ref bean="rmCodec"/>
+ </list>
+ </property>
+ <property name="outFaultInterceptors">
+ <list>
+ <ref bean="mapAggregator"/>
+ <ref bean="mapCodec"/>
+ <ref bean="rmLogicalOut"/>
+ <ref bean="rmCodec"/>
+ </list>
+ </property>
+ </bean>
+</beans>
Propchange: incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-cxf-bc/src/test/resources/org/apache/servicemix/cxfbc/ws/rm/rminterceptors.xml
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-cxf-bc/src/test/resources/org/apache/servicemix/cxfbc/ws/rm/rminterceptors.xml
------------------------------------------------------------------------------
svn:keywords = Rev Date
Propchange: incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-cxf-bc/src/test/resources/org/apache/servicemix/cxfbc/ws/rm/rminterceptors.xml
------------------------------------------------------------------------------
svn:mime-type = text/xml
Added: incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-cxf-bc/src/test/resources/org/apache/servicemix/cxfbc/ws/rm/seqlength1.xml
URL: http://svn.apache.org/viewvc/incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-cxf-bc/src/test/resources/org/apache/servicemix/cxfbc/ws/rm/seqlength1.xml?rev=567536&view=auto
==============================================================================
--- incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-cxf-bc/src/test/resources/org/apache/servicemix/cxfbc/ws/rm/seqlength1.xml (added)
+++ incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-cxf-bc/src/test/resources/org/apache/servicemix/cxfbc/ws/rm/seqlength1.xml Sun Aug 19 20:37:48 2007
@@ -0,0 +1,35 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one
+ or more contributor license agreements. See the NOTICE file
+ distributed with this work for additional information
+ regarding copyright ownership. The ASF licenses this file
+ to you 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.
+-->
+<beans xmlns="http://www.springframework.org/schema/beans"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns:wsrm-mgr="http://cxf.apache.org/ws/rm/manager"
+ xsi:schemaLocation="
+http://cxf.apache.org/ws/rm/manager http://cxf.apache.org/schemas/configuration/wsrm-manager.xsd
+http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">
+
+ <import resource="rminterceptors.xml" />
+
+ <wsrm-mgr:rmManager id="org.apache.cxf.ws.rm.RMManager">
+ <wsrm-mgr:sourcePolicy>
+ <wsrm-mgr:sequenceTerminationPolicy maxLength="1" />
+ </wsrm-mgr:sourcePolicy>
+ </wsrm-mgr:rmManager>
+
+</beans>
\ No newline at end of file
Propchange: incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-cxf-bc/src/test/resources/org/apache/servicemix/cxfbc/ws/rm/seqlength1.xml
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-cxf-bc/src/test/resources/org/apache/servicemix/cxfbc/ws/rm/seqlength1.xml
------------------------------------------------------------------------------
svn:keywords = Rev Date
Propchange: incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-cxf-bc/src/test/resources/org/apache/servicemix/cxfbc/ws/rm/seqlength1.xml
------------------------------------------------------------------------------
svn:mime-type = text/xml
Added: incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-cxf-bc/src/test/resources/org/apache/servicemix/cxfbc/ws/rm/seqlength10.xml
URL: http://svn.apache.org/viewvc/incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-cxf-bc/src/test/resources/org/apache/servicemix/cxfbc/ws/rm/seqlength10.xml?rev=567536&view=auto
==============================================================================
--- incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-cxf-bc/src/test/resources/org/apache/servicemix/cxfbc/ws/rm/seqlength10.xml (added)
+++ incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-cxf-bc/src/test/resources/org/apache/servicemix/cxfbc/ws/rm/seqlength10.xml Sun Aug 19 20:37:48 2007
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one
+ or more contributor license agreements. See the NOTICE file
+ distributed with this work for additional information
+ regarding copyright ownership. The ASF licenses this file
+ to you 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.
+-->
+<beans xmlns="http://www.springframework.org/schema/beans"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns:wsrm-mgr="http://cxf.apache.org/ws/rm/manager"
+ xmlns:http="http://cxf.apache.org/transports/http/configuration"
+ xsi:schemaLocation="
+http://cxf.apache.org/ws/rm/manager http://cxf.apache.org/schemas/configuration/wsrm-manager.xsd
+http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">
+
+ <import resource="rminterceptors.xml" />
+
+ <wsrm-mgr:rmManager id="org.apache.cxf.ws.rm.RMManager">
+ <wsrm-mgr:sourcePolicy>
+ <wsrm-mgr:sequenceTerminationPolicy maxLength="10" />
+ </wsrm-mgr:sourcePolicy>
+ </wsrm-mgr:rmManager>
+
+</beans>
\ No newline at end of file
Propchange: incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-cxf-bc/src/test/resources/org/apache/servicemix/cxfbc/ws/rm/seqlength10.xml
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-cxf-bc/src/test/resources/org/apache/servicemix/cxfbc/ws/rm/seqlength10.xml
------------------------------------------------------------------------------
svn:keywords = Rev Date
Propchange: incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-cxf-bc/src/test/resources/org/apache/servicemix/cxfbc/ws/rm/seqlength10.xml
------------------------------------------------------------------------------
svn:mime-type = text/xml