From e85adbba9c13333c8f9938d40819c3ed93515e46 Mon Sep 17 00:00:00 2001 From: Oleg Zhurakousky Date: Fri, 5 Nov 2010 10:42:23 -0400 Subject: [PATCH] INT-1554 removed Presence headers, Inbound/Outboound Message Mapper, fixed schema and tests --- build.gradle | 1 + .../integration/xmpp/XmppHeaders.java | 16 +-- .../xmpp/config/XmppHeaderEnricherParser.java | 8 +- ...XmppRosterEventOutboundEndpointParser.java | 2 - .../presence/XmppPresenceMessageMapper.java | 130 ------------------ .../XmppRosterEventMessageSendingHandler.java | 24 +--- .../config/spring-integration-xmpp-2.0.xsd | 16 --- .../XmppHeaderEnricherParserTests-context.xml | 6 +- .../config/XmppHeaderEnricherParserTests.java | 39 ++++-- ...boundChannelAdapterParserTests-context.xml | 7 +- ...ventOutboundChannelAdapterParserTests.java | 27 +--- .../xmpp/ignore/ConsoleChatTests-context.xml | 33 ++--- .../xmpp/ignore/ConsoleChatTests.java | 2 +- .../xmpp/ignore/XmppRosterEventConsumer.java | 14 +- .../xmpp/ignore/XmppRosterEventProducer.java | 23 ++-- .../XmppPresenceMessageMapperTests.java | 107 +++++++------- .../src/test/java/test.properties | 26 +--- 17 files changed, 127 insertions(+), 354 deletions(-) delete mode 100644 spring-integration-xmpp/src/main/java/org/springframework/integration/xmpp/presence/XmppPresenceMessageMapper.java diff --git a/build.gradle b/build.gradle index 73f221658b..25f1b5584f 100644 --- a/build.gradle +++ b/build.gradle @@ -404,6 +404,7 @@ project('spring-integration-xmpp') { compile "jivesoftware:smackx:3.1.0" compile "org.springframework:spring-context-support:$springVersion" testCompile project(":spring-integration-test") + testCompile project(":spring-integration-stream") } } diff --git a/spring-integration-xmpp/src/main/java/org/springframework/integration/xmpp/XmppHeaders.java b/spring-integration-xmpp/src/main/java/org/springframework/integration/xmpp/XmppHeaders.java index 3d9426bbba..010be8ad60 100644 --- a/spring-integration-xmpp/src/main/java/org/springframework/integration/xmpp/XmppHeaders.java +++ b/spring-integration-xmpp/src/main/java/org/springframework/integration/xmpp/XmppHeaders.java @@ -16,14 +16,13 @@ package org.springframework.integration.xmpp; import org.springframework.integration.MessageHeaders; - - /** * Used as keys for {@link org.springframework.integration.Message} objects * that handle XMPP events. * * @author Mario Gray * @author Josh Long + * @author Oleg Zhurakousky * @since 2.0 */ public class XmppHeaders { @@ -37,17 +36,4 @@ public class XmppHeaders { public static final String CHAT_THREAD_ID = PREFIX + "threadId"; public static final String TYPE = PREFIX + "type"; - - public static final String PRESENCE = PREFIX + "presence"; - - public static final String PRESENCE_LANGUAGE = PRESENCE + "language"; - - public static final String PRESENCE_PRIORITY = PRESENCE + "priority"; - - public static final String PRESENCE_MODE = PRESENCE + "mode"; - - public static final String PRESENCE_STATUS = PRESENCE + "status"; - - public static final String PRESENCE_FROM = PRESENCE + "from"; - } diff --git a/spring-integration-xmpp/src/main/java/org/springframework/integration/xmpp/config/XmppHeaderEnricherParser.java b/spring-integration-xmpp/src/main/java/org/springframework/integration/xmpp/config/XmppHeaderEnricherParser.java index 144bcc4784..3e59f171b4 100644 --- a/spring-integration-xmpp/src/main/java/org/springframework/integration/xmpp/config/XmppHeaderEnricherParser.java +++ b/spring-integration-xmpp/src/main/java/org/springframework/integration/xmpp/config/XmppHeaderEnricherParser.java @@ -15,12 +15,13 @@ */ package org.springframework.integration.xmpp.config; -import org.jivesoftware.smack.packet.Presence; import org.springframework.integration.config.xml.HeaderEnricherParserSupport; import org.springframework.integration.xmpp.XmppHeaders; /** + * Parser for 'xmpp:header-enricher' element * @author Josh Long + * @author Oleg ZHurakousky * @since 2.0 * */ @@ -32,10 +33,5 @@ public class XmppHeaderEnricherParser extends HeaderEnricherParserSupport { this.addElementToHeaderMapping("message-to", XmppHeaders.CHAT_TO_USER); this.addElementToHeaderMapping("message-thread-id", XmppHeaders.CHAT_THREAD_ID); - // presence headers - this.addElementToHeaderMapping("presence-mode", XmppHeaders.PRESENCE_MODE, Presence.Mode.class); - this.addElementToHeaderMapping("presence-from", XmppHeaders.PRESENCE_FROM); - this.addElementToHeaderMapping("presence-status", XmppHeaders.PRESENCE_STATUS); - this.addElementToHeaderMapping("presence-priority", XmppHeaders.PRESENCE_PRIORITY, Integer.class); } } diff --git a/spring-integration-xmpp/src/main/java/org/springframework/integration/xmpp/config/XmppRosterEventOutboundEndpointParser.java b/spring-integration-xmpp/src/main/java/org/springframework/integration/xmpp/config/XmppRosterEventOutboundEndpointParser.java index 498e55ba93..206f5caad5 100644 --- a/spring-integration-xmpp/src/main/java/org/springframework/integration/xmpp/config/XmppRosterEventOutboundEndpointParser.java +++ b/spring-integration-xmpp/src/main/java/org/springframework/integration/xmpp/config/XmppRosterEventOutboundEndpointParser.java @@ -19,7 +19,6 @@ import org.springframework.beans.factory.support.AbstractBeanDefinition; import org.springframework.beans.factory.support.BeanDefinitionBuilder; import org.springframework.beans.factory.xml.ParserContext; import org.springframework.integration.config.xml.AbstractOutboundChannelAdapterParser; -import org.springframework.integration.config.xml.IntegrationNamespaceUtils; import org.w3c.dom.Element; /** @@ -36,7 +35,6 @@ public class XmppRosterEventOutboundEndpointParser extends AbstractOutboundChann "org.springframework.integration.xmpp.presence.XmppRosterEventMessageSendingHandler"); String connectionName = element.getAttribute("xmpp-connection"); builder.addConstructorArgReference(connectionName); - IntegrationNamespaceUtils.setReferenceIfAttributeDefined(builder, element, "message-mapper"); return builder.getBeanDefinition(); } } diff --git a/spring-integration-xmpp/src/main/java/org/springframework/integration/xmpp/presence/XmppPresenceMessageMapper.java b/spring-integration-xmpp/src/main/java/org/springframework/integration/xmpp/presence/XmppPresenceMessageMapper.java deleted file mode 100644 index 99ec16f0c3..0000000000 --- a/spring-integration-xmpp/src/main/java/org/springframework/integration/xmpp/presence/XmppPresenceMessageMapper.java +++ /dev/null @@ -1,130 +0,0 @@ -/* - * 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.xmpp.presence; - -import org.jivesoftware.smack.packet.Presence; -import org.springframework.integration.Message; -import org.springframework.integration.MessageHeaders; -import org.springframework.integration.mapping.MessageMappingException; -import org.springframework.integration.mapping.OutboundMessageMapper; -import org.springframework.integration.xmpp.XmppHeaders; -import org.springframework.util.StringUtils; - - -/** - * Implementation of the strategy interface {@link OutboundMessageMapper} - * which maps {@link Presence} to {@link Message} - * - * @author Josh Long - * @author Oleg Zhurakousky - * @since 2.0 - */ -public class XmppPresenceMessageMapper implements OutboundMessageMapper { - -// /** -// * Builds {@link Message} with payload of {@link Presence} while also -// * setting Presence attributes as {@link MessageHeaders} -// * -// * @param presence the presence object -// * @return the Message -// * @throws Exception thrown if conversion should fail -// */ -// @SuppressWarnings("unchecked") -// public Message toMessage(Presence presence) throws Exception { -// MessageBuilder presenceMessageBuilder = MessageBuilder.withPayload(presence); -// presenceMessageBuilder.setHeader(XmppHeaders.PRESENCE_PRIORITY, presence.getPriority()); -// presenceMessageBuilder.setHeader(XmppHeaders.PRESENCE_STATUS, presence.getStatus()); -// presenceMessageBuilder.setHeader(XmppHeaders.PRESENCE_MODE, presence.getMode()); -// presenceMessageBuilder.setHeader(XmppHeaders.PRESENCE_FROM, presence.getFrom()); -// -// return (Message) presenceMessageBuilder.build(); -// } - - /** - * Builds a {@link Presence} object from the inbound Message headers, if possible. - * - * @param message the Message whose headers and payload willl b - * @return the presence object as constructed from the {@link org.springframework.integration.Message} object - * @throws Exception if there is a problem - */ - public Presence fromMessage(Message message) throws Exception { - Object payload = message.getPayload(); - if (payload instanceof Presence) { - return (Presence) payload; - } - else if (payload instanceof Presence.Type) { - Presence.Type presenceType = (Presence.Type) payload; - MessageHeaders messageHeaders = message.getHeaders(); - - Integer priority = (Integer) messageHeaders.get(XmppHeaders.PRESENCE_PRIORITY); - String status = (String) messageHeaders.get(XmppHeaders.PRESENCE_STATUS); - String language = (String) messageHeaders.get(XmppHeaders.PRESENCE_LANGUAGE); - String from = (String) messageHeaders.get(XmppHeaders.PRESENCE_FROM); - - Object modeObj = messageHeaders.get(XmppHeaders.PRESENCE_MODE); - Presence.Mode mode = null; - - if (modeObj != null){ - if (modeObj instanceof String) { - mode = Presence.Mode.valueOf((String) modeObj); - } - else if (modeObj instanceof Presence.Mode) { - mode = (Presence.Mode) modeObj; - } - else { - throw new MessageMappingException("Unsupported type for Presence mode. Only" + - " String or Presence.Mode is allowed, but was: " + modeObj.getClass().getName()); - } - } - return this.factoryPresence(from, status, priority, presenceType, mode, language); - } - else { - throw new MessageMappingException("Unsupported Payload type. " + - "The only supported payload type is org.jivesoftware.smack.packet.Presence: " + payload.getClass().getName()); - } - } - - private Presence factoryPresence(String from, String status, Integer priority, - Presence.Type type, Presence.Mode mode, String language) { - if (null == type) { - type = Presence.Type.available; - } - - Presence presence = new Presence(type); - - if (null != priority) { - presence.setPriority(priority); - } - - if (StringUtils.hasText(status)) { - presence.setStatus(status); - } - - if (StringUtils.hasText(from)) { - presence.setFrom(from); - } - - if (null != mode) { - presence.setMode(mode); - } - - if (StringUtils.hasText(language)) { - presence.setLanguage(language); - } - - return presence; - } -} diff --git a/spring-integration-xmpp/src/main/java/org/springframework/integration/xmpp/presence/XmppRosterEventMessageSendingHandler.java b/spring-integration-xmpp/src/main/java/org/springframework/integration/xmpp/presence/XmppRosterEventMessageSendingHandler.java index 9e356ec6ad..4acc102df4 100644 --- a/spring-integration-xmpp/src/main/java/org/springframework/integration/xmpp/presence/XmppRosterEventMessageSendingHandler.java +++ b/spring-integration-xmpp/src/main/java/org/springframework/integration/xmpp/presence/XmppRosterEventMessageSendingHandler.java @@ -36,34 +36,18 @@ import org.springframework.util.Assert; */ public class XmppRosterEventMessageSendingHandler extends AbstractMessageHandler { - private OutboundMessageMapper messageMapper; - private final XMPPConnection xmppConnection; public XmppRosterEventMessageSendingHandler(XMPPConnection xmppConnection){ Assert.notNull(xmppConnection, "'xmppConnection' must not be null"); this.xmppConnection = xmppConnection; } - - /** - * the MessageMapper is responsible for converting outbound Messages into status updates of type - * {@link org.jivesoftware.smack.packet.Presence} - * - * @param messageMapper mapper for the message into a {@link Presence} instance - */ - public void setMessageMapper(OutboundMessageMapper messageMapper) { - this.messageMapper = messageMapper; - } - - protected void onInit() throws Exception { - if (this.messageMapper == null) { - this.messageMapper = new XmppPresenceMessageMapper(); - } - } @Override protected void handleMessageInternal(Message message) throws Exception { - Presence presence = this.messageMapper.fromMessage(message); - this.xmppConnection.sendPacket(presence); + Object payload = message.getPayload(); + Assert.isInstanceOf(Presence.class, payload, "'payload' must be of type 'org.jivesoftware.smack.packet.Presence', was " + + payload.getClass().getName()); + this.xmppConnection.sendPacket((Presence)payload); } } diff --git a/spring-integration-xmpp/src/main/resources/org/springframework/integration/xmpp/config/spring-integration-xmpp-2.0.xsd b/spring-integration-xmpp/src/main/resources/org/springframework/integration/xmpp/config/spring-integration-xmpp-2.0.xsd index 9fddf0bb0e..59e25d5a41 100644 --- a/spring-integration-xmpp/src/main/resources/org/springframework/integration/xmpp/config/spring-integration-xmpp-2.0.xsd +++ b/spring-integration-xmpp/src/main/resources/org/springframework/integration/xmpp/config/spring-integration-xmpp-2.0.xsd @@ -57,15 +57,6 @@ - - - - - - - - - @@ -191,15 +182,8 @@ - - - - - - - diff --git a/spring-integration-xmpp/src/test/java/org/springframework/integration/xmpp/config/XmppHeaderEnricherParserTests-context.xml b/spring-integration-xmpp/src/test/java/org/springframework/integration/xmpp/config/XmppHeaderEnricherParserTests-context.xml index 0ffe11c8c6..77bd4eac39 100644 --- a/spring-integration-xmpp/src/test/java/org/springframework/integration/xmpp/config/XmppHeaderEnricherParserTests-context.xml +++ b/spring-integration-xmpp/src/test/java/org/springframework/integration/xmpp/config/XmppHeaderEnricherParserTests-context.xml @@ -17,11 +17,7 @@ - - - - + - diff --git a/spring-integration-xmpp/src/test/java/org/springframework/integration/xmpp/config/XmppHeaderEnricherParserTests.java b/spring-integration-xmpp/src/test/java/org/springframework/integration/xmpp/config/XmppHeaderEnricherParserTests.java index 1c10639af0..d66c7e7d11 100644 --- a/spring-integration-xmpp/src/test/java/org/springframework/integration/xmpp/config/XmppHeaderEnricherParserTests.java +++ b/spring-integration-xmpp/src/test/java/org/springframework/integration/xmpp/config/XmppHeaderEnricherParserTests.java @@ -16,19 +16,25 @@ package org.springframework.integration.xmpp.config; -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; +import static junit.framework.Assert.assertEquals; +import static junit.framework.Assert.assertNotNull; +import static org.mockito.Mockito.doAnswer; +import static org.mockito.Mockito.mock; +import static org.mockito.Mockito.times; +import static org.mockito.Mockito.verify; + import org.junit.Test; import org.junit.runner.RunWith; +import org.mockito.Mockito; +import org.mockito.invocation.InvocationOnMock; +import org.mockito.stubbing.Answer; import org.springframework.beans.factory.annotation.Value; import org.springframework.integration.Message; -import org.springframework.integration.MessageDeliveryException; -import org.springframework.integration.MessageHandlingException; -import org.springframework.integration.MessageRejectedException; import org.springframework.integration.channel.DirectChannel; import org.springframework.integration.core.MessageHandler; import org.springframework.integration.core.MessagingTemplate; import org.springframework.integration.support.MessageBuilder; +import org.springframework.integration.xmpp.XmppHeaders; import org.springframework.test.context.ContextConfiguration; import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; @@ -41,27 +47,30 @@ import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; @RunWith(SpringJUnit4ClassRunner.class) public class XmppHeaderEnricherParserTests { - - private static final Log logger = LogFactory.getLog(XmppHeaderEnricherParserTests.class); - @Value("#{input}") private DirectChannel input; @Value("#{output}") private DirectChannel output; + @SuppressWarnings("rawtypes") @Test public void to() { MessagingTemplate messagingTemplate = new MessagingTemplate(); - output.subscribe(new MessageHandler() { - public void handleMessage(Message message) - throws MessageRejectedException, MessageHandlingException, - MessageDeliveryException { - for (String h : message.getHeaders().keySet()) - logger.debug(String.format("%s=%s (class: %s)", h, message.getHeaders().get(h), message.getHeaders().get(h).getClass().toString())); + MessageHandler handler = mock(MessageHandler.class); + doAnswer(new Answer() { + @Override + public Object answer(InvocationOnMock invocation) throws Throwable { + Message message = (Message) invocation.getArguments()[0]; + String chatToUser = (String) message.getHeaders().get(XmppHeaders.CHAT_TO_USER); + assertNotNull(chatToUser); + assertEquals("test1@example.org", chatToUser); + return null; } - }); + }).when(handler).handleMessage(Mockito.any(Message.class)); + output.subscribe(handler); messagingTemplate.send(input, MessageBuilder.withPayload("foo").build()); + verify(handler, times(1)).handleMessage(Mockito.any(Message.class)); } } diff --git a/spring-integration-xmpp/src/test/java/org/springframework/integration/xmpp/config/XmppRosterEventOutboundChannelAdapterParserTests-context.xml b/spring-integration-xmpp/src/test/java/org/springframework/integration/xmpp/config/XmppRosterEventOutboundChannelAdapterParserTests-context.xml index 02a0d3f985..53da9d7e89 100644 --- a/spring-integration-xmpp/src/test/java/org/springframework/integration/xmpp/config/XmppRosterEventOutboundChannelAdapterParserTests-context.xml +++ b/spring-integration-xmpp/src/test/java/org/springframework/integration/xmpp/config/XmppRosterEventOutboundChannelAdapterParserTests-context.xml @@ -26,12 +26,7 @@ + channel="eventChannel"/> - - - - diff --git a/spring-integration-xmpp/src/test/java/org/springframework/integration/xmpp/config/XmppRosterEventOutboundChannelAdapterParserTests.java b/spring-integration-xmpp/src/test/java/org/springframework/integration/xmpp/config/XmppRosterEventOutboundChannelAdapterParserTests.java index 576a1c2407..0129e08518 100644 --- a/spring-integration-xmpp/src/test/java/org/springframework/integration/xmpp/config/XmppRosterEventOutboundChannelAdapterParserTests.java +++ b/spring-integration-xmpp/src/test/java/org/springframework/integration/xmpp/config/XmppRosterEventOutboundChannelAdapterParserTests.java @@ -15,8 +15,6 @@ */ package org.springframework.integration.xmpp.config; -import static junit.framework.Assert.assertFalse; -import static junit.framework.Assert.assertNotNull; import static junit.framework.Assert.assertTrue; import org.junit.Test; @@ -24,10 +22,6 @@ import org.springframework.context.ApplicationContext; import org.springframework.context.support.ClassPathXmlApplicationContext; import org.springframework.integration.endpoint.EventDrivenConsumer; import org.springframework.integration.endpoint.PollingConsumer; -import org.springframework.integration.mapping.OutboundMessageMapper; -import org.springframework.integration.test.util.TestUtils; -import org.springframework.integration.xmpp.presence.XmppPresenceMessageMapper; -import org.springframework.integration.xmpp.presence.XmppRosterEventMessageSendingHandler; /** * @author Oleg Zhurakousky @@ -42,29 +36,12 @@ public class XmppRosterEventOutboundChannelAdapterParserTests { Object pollingConsumer = ac.getBean("pollingOutboundRosterAdapter"); assertTrue(pollingConsumer instanceof PollingConsumer); } + @Test - @SuppressWarnings("rawtypes") - public void testRosterEventOutboundChannelAdapterParserDefaultMapper(){ - ApplicationContext ac = - new ClassPathXmlApplicationContext("XmppRosterEventOutboundChannelAdapterParserTests-context.xml", this.getClass()); - Object pollingConsumer = ac.getBean("pollingOutboundRosterAdapter"); - XmppRosterEventMessageSendingHandler handler = - TestUtils.getPropertyValue(pollingConsumer, "handler", XmppRosterEventMessageSendingHandler.class); - OutboundMessageMapper mapper = TestUtils.getPropertyValue(handler, "messageMapper", OutboundMessageMapper.class); - assertNotNull(mapper); - assertTrue(mapper instanceof XmppPresenceMessageMapper); - } - @SuppressWarnings("rawtypes") - @Test - public void testRosterEventOutboundChannelAdapterParserCustomMapperEventDriven(){ + public void testRosterEventOutboundChannelAdapterParserEventConsumer(){ ApplicationContext ac = new ClassPathXmlApplicationContext("XmppRosterEventOutboundChannelAdapterParserTests-context.xml", this.getClass()); Object eventConsumer = ac.getBean("eventOutboundRosterAdapter"); assertTrue(eventConsumer instanceof EventDrivenConsumer); - XmppRosterEventMessageSendingHandler handler = - TestUtils.getPropertyValue(eventConsumer, "handler", XmppRosterEventMessageSendingHandler.class); - OutboundMessageMapper mapper = TestUtils.getPropertyValue(handler, "messageMapper", OutboundMessageMapper.class); - assertNotNull(mapper); - assertFalse(mapper instanceof XmppPresenceMessageMapper); } } diff --git a/spring-integration-xmpp/src/test/java/org/springframework/integration/xmpp/ignore/ConsoleChatTests-context.xml b/spring-integration-xmpp/src/test/java/org/springframework/integration/xmpp/ignore/ConsoleChatTests-context.xml index ca93cc36ee..cb3e200708 100644 --- a/spring-integration-xmpp/src/test/java/org/springframework/integration/xmpp/ignore/ConsoleChatTests-context.xml +++ b/spring-integration-xmpp/src/test/java/org/springframework/integration/xmpp/ignore/ConsoleChatTests-context.xml @@ -8,33 +8,33 @@ xsi:schemaLocation="http://www.springframework.org/schema/integration http://www.springframework.org/schema/integration/spring-integration.xsd http://www.springframework.org/schema/tool http://www.springframework.org/schema/tool/spring-tool-3.0.xsd http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd - http://www.springframework.org/schema/integration/xmpp http://www.springframework.org/schema/integration/xmpp/spring-integration-xmpp.xsd + http://www.springframework.org/schema/integration/xmpp http://www.springframework.org/schema/integration/xmpp/spring-integration-xmpp-2.0.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.0.xsd http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util-3.0.xsd http://www.springframework.org/schema/lang http://www.springframework.org/schema/lang/spring-lang-3.0.xsd http://www.springframework.org/schema/integration/stream http://www.springframework.org/schema/integration/stream/spring-integration-stream.xsd"> - + + user="${user.1.login}" + password="${user.1.password}" + host="${user.1.host}" + service-name="${user.1.service}"/> - - - -
- + + + + + + + + @@ -42,9 +42,4 @@ - - - - - diff --git a/spring-integration-xmpp/src/test/java/org/springframework/integration/xmpp/ignore/ConsoleChatTests.java b/spring-integration-xmpp/src/test/java/org/springframework/integration/xmpp/ignore/ConsoleChatTests.java index cdf972aee0..b75b958da2 100644 --- a/spring-integration-xmpp/src/test/java/org/springframework/integration/xmpp/ignore/ConsoleChatTests.java +++ b/spring-integration-xmpp/src/test/java/org/springframework/integration/xmpp/ignore/ConsoleChatTests.java @@ -33,7 +33,7 @@ public class ConsoleChatTests { @Test @Ignore public void run() throws Exception { - Thread.sleep(10 * 1000); + Thread.sleep(10 * 1000 * 1000); } } diff --git a/spring-integration-xmpp/src/test/java/org/springframework/integration/xmpp/ignore/XmppRosterEventConsumer.java b/spring-integration-xmpp/src/test/java/org/springframework/integration/xmpp/ignore/XmppRosterEventConsumer.java index 7049af120d..720fe4f6ac 100644 --- a/spring-integration-xmpp/src/test/java/org/springframework/integration/xmpp/ignore/XmppRosterEventConsumer.java +++ b/spring-integration-xmpp/src/test/java/org/springframework/integration/xmpp/ignore/XmppRosterEventConsumer.java @@ -33,13 +33,13 @@ public class XmppRosterEventConsumer { @ServiceActivator public void presenceChanged(Message presenceEventMsg) throws Exception { - System.out.println(StringUtils.repeat("-", 100)); - String whosePresence = (String) presenceEventMsg.getHeaders().get(XmppHeaders.PRESENCE_FROM); - System.out.println("entries affected: " + whosePresence); - MessageHeaders messageHeaders = presenceEventMsg.getHeaders(); - for (String h : messageHeaders.keySet()) { - System.out.println(String.format("%s = %s", h, messageHeaders.get(h))); - } +// System.out.println(StringUtils.repeat("-", 100)); +// String whosePresence = (String) presenceEventMsg.getHeaders().get(XmppHeaders.PRESENCE_FROM); +// System.out.println("entries affected: " + whosePresence); +// MessageHeaders messageHeaders = presenceEventMsg.getHeaders(); +// for (String h : messageHeaders.keySet()) { +// System.out.println(String.format("%s = %s", h, messageHeaders.get(h))); +// } } } diff --git a/spring-integration-xmpp/src/test/java/org/springframework/integration/xmpp/ignore/XmppRosterEventProducer.java b/spring-integration-xmpp/src/test/java/org/springframework/integration/xmpp/ignore/XmppRosterEventProducer.java index 015b582ead..d4536cf838 100644 --- a/spring-integration-xmpp/src/test/java/org/springframework/integration/xmpp/ignore/XmppRosterEventProducer.java +++ b/spring-integration-xmpp/src/test/java/org/springframework/integration/xmpp/ignore/XmppRosterEventProducer.java @@ -35,17 +35,18 @@ import org.springframework.integration.xmpp.XmppHeaders; public class XmppRosterEventProducer implements MessageSource { public Message receive() { - try { - Thread.sleep(1000 * 10); - } - catch (InterruptedException e) { - // eat it - } - return (Math.random() > .5) ? MessageBuilder.withPayload("available").setHeader( - XmppHeaders.PRESENCE_MODE, Presence.Mode.chat) - .setHeader(XmppHeaders.PRESENCE_STATUS, "She Loves me").build() - : MessageBuilder.withPayload(StringUtils.EMPTY).setHeader(XmppHeaders.PRESENCE_MODE, Presence.Mode.dnd) - .setHeader(XmppHeaders.PRESENCE_STATUS, "She Loves me not").build(); +// try { +// Thread.sleep(1000 * 10); +// } +// catch (InterruptedException e) { +// // eat it +// } +// return (Math.random() > .5) ? MessageBuilder.withPayload("available").setHeader( +// XmppHeaders.PRESENCE_MODE, Presence.Mode.chat) +// .setHeader(XmppHeaders.PRESENCE_STATUS, "She Loves me").build() +// : MessageBuilder.withPayload(StringUtils.EMPTY).setHeader(XmppHeaders.PRESENCE_MODE, Presence.Mode.dnd) +// .setHeader(XmppHeaders.PRESENCE_STATUS, "She Loves me not").build(); + return null; } } diff --git a/spring-integration-xmpp/src/test/java/org/springframework/integration/xmpp/presence/XmppPresenceMessageMapperTests.java b/spring-integration-xmpp/src/test/java/org/springframework/integration/xmpp/presence/XmppPresenceMessageMapperTests.java index 5514892d98..3abd323e5f 100644 --- a/spring-integration-xmpp/src/test/java/org/springframework/integration/xmpp/presence/XmppPresenceMessageMapperTests.java +++ b/spring-integration-xmpp/src/test/java/org/springframework/integration/xmpp/presence/XmppPresenceMessageMapperTests.java @@ -24,7 +24,6 @@ import org.junit.Test; import org.springframework.integration.Message; import org.springframework.integration.mapping.MessageMappingException; import org.springframework.integration.support.MessageBuilder; -import org.springframework.integration.xmpp.XmppHeaders; /** * @author Oleg Zhurakousky @@ -34,61 +33,61 @@ public class XmppPresenceMessageMapperTests { @Test public void testFromMessageWithPayloadPresence() throws Exception{ - Presence presence = new Presence(Type.available, "Hello", 1, Mode.chat); - Message message = MessageBuilder.withPayload(presence).build(); - XmppPresenceMessageMapper mapper = new XmppPresenceMessageMapper(); - Presence mappedPresence = mapper.fromMessage(message); - assertEquals(Mode.chat, mappedPresence.getMode()); - assertEquals(Type.available, mappedPresence.getType()); - assertEquals("Hello", mappedPresence.getStatus()); - assertEquals(1, mappedPresence.getPriority()); +// Presence presence = new Presence(Type.available, "Hello", 1, Mode.chat); +// Message message = MessageBuilder.withPayload(presence).build(); +// XmppPresenceMessageMapper mapper = new XmppPresenceMessageMapper(); +// Presence mappedPresence = mapper.fromMessage(message); +// assertEquals(Mode.chat, mappedPresence.getMode()); +// assertEquals(Type.available, mappedPresence.getType()); +// assertEquals("Hello", mappedPresence.getStatus()); +// assertEquals(1, mappedPresence.getPriority()); } - @Test - public void testFromMessageWithPayloadPresenceType() throws Exception{ - Message message = MessageBuilder.withPayload(Type.available) - .setHeader(XmppHeaders.PRESENCE_FROM, "oleg") - .setHeader(XmppHeaders.PRESENCE_MODE, Mode.chat) - .setHeader(XmppHeaders.PRESENCE_STATUS, "hello") - .setHeader(XmppHeaders.PRESENCE_PRIORITY, 1) - .build(); - XmppPresenceMessageMapper mapper = new XmppPresenceMessageMapper(); - Presence mappedPresence = mapper.fromMessage(message); - assertEquals(Mode.chat, mappedPresence.getMode()); - assertEquals(Type.available, mappedPresence.getType()); - assertEquals("hello", mappedPresence.getStatus()); - assertEquals(1, mappedPresence.getPriority()); - } - @Test - public void testFromMessageWithPayloadPresenceTypeAndStringModeType() throws Exception{ - Message message = MessageBuilder.withPayload(Type.available) - .setHeader(XmppHeaders.PRESENCE_FROM, "oleg") - .setHeader(XmppHeaders.PRESENCE_MODE, "chat") - .setHeader(XmppHeaders.PRESENCE_STATUS, "hello") - .setHeader(XmppHeaders.PRESENCE_PRIORITY, 1) - .build(); - XmppPresenceMessageMapper mapper = new XmppPresenceMessageMapper(); - Presence mappedPresence = mapper.fromMessage(message); - assertEquals(Mode.chat, mappedPresence.getMode()); - assertEquals(Type.available, mappedPresence.getType()); - assertEquals("hello", mappedPresence.getStatus()); - assertEquals(1, mappedPresence.getPriority()); - } +// @Test +// public void testFromMessageWithPayloadPresenceType() throws Exception{ +// Message message = MessageBuilder.withPayload(Type.available) +// .setHeader(XmppHeaders.PRESENCE_FROM, "oleg") +// .setHeader(XmppHeaders.PRESENCE_MODE, Mode.chat) +// .setHeader(XmppHeaders.PRESENCE_STATUS, "hello") +// .setHeader(XmppHeaders.PRESENCE_PRIORITY, 1) +// .build(); +// XmppPresenceMessageMapper mapper = new XmppPresenceMessageMapper(); +// Presence mappedPresence = mapper.fromMessage(message); +// assertEquals(Mode.chat, mappedPresence.getMode()); +// assertEquals(Type.available, mappedPresence.getType()); +// assertEquals("hello", mappedPresence.getStatus()); +// assertEquals(1, mappedPresence.getPriority()); +// } +// @Test +// public void testFromMessageWithPayloadPresenceTypeAndStringModeType() throws Exception{ +// Message message = MessageBuilder.withPayload(Type.available) +// .setHeader(XmppHeaders.PRESENCE_FROM, "oleg") +// .setHeader(XmppHeaders.PRESENCE_MODE, "chat") +// .setHeader(XmppHeaders.PRESENCE_STATUS, "hello") +// .setHeader(XmppHeaders.PRESENCE_PRIORITY, 1) +// .build(); +// XmppPresenceMessageMapper mapper = new XmppPresenceMessageMapper(); +// Presence mappedPresence = mapper.fromMessage(message); +// assertEquals(Mode.chat, mappedPresence.getMode()); +// assertEquals(Type.available, mappedPresence.getType()); +// assertEquals("hello", mappedPresence.getStatus()); +// assertEquals(1, mappedPresence.getPriority()); +// } - @Test(expected=MessageMappingException.class) - public void testFromMessageWithPayloadPresenceTypeUnsupportedMode() throws Exception{ - - Message message = MessageBuilder.withPayload(Type.available) - .setHeader(XmppHeaders.PRESENCE_MODE, 1) - .build(); - XmppPresenceMessageMapper mapper = new XmppPresenceMessageMapper(); - mapper.fromMessage(message); - } +// @Test(expected=MessageMappingException.class) +// public void testFromMessageWithPayloadPresenceTypeUnsupportedMode() throws Exception{ +// +// Message message = MessageBuilder.withPayload(Type.available) +// .setHeader(XmppHeaders.PRESENCE_MODE, 1) +// .build(); +// XmppPresenceMessageMapper mapper = new XmppPresenceMessageMapper(); +// mapper.fromMessage(message); +// } - @Test(expected=MessageMappingException.class) - public void testFromMessageWithUnsupportedPayload() throws Exception{ - Message message = MessageBuilder.withPayload("hello").build(); - XmppPresenceMessageMapper mapper = new XmppPresenceMessageMapper(); - mapper.fromMessage(message); - } +// @Test(expected=MessageMappingException.class) +// public void testFromMessageWithUnsupportedPayload() throws Exception{ +// Message message = MessageBuilder.withPayload("hello").build(); +// XmppPresenceMessageMapper mapper = new XmppPresenceMessageMapper(); +// mapper.fromMessage(message); +// } } diff --git a/spring-integration-xmpp/src/test/java/test.properties b/spring-integration-xmpp/src/test/java/test.properties index 02213f3b6d..0aaf3b43a7 100644 --- a/spring-integration-xmpp/src/test/java/test.properties +++ b/spring-integration-xmpp/src/test/java/test.properties @@ -1,24 +1,6 @@ -# -# Copyright 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. -# -# to be able to run these tests, put this file on your desktop and configure as appropriate -user.1.login=user@gmail.com +user.2.login=user1@gmail.com + +user.1.login=user2@gmail.com user.1.password=password user.1.host=talk.google.com -user.1.service=gmail.com -#user.1.sasl.mechanism=PLAIN -#user.1.sasl.index=0 -#user.1.resource=resource -#user.1.port=5222 +user.1.service=gmail.com \ No newline at end of file