Missing attribute from schema; more namespace parser tests
This commit is contained in:
@@ -38,8 +38,6 @@ public abstract class AbstractInternetProtocolReceivingChannelAdapter
|
||||
|
||||
protected volatile int soReceiveBufferSize = -1;
|
||||
|
||||
protected volatile int soSendBufferSize = -1;
|
||||
|
||||
protected volatile int receiveBufferSize = 2048;
|
||||
|
||||
protected volatile boolean active;
|
||||
@@ -72,10 +70,9 @@ public abstract class AbstractInternetProtocolReceivingChannelAdapter
|
||||
}
|
||||
|
||||
/* (non-Javadoc)
|
||||
* @see org.springframework.integration.ip.SocketOptions#setSoSendBufferSize(int)
|
||||
* @see org.springframework.integration.ip.CommonSocketOptions#setSoSendBufferSize(int)
|
||||
*/
|
||||
public void setSoSendBufferSize(int soSendBufferSize) {
|
||||
this.soSendBufferSize = soSendBufferSize;
|
||||
}
|
||||
|
||||
public void setReceiveBufferSize(int receiveBufferSize) {
|
||||
|
||||
@@ -41,8 +41,6 @@ public abstract class AbstractInternetProtocolSendingMessageHandler implements M
|
||||
|
||||
protected final int port;
|
||||
|
||||
protected int soReceiveBufferSize = -1;
|
||||
|
||||
protected volatile int soSendBufferSize = -1;
|
||||
|
||||
protected volatile int soTimeout = -1;
|
||||
@@ -71,7 +69,6 @@ public abstract class AbstractInternetProtocolSendingMessageHandler implements M
|
||||
* @param size
|
||||
*/
|
||||
public void setSoReceiveBufferSize(int size) {
|
||||
this.soReceiveBufferSize = size;
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -82,7 +82,7 @@ public abstract class IpAdapterParserUtils {
|
||||
|
||||
static final String SO_LINGER = "so-linger";
|
||||
|
||||
static final String SO_TCP_NODELAY = "so-tcp-nodelay";
|
||||
static final String SO_TCP_NODELAY = "so-tcp-no-delay";
|
||||
|
||||
static final String SO_TRAFFIC_CLASS = "so-traffic-class";
|
||||
|
||||
|
||||
@@ -17,8 +17,6 @@ package org.springframework.integration.ip.tcp;
|
||||
|
||||
import java.net.Socket;
|
||||
import java.net.SocketException;
|
||||
import java.util.concurrent.Executors;
|
||||
import java.util.concurrent.ThreadFactory;
|
||||
|
||||
import org.springframework.integration.adapter.MessageMappingException;
|
||||
import org.springframework.integration.core.Message;
|
||||
|
||||
@@ -81,7 +81,7 @@ public class TcpNioSendingMessageHandler extends
|
||||
* @throws ClassNotFoundException
|
||||
*/
|
||||
@SuppressWarnings("unchecked")
|
||||
public void setCustomSocketWriteriClassName(
|
||||
public void setCustomSocketWriterClassName(
|
||||
String customSocketWriterClassName) throws ClassNotFoundException {
|
||||
this.customSocketWriter = (Class<NioSocketWriter>) Class
|
||||
.forName(customSocketWriterClassName);
|
||||
|
||||
@@ -51,6 +51,8 @@ public class UnicastReceivingChannelAdapter extends AbstractInternetProtocolRece
|
||||
|
||||
protected volatile int poolSize = -1;
|
||||
|
||||
protected volatile int soSendBufferSize = -1;
|
||||
|
||||
private static Pattern addressPattern = Pattern.compile("([^:]*):([0-9]*)");
|
||||
|
||||
|
||||
@@ -206,4 +208,8 @@ public class UnicastReceivingChannelAdapter extends AbstractInternetProtocolRece
|
||||
}
|
||||
}
|
||||
|
||||
public void setSoSendBufferSize(int soSendBufferSize) {
|
||||
this.soSendBufferSize = soSendBufferSize;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -76,6 +76,8 @@ public class UnicastSendingMessageHandler extends
|
||||
|
||||
protected volatile Exception fatalException;
|
||||
|
||||
protected int soReceiveBufferSize = -1;
|
||||
|
||||
|
||||
/**
|
||||
* Basic constructor; no reliability; no acknowledgment.
|
||||
@@ -295,4 +297,12 @@ public class UnicastSendingMessageHandler extends
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @see {@link Socket#setReceiveBufferSize(int)} and {@link DatagramSocket#setReceiveBufferSize(int)}
|
||||
* @param size
|
||||
*/
|
||||
public void setSoReceiveBufferSize(int size) {
|
||||
this.soReceiveBufferSize = size;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -65,10 +65,11 @@ the custom message format. See java docs for TcpNetReceivingChannelAdapter and T
|
||||
<xsd:attribute name="ack-host" type="xsd:string" />
|
||||
<xsd:attribute name="ack-port" type="xsd:string" />
|
||||
<xsd:attribute name="ack-timeout" type="xsd:string" />
|
||||
<xsd:attribute name="min-acks-for-success" type="xsd:string" />
|
||||
<xsd:attribute name="time-to-live" type="xsd:string" />
|
||||
<xsd:attribute name="custom-socket-writer-class-name" type="xsd:string" />
|
||||
<xsd:attribute name="so-linger" type="xsd:string" />
|
||||
<xsd:attribute name="so-tcp-nodelay" type="xsd:boolean" />
|
||||
<xsd:attribute name="so-tcp-no-delay" type="xsd:string" />
|
||||
<xsd:attribute name="so-traffic-class" type="xsd:string" />
|
||||
</xsd:extension>
|
||||
</xsd:complexContent>
|
||||
@@ -97,7 +98,7 @@ the custom message format. See java docs for TcpNetReceivingChannelAdapter and T
|
||||
<xsd:attribute name="so-timeout" type="xsd:string" />
|
||||
<xsd:attribute name="check-length" type="xsd:string" />
|
||||
<xsd:attribute name="multicast" type="xsd:string" />
|
||||
<xsd:attribute name="using-nio" type="xsd:boolean" />
|
||||
<xsd:attribute name="using-nio" type="xsd:string" />
|
||||
<xsd:attribute name="message-format">
|
||||
<xsd:simpleType>
|
||||
<xsd:restriction base="xsd:NMTOKEN">
|
||||
@@ -108,8 +109,8 @@ the custom message format. See java docs for TcpNetReceivingChannelAdapter and T
|
||||
</xsd:restriction>
|
||||
</xsd:simpleType>
|
||||
</xsd:attribute>
|
||||
<xsd:attribute name="using-direct-buffers" type="xsd:boolean" />
|
||||
<xsd:attribute name="so-keep-alive" type="xsd:boolean" />
|
||||
<xsd:attribute name="using-direct-buffers" type="xsd:string" />
|
||||
<xsd:attribute name="so-keep-alive" type="xsd:string" />
|
||||
|
||||
</xsd:complexType>
|
||||
|
||||
|
||||
@@ -0,0 +1,178 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<beans xmlns="http://www.springframework.org/schema/beans"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xmlns:int="http://www.springframework.org/schema/integration"
|
||||
xmlns:ip="http://www.springframework.org/schema/integration/ip"
|
||||
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
|
||||
http://www.springframework.org/schema/integration http://www.springframework.org/schema/integration/spring-integration.xsd
|
||||
http://www.springframework.org/schema/integration/ip http://www.springframework.org/schema/integration/ip/spring-integration-ip.xsd">
|
||||
|
||||
<bean id="tcpIpUtils" class="org.springframework.integration.ip.util.SocketUtils" />
|
||||
|
||||
<int:channel id="udpChannel" />
|
||||
<int:channel id="tcpChannel" />
|
||||
|
||||
<ip:inbound-channel-adapter id="testInUdp"
|
||||
channel="udpChannel"
|
||||
check-length="true"
|
||||
message-format="stx-etx"
|
||||
multicast="false"
|
||||
pool-size="27"
|
||||
port="#{tcpIpUtils.findAvailableUdpSocket(5000)}"
|
||||
protocol="udp"
|
||||
receive-buffer-size="29"
|
||||
so-keep-alive="true"
|
||||
so-receive-buffer-size="30"
|
||||
so-send-buffer-size="31"
|
||||
so-timeout="32"
|
||||
/>
|
||||
|
||||
<ip:inbound-channel-adapter id="testInUdpMulticast"
|
||||
channel="udpChannel"
|
||||
check-length="true"
|
||||
message-format="stx-etx"
|
||||
multicast="true"
|
||||
multicast-address="225.6.7.8"
|
||||
pool-size="27"
|
||||
port="#{tcpIpUtils.findAvailableUdpSocket(5100)}"
|
||||
protocol="udp"
|
||||
receive-buffer-size="29"
|
||||
so-keep-alive="true"
|
||||
so-receive-buffer-size="30"
|
||||
so-send-buffer-size="31"
|
||||
so-timeout="32"
|
||||
/>
|
||||
|
||||
<ip:inbound-channel-adapter id="testInTcpNio"
|
||||
channel="tcpChannel"
|
||||
check-length="true"
|
||||
custom-socket-reader-class-name="org.springframework.integration.ip.tcp.CustomNioSocketReader"
|
||||
message-format="stx-etx"
|
||||
pool-size="27"
|
||||
port="#{tcpIpUtils.findAvailableServerSocket(5200)}"
|
||||
protocol="tcp"
|
||||
receive-buffer-size="29"
|
||||
so-keep-alive="true"
|
||||
so-receive-buffer-size="30"
|
||||
so-timeout="32"
|
||||
using-direct-buffers="false"
|
||||
using-nio="true"
|
||||
/>
|
||||
|
||||
<ip:inbound-channel-adapter id="testInTcpNioDirect"
|
||||
channel="tcpChannel"
|
||||
check-length="true"
|
||||
custom-socket-reader-class-name="org.springframework.integration.ip.tcp.CustomNioSocketReader"
|
||||
message-format="stx-etx"
|
||||
pool-size="27"
|
||||
port="#{tcpIpUtils.findAvailableServerSocket(5300)}"
|
||||
protocol="tcp"
|
||||
receive-buffer-size="29"
|
||||
so-keep-alive="true"
|
||||
so-receive-buffer-size="30"
|
||||
so-timeout="32"
|
||||
using-direct-buffers="true"
|
||||
using-nio="true"
|
||||
/>
|
||||
|
||||
<ip:inbound-channel-adapter id="testInTcpNet"
|
||||
channel="tcpChannel"
|
||||
check-length="true"
|
||||
custom-socket-reader-class-name="org.springframework.integration.ip.tcp.CustomNetSocketReader"
|
||||
message-format="stx-etx"
|
||||
pool-size="27"
|
||||
port="#{tcpIpUtils.findAvailableServerSocket(5400)}"
|
||||
protocol="tcp"
|
||||
receive-buffer-size="29"
|
||||
so-keep-alive="true"
|
||||
so-receive-buffer-size="30"
|
||||
so-timeout="32"
|
||||
/>
|
||||
|
||||
<ip:outbound-channel-adapter id="testOutUdp"
|
||||
ack-host="somehost"
|
||||
ack-port="#{tcpIpUtils.findAvailableUdpSocket(7000)}"
|
||||
ack-timeout="51"
|
||||
acknowledge="true"
|
||||
channel="udpChannel"
|
||||
check-length="true"
|
||||
host="localhost"
|
||||
port="#{tcpIpUtils.findAvailableUdpSocket(6000)}"
|
||||
protocol="udp"
|
||||
multicast="false"
|
||||
so-receive-buffer-size="52"
|
||||
so-send-buffer-size="53"
|
||||
so-timeout="54"
|
||||
/>
|
||||
|
||||
<ip:outbound-channel-adapter id="testOutUdpiMulticast"
|
||||
ack-host="somehost"
|
||||
ack-port="#{tcpIpUtils.findAvailableUdpSocket(7100)}"
|
||||
ack-timeout="51"
|
||||
acknowledge="true"
|
||||
channel="udpChannel"
|
||||
check-length="true"
|
||||
host="225.6.7.8"
|
||||
port="#{tcpIpUtils.findAvailableUdpSocket(6100)}"
|
||||
protocol="udp"
|
||||
multicast="true"
|
||||
min-acks-for-success="2"
|
||||
so-receive-buffer-size="52"
|
||||
so-send-buffer-size="53"
|
||||
so-timeout="54"
|
||||
time-to-live="55"
|
||||
/>
|
||||
|
||||
<ip:outbound-channel-adapter id="testOutTcpNio"
|
||||
channel="tcpChannel"
|
||||
host="localhost"
|
||||
port="#{tcpIpUtils.findAvailableServerSocket(6200)}"
|
||||
protocol="tcp"
|
||||
so-send-buffer-size="53"
|
||||
so-timeout="54"
|
||||
custom-socket-writer-class-name="org.springframework.integration.ip.tcp.CustomNioSocketWriter"
|
||||
message-format="stx-etx"
|
||||
so-keep-alive="true"
|
||||
so-linger="3"
|
||||
so-tcp-no-delay="true"
|
||||
so-traffic-class="27"
|
||||
using-nio="true"
|
||||
using-direct-buffers="false"
|
||||
/>
|
||||
|
||||
<ip:outbound-channel-adapter id="testOutTcpNioDirect"
|
||||
channel="tcpChannel"
|
||||
host="localhost"
|
||||
port="#{tcpIpUtils.findAvailableServerSocket(6300)}"
|
||||
protocol="tcp"
|
||||
so-send-buffer-size="53"
|
||||
so-timeout="54"
|
||||
custom-socket-writer-class-name="org.springframework.integration.ip.tcp.CustomNioSocketWriter"
|
||||
message-format="stx-etx"
|
||||
so-keep-alive="true"
|
||||
so-linger="3"
|
||||
so-tcp-no-delay="true"
|
||||
so-traffic-class="27"
|
||||
using-nio="true"
|
||||
using-direct-buffers="true"
|
||||
/>
|
||||
|
||||
|
||||
<ip:outbound-channel-adapter id="testOutTcpNet"
|
||||
channel="tcpChannel"
|
||||
host="localhost"
|
||||
port="#{tcpIpUtils.findAvailableServerSocket(6400)}"
|
||||
protocol="tcp"
|
||||
so-send-buffer-size="53"
|
||||
so-timeout="54"
|
||||
custom-socket-writer-class-name="org.springframework.integration.ip.tcp.CustomNetSocketWriter"
|
||||
message-format="stx-etx"
|
||||
so-keep-alive="true"
|
||||
so-linger="3"
|
||||
so-tcp-no-delay="true"
|
||||
so-traffic-class="27"
|
||||
/>
|
||||
|
||||
|
||||
|
||||
</beans>
|
||||
@@ -0,0 +1,242 @@
|
||||
/*
|
||||
* Copyright 2002-2010 the original author or authors.
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
package org.springframework.integration.ip.config;
|
||||
|
||||
import static org.junit.Assert.assertEquals;
|
||||
import static org.junit.Assert.assertTrue;
|
||||
|
||||
import org.junit.Test;
|
||||
import org.junit.runner.RunWith;
|
||||
import org.springframework.beans.DirectFieldAccessor;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.beans.factory.annotation.Qualifier;
|
||||
import org.springframework.integration.ip.tcp.CustomNetSocketReader;
|
||||
import org.springframework.integration.ip.tcp.CustomNetSocketWriter;
|
||||
import org.springframework.integration.ip.tcp.CustomNioSocketReader;
|
||||
import org.springframework.integration.ip.tcp.CustomNioSocketWriter;
|
||||
import org.springframework.integration.ip.tcp.MessageFormats;
|
||||
import org.springframework.integration.ip.tcp.TcpNetReceivingChannelAdapter;
|
||||
import org.springframework.integration.ip.tcp.TcpNetSendingMessageHandler;
|
||||
import org.springframework.integration.ip.tcp.TcpNioReceivingChannelAdapter;
|
||||
import org.springframework.integration.ip.tcp.TcpNioSendingMessageHandler;
|
||||
import org.springframework.integration.ip.udp.DatagramPacketMessageMapper;
|
||||
import org.springframework.integration.ip.udp.MulticastReceivingChannelAdapter;
|
||||
import org.springframework.integration.ip.udp.MulticastSendingMessageHandler;
|
||||
import org.springframework.integration.ip.udp.UnicastReceivingChannelAdapter;
|
||||
import org.springframework.integration.ip.udp.UnicastSendingMessageHandler;
|
||||
import org.springframework.test.context.ContextConfiguration;
|
||||
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
|
||||
|
||||
|
||||
/**
|
||||
* @author Gary Russell
|
||||
*
|
||||
*/
|
||||
@ContextConfiguration
|
||||
@RunWith(SpringJUnit4ClassRunner.class)
|
||||
public class ParserUnitTests {
|
||||
|
||||
@Autowired
|
||||
@Qualifier(value="testInUdp")
|
||||
UnicastReceivingChannelAdapter udpIn;
|
||||
|
||||
@Autowired
|
||||
@Qualifier(value="testInUdpMulticast")
|
||||
MulticastReceivingChannelAdapter udpInMulticast;
|
||||
|
||||
@Autowired
|
||||
@Qualifier(value="testInTcpNio")
|
||||
TcpNioReceivingChannelAdapter tcpInNio;
|
||||
|
||||
@Autowired
|
||||
@Qualifier(value="testInTcpNioDirect")
|
||||
TcpNioReceivingChannelAdapter tcpInNioDirect;
|
||||
|
||||
@Autowired
|
||||
@Qualifier(value="testInTcpNet")
|
||||
TcpNetReceivingChannelAdapter tcpInNet;
|
||||
|
||||
@Autowired
|
||||
@Qualifier(value="org.springframework.integration.ip.udp.UnicastSendingMessageHandler#0")
|
||||
UnicastSendingMessageHandler udpOut;
|
||||
|
||||
@Autowired
|
||||
@Qualifier(value="org.springframework.integration.ip.udp.MulticastSendingMessageHandler#0")
|
||||
MulticastSendingMessageHandler udpOutMulticast;
|
||||
|
||||
@Autowired
|
||||
@Qualifier(value="org.springframework.integration.ip.tcp.TcpNioSendingMessageHandler#0")
|
||||
TcpNioSendingMessageHandler tcpOutNio;
|
||||
|
||||
@Autowired
|
||||
@Qualifier(value="org.springframework.integration.ip.tcp.TcpNioSendingMessageHandler#1")
|
||||
TcpNioSendingMessageHandler tcpOutNioDirect;
|
||||
|
||||
@Autowired
|
||||
@Qualifier(value="org.springframework.integration.ip.tcp.TcpNetSendingMessageHandler#0")
|
||||
TcpNetSendingMessageHandler tcpOutNet;
|
||||
|
||||
|
||||
@Test
|
||||
public void testInUdp() {
|
||||
DirectFieldAccessor dfa = new DirectFieldAccessor(udpIn);
|
||||
assertTrue(udpIn.getPort() >= 5000);
|
||||
assertEquals(27, dfa.getPropertyValue("poolSize"));
|
||||
assertEquals(29, dfa.getPropertyValue("receiveBufferSize"));
|
||||
assertEquals(30, dfa.getPropertyValue("soReceiveBufferSize"));
|
||||
assertEquals(31, dfa.getPropertyValue("soSendBufferSize"));
|
||||
assertEquals(32, dfa.getPropertyValue("soTimeout"));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testInUdpMulticast() {
|
||||
DirectFieldAccessor dfa = new DirectFieldAccessor(udpInMulticast);
|
||||
assertTrue(udpInMulticast.getPort() >= 5100);
|
||||
assertEquals("225.6.7.8", dfa.getPropertyValue("group"));
|
||||
assertEquals(27, dfa.getPropertyValue("poolSize"));
|
||||
assertEquals(29, dfa.getPropertyValue("receiveBufferSize"));
|
||||
assertEquals(30, dfa.getPropertyValue("soReceiveBufferSize"));
|
||||
assertEquals(31, dfa.getPropertyValue("soSendBufferSize"));
|
||||
assertEquals(32, dfa.getPropertyValue("soTimeout"));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testInTcpNio() {
|
||||
DirectFieldAccessor dfa = new DirectFieldAccessor(tcpInNio);
|
||||
assertTrue(tcpInNio.getPort() >= 5200);
|
||||
assertEquals(CustomNioSocketReader.class, dfa.getPropertyValue("customSocketReader"));
|
||||
assertEquals(false, dfa.getPropertyValue("usingDirectBuffers"));
|
||||
assertEquals(MessageFormats.FORMAT_STX_ETX, dfa.getPropertyValue("messageFormat"));
|
||||
assertEquals(27, dfa.getPropertyValue("poolSize"));
|
||||
assertEquals(true, dfa.getPropertyValue("soKeepAlive"));
|
||||
assertEquals(29, dfa.getPropertyValue("receiveBufferSize"));
|
||||
assertEquals(30, dfa.getPropertyValue("soReceiveBufferSize"));
|
||||
assertEquals(32, dfa.getPropertyValue("soTimeout"));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testInTcpNioDirect() {
|
||||
DirectFieldAccessor dfa = new DirectFieldAccessor(tcpInNioDirect);
|
||||
assertTrue(tcpInNioDirect.getPort() >= 5300);
|
||||
assertEquals(CustomNioSocketReader.class, dfa.getPropertyValue("customSocketReader"));
|
||||
assertEquals(true, dfa.getPropertyValue("usingDirectBuffers"));
|
||||
assertEquals(MessageFormats.FORMAT_STX_ETX, dfa.getPropertyValue("messageFormat"));
|
||||
assertEquals(27, dfa.getPropertyValue("poolSize"));
|
||||
assertEquals(true, dfa.getPropertyValue("soKeepAlive"));
|
||||
assertEquals(29, dfa.getPropertyValue("receiveBufferSize"));
|
||||
assertEquals(30, dfa.getPropertyValue("soReceiveBufferSize"));
|
||||
assertEquals(32, dfa.getPropertyValue("soTimeout"));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testInTcpNet() {
|
||||
DirectFieldAccessor dfa = new DirectFieldAccessor(tcpInNet);
|
||||
assertTrue(tcpInNet.getPort() >= 5400);
|
||||
assertEquals(CustomNetSocketReader.class, dfa.getPropertyValue("customSocketReader"));
|
||||
assertEquals(MessageFormats.FORMAT_STX_ETX, dfa.getPropertyValue("messageFormat"));
|
||||
assertEquals(27, dfa.getPropertyValue("poolSize"));
|
||||
assertEquals(true, dfa.getPropertyValue("soKeepAlive"));
|
||||
assertEquals(29, dfa.getPropertyValue("receiveBufferSize"));
|
||||
assertEquals(30, dfa.getPropertyValue("soReceiveBufferSize"));
|
||||
assertEquals(32, dfa.getPropertyValue("soTimeout"));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testOutUdp() {
|
||||
DirectFieldAccessor dfa = new DirectFieldAccessor(udpOut);
|
||||
assertTrue(udpOut.getPort() >= 6000);
|
||||
assertEquals("localhost", dfa.getPropertyValue("host"));
|
||||
int ackPort = (Integer) dfa.getPropertyValue("ackPort");
|
||||
assertTrue("Expected ackPort >= 7000 was:" + ackPort, ackPort >= 7000);
|
||||
DatagramPacketMessageMapper mapper = (DatagramPacketMessageMapper) dfa
|
||||
.getPropertyValue("mapper");
|
||||
String ackAddress = (String) new DirectFieldAccessor(mapper)
|
||||
.getPropertyValue("ackAddress");
|
||||
assertEquals("somehost:" + ackPort, ackAddress);
|
||||
assertEquals(51, dfa.getPropertyValue("ackTimeout"));
|
||||
assertEquals(true, dfa.getPropertyValue("waitForAck"));
|
||||
assertEquals(52, dfa.getPropertyValue("soReceiveBufferSize"));
|
||||
assertEquals(53, dfa.getPropertyValue("soSendBufferSize"));
|
||||
assertEquals(54, dfa.getPropertyValue("soTimeout"));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testOutUdpMulticast() {
|
||||
DirectFieldAccessor dfa = new DirectFieldAccessor(udpOutMulticast);
|
||||
assertTrue(udpOutMulticast.getPort() >= 6100);
|
||||
assertEquals("225.6.7.8", dfa.getPropertyValue("host"));
|
||||
int ackPort = (Integer) dfa.getPropertyValue("ackPort");
|
||||
assertTrue("Expected ackPort >= 7100 was:" + ackPort, ackPort >= 7100);
|
||||
DatagramPacketMessageMapper mapper = (DatagramPacketMessageMapper) dfa
|
||||
.getPropertyValue("mapper");
|
||||
String ackAddress = (String) new DirectFieldAccessor(mapper)
|
||||
.getPropertyValue("ackAddress");
|
||||
assertEquals("somehost:" + ackPort, ackAddress);
|
||||
assertEquals(51, dfa.getPropertyValue("ackTimeout"));
|
||||
assertEquals(true, dfa.getPropertyValue("waitForAck"));
|
||||
assertEquals(52, dfa.getPropertyValue("soReceiveBufferSize"));
|
||||
assertEquals(53, dfa.getPropertyValue("soSendBufferSize"));
|
||||
assertEquals(54, dfa.getPropertyValue("soTimeout"));
|
||||
assertEquals(55, dfa.getPropertyValue("timeToLive"));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testOutTcpNio() {
|
||||
DirectFieldAccessor dfa = new DirectFieldAccessor(tcpOutNio);
|
||||
assertTrue(tcpOutNio.getPort() >= 6200);
|
||||
assertEquals(MessageFormats.FORMAT_STX_ETX, dfa.getPropertyValue("messageFormat"));
|
||||
assertEquals(CustomNioSocketWriter.class, dfa.getPropertyValue("customSocketWriter"));
|
||||
assertEquals(true, dfa.getPropertyValue("soKeepAlive"));
|
||||
assertEquals(3, dfa.getPropertyValue("soLinger"));
|
||||
assertEquals(true, dfa.getPropertyValue("soTcpNoDelay"));
|
||||
assertEquals(27, dfa.getPropertyValue("soTrafficClass"));
|
||||
assertEquals(53, dfa.getPropertyValue("soSendBufferSize"));
|
||||
assertEquals(54, dfa.getPropertyValue("soTimeout"));
|
||||
assertEquals(false, dfa.getPropertyValue("usingDirectBuffers"));
|
||||
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testOutTcpNioDirect() {
|
||||
DirectFieldAccessor dfa = new DirectFieldAccessor(tcpOutNioDirect);
|
||||
assertTrue(tcpOutNioDirect.getPort() >= 6300);
|
||||
assertEquals(MessageFormats.FORMAT_STX_ETX, dfa.getPropertyValue("messageFormat"));
|
||||
assertEquals(CustomNioSocketWriter.class, dfa.getPropertyValue("customSocketWriter"));
|
||||
assertEquals(true, dfa.getPropertyValue("soKeepAlive"));
|
||||
assertEquals(3, dfa.getPropertyValue("soLinger"));
|
||||
assertEquals(true, dfa.getPropertyValue("soTcpNoDelay"));
|
||||
assertEquals(27, dfa.getPropertyValue("soTrafficClass"));
|
||||
assertEquals(53, dfa.getPropertyValue("soSendBufferSize"));
|
||||
assertEquals(54, dfa.getPropertyValue("soTimeout"));
|
||||
assertEquals(true, dfa.getPropertyValue("usingDirectBuffers"));
|
||||
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testOutTcpNet() {
|
||||
DirectFieldAccessor dfa = new DirectFieldAccessor(tcpOutNet);
|
||||
assertTrue(tcpOutNet.getPort() >= 6400);
|
||||
assertEquals(MessageFormats.FORMAT_STX_ETX, dfa.getPropertyValue("messageFormat"));
|
||||
assertEquals(CustomNetSocketWriter.class, dfa.getPropertyValue("customSocketWriter"));
|
||||
assertEquals(true, dfa.getPropertyValue("soKeepAlive"));
|
||||
assertEquals(3, dfa.getPropertyValue("soLinger"));
|
||||
assertEquals(true, dfa.getPropertyValue("soTcpNoDelay"));
|
||||
assertEquals(27, dfa.getPropertyValue("soTrafficClass"));
|
||||
assertEquals(53, dfa.getPropertyValue("soSendBufferSize"));
|
||||
assertEquals(54, dfa.getPropertyValue("soTimeout"));
|
||||
|
||||
}
|
||||
}
|
||||
@@ -167,7 +167,7 @@ public class TcpSendingMessageHandlerTests {
|
||||
try {
|
||||
TcpNioSendingMessageHandler handler = new TcpNioSendingMessageHandler("localhost", port);
|
||||
handler.setMessageFormat(MessageFormats.FORMAT_CUSTOM);
|
||||
handler.setCustomSocketWriteriClassName("org.springframework.integration.ip.tcp.CustomNioSocketWriter");
|
||||
handler.setCustomSocketWriterClassName("org.springframework.integration.ip.tcp.CustomNioSocketWriter");
|
||||
Message<String> message = MessageBuilder.withPayload(testString).build();
|
||||
handler.handleMessage(message);
|
||||
Thread.sleep(1000000000L);
|
||||
|
||||
Reference in New Issue
Block a user