org.jivesoftware.smack.packet.Message.setThread()方法的使用及代码示例

x33g5p2x  于2022-01-25 转载在 其他  
字(10.5k)|赞(0)|评价(0)|浏览(204)

本文整理了Java中org.jivesoftware.smack.packet.Message.setThread()方法的一些代码示例,展示了Message.setThread()的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Message.setThread()方法的具体详情如下:
包路径:org.jivesoftware.smack.packet.Message
类名称:Message
方法名:setThread

Message.setThread介绍

[英]Sets the thread id of the message, which is a unique identifier for a sequence of "chat" messages.
[中]设置消息的线程id,这是一系列“聊天”消息的唯一标识符。

代码示例

代码示例来源:origin: igniterealtime/Smack

  1. /**
  2. * Delivers a message directly to this chat, which will add the message
  3. * to the collector and deliver it to all listeners registered with the
  4. * Chat. This is used by the XMPPConnection class to deliver messages
  5. * without a thread ID.
  6. *
  7. * @param message the message.
  8. */
  9. void deliver(Message message) {
  10. // Because the collector and listeners are expecting a thread ID with
  11. // a specific value, set the thread ID on the message even though it
  12. // probably never had one.
  13. message.setThread(threadID);
  14. for (ChatMessageListener listener : listeners) {
  15. listener.processMessage(this, message);
  16. }
  17. }

代码示例来源:origin: igniterealtime/Smack

  1. /**
  2. * Sends a message to the other chat participant. The thread ID, recipient,
  3. * and message type of the message will automatically set to those of this chat.
  4. *
  5. * @param message the message to send.
  6. * @throws NotConnectedException
  7. * @throws InterruptedException
  8. */
  9. public void sendMessage(Message message) throws NotConnectedException, InterruptedException {
  10. // Force the recipient, message type, and thread ID since the user elected
  11. // to send the message through this chat object.
  12. message.setTo(participant);
  13. message.setType(Message.Type.chat);
  14. message.setThread(threadID);
  15. chatManager.sendMessage(this, message);
  16. }

代码示例来源:origin: igniterealtime/Smack

  1. private static Message createChatPacket(final String threadId, final boolean isEntityFullJid) {
  2. Message chatMsg = new Message(JidTestUtil.BARE_JID_1, Message.Type.chat);
  3. chatMsg.setBody("the body message - " + System.currentTimeMillis());
  4. Jid jid;
  5. if (isEntityFullJid) {
  6. jid = JidTestUtil.DUMMY_AT_EXAMPLE_ORG_SLASH_DUMMYRESOURCE;
  7. } else {
  8. jid = JidTestUtil.DUMMY_AT_EXAMPLE_ORG;
  9. }
  10. chatMsg.setFrom(jid);
  11. chatMsg.setThread(threadId);
  12. return chatMsg;
  13. }

代码示例来源:origin: igniterealtime/Smack

  1. @Test
  2. public void setMessageThreadTest() throws IOException, SAXException {
  3. final String messageThread = "1234";
  4. StringBuilder controlBuilder = new StringBuilder();
  5. controlBuilder.append("<message>")
  6. .append("<thread>")
  7. .append(messageThread)
  8. .append("</thread>")
  9. .append("</message>");
  10. String control = controlBuilder.toString();
  11. Message message = getNewMessage();
  12. message.setThread(messageThread);
  13. assertEquals(messageThread, message.getThread());
  14. assertXMLEqual(control, message.toXML(StreamOpen.CLIENT_NAMESPACE).toString());
  15. }

代码示例来源:origin: igniterealtime/Smack

  1. reply.setThread(original.getThread());

代码示例来源:origin: igniterealtime/Smack

  1. message.setThread(thread);

代码示例来源:origin: igniterealtime/Smack

  1. msg2.setThread(msg.getThread());
  2. msg2.setType(Message.Type.chat);
  3. msg2.setBody("To enter a case please fill out this form and send it back to me");

代码示例来源:origin: spring-projects/spring-integration

  1. String threadId = getHeaderIfAvailable(headers, XmppHeaders.THREAD, String.class);
  2. if (StringUtils.hasText(threadId)) {
  3. target.setThread(threadId);

代码示例来源:origin: spring-projects/spring-integration

  1. @Test
  2. public void toHeadersStandardOnly() throws XmppStringprepException {
  3. DefaultXmppHeaderMapper mapper = new DefaultXmppHeaderMapper();
  4. Message source = new Message(JidCreate.from("test.to"), Message.Type.headline);
  5. source.setFrom(JidCreate.from("test.from"));
  6. source.setSubject("test.subject");
  7. source.setThread("test.thread");
  8. JivePropertiesManager.addProperty(source, "userDefined1", "foo");
  9. JivePropertiesManager.addProperty(source, "userDefined2", "bar");
  10. Map<String, Object> headers = mapper.toHeadersFromRequest(source);
  11. assertEquals("test.to", headers.get(XmppHeaders.TO).toString());
  12. assertEquals("test.from", headers.get(XmppHeaders.FROM).toString());
  13. assertEquals("test.subject", headers.get(XmppHeaders.SUBJECT));
  14. assertEquals("test.thread", headers.get(XmppHeaders.THREAD));
  15. assertEquals(Message.Type.headline, headers.get(XmppHeaders.TYPE));
  16. assertNull(headers.get("userDefined1"));
  17. assertNull(headers.get("userDefined2"));
  18. }

代码示例来源:origin: spring-projects/spring-integration

  1. @Test
  2. public void toHeadersUserDefinedOnly() throws XmppStringprepException {
  3. DefaultXmppHeaderMapper mapper = new DefaultXmppHeaderMapper();
  4. mapper.setReplyHeaderNames("userDefined*");
  5. Message source = new Message(JidCreate.from("test.to"), Message.Type.headline);
  6. source.setFrom(JidCreate.from("test.from"));
  7. source.setSubject("test.subject");
  8. source.setThread("test.thread");
  9. JivePropertiesManager.addProperty(source, "userDefined1", "foo");
  10. JivePropertiesManager.addProperty(source, "userDefined2", "bar");
  11. Map<String, Object> headers = mapper.toHeadersFromReply(source);
  12. assertNull(headers.get(XmppHeaders.TO));
  13. assertNull(headers.get(XmppHeaders.FROM));
  14. assertNull(headers.get(XmppHeaders.SUBJECT));
  15. assertNull(headers.get(XmppHeaders.THREAD));
  16. assertNull(headers.get(XmppHeaders.TYPE));
  17. assertEquals("foo", headers.get("userDefined1"));
  18. assertEquals("bar", headers.get("userDefined2"));
  19. }

代码示例来源:origin: spring-projects/spring-integration

  1. @Test
  2. public void validateMessagePostAsSmackMessage() throws Exception {
  3. XMPPConnection connection = mock(XMPPConnection.class);
  4. ChatMessageSendingMessageHandler handler = new ChatMessageSendingMessageHandler(connection);
  5. handler.setBeanFactory(mock(BeanFactory.class));
  6. handler.afterPropertiesSet();
  7. org.jivesoftware.smack.packet.Message smackMessage =
  8. new org.jivesoftware.smack.packet.Message(JidCreate.from("kermit@frog.com"));
  9. smackMessage.setBody("Test Message");
  10. Message<?> message = MessageBuilder.withPayload(smackMessage).build();
  11. // first Message new
  12. handler.handleMessage(message);
  13. verify(connection, times(1)).sendStanza(smackMessage);
  14. // assuming we know thread ID although currently we do not provide this capability
  15. smackMessage = new org.jivesoftware.smack.packet.Message(JidCreate.from("kermit@frog.com"));
  16. smackMessage.setBody("Hello Kitty");
  17. smackMessage.setThread("123");
  18. message = MessageBuilder.withPayload(smackMessage).build();
  19. reset(connection);
  20. handler.handleMessage(message);
  21. // in threaded conversation we need to look for existing chat
  22. verify(connection, times(1)).sendStanza(smackMessage);
  23. }

代码示例来源:origin: spring-projects/spring-integration

  1. @Test
  2. public void testWithErrorChannel() throws Exception {
  3. DefaultListableBeanFactory bf = new DefaultListableBeanFactory();
  4. XMPPConnection connection = mock(XMPPConnection.class);
  5. bf.registerSingleton(XmppContextUtils.XMPP_CONNECTION_BEAN_NAME, connection);
  6. ChatMessageListeningEndpoint endpoint = new ChatMessageListeningEndpoint();
  7. DirectChannel outChannel = new DirectChannel();
  8. outChannel.subscribe(message -> {
  9. throw new RuntimeException("ooops");
  10. });
  11. PollableChannel errorChannel = new QueueChannel();
  12. endpoint.setBeanFactory(bf);
  13. endpoint.setOutputChannel(outChannel);
  14. endpoint.setErrorChannel(errorChannel);
  15. endpoint.afterPropertiesSet();
  16. StanzaListener listener = (StanzaListener) TestUtils.getPropertyValue(endpoint, "stanzaListener");
  17. Message smackMessage = new Message(JidCreate.from("kermit@frog.com"));
  18. smackMessage.setBody("hello");
  19. smackMessage.setThread("1234");
  20. listener.processStanza(smackMessage);
  21. ErrorMessage msg =
  22. (ErrorMessage) errorChannel.receive();
  23. assertEquals("hello", ((MessagingException) msg.getPayload()).getFailedMessage().getPayload());
  24. }

代码示例来源:origin: org.springframework.ws/spring-ws-support

  1. protected XmppSenderConnection(XMPPConnection connection, String to, String thread) {
  2. Assert.notNull(connection, "'connection' must not be null");
  3. Assert.hasLength(to, "'to' must not be empty");
  4. Assert.hasLength(thread, "'thread' must not be empty");
  5. this.connection = connection;
  6. try {
  7. this.requestMessage = new Message(JidCreate.from(to), Message.Type.chat);
  8. } catch (XmppStringprepException e) {
  9. throw new RuntimeException(e);
  10. }
  11. this.requestMessage.setThread(thread);
  12. }

代码示例来源:origin: spring-projects/spring-ws

  1. protected XmppSenderConnection(XMPPConnection connection, String to, String thread) {
  2. Assert.notNull(connection, "'connection' must not be null");
  3. Assert.hasLength(to, "'to' must not be empty");
  4. Assert.hasLength(thread, "'thread' must not be empty");
  5. this.connection = connection;
  6. try {
  7. this.requestMessage = new Message(JidCreate.from(to), Message.Type.chat);
  8. } catch (XmppStringprepException e) {
  9. throw new RuntimeException(e);
  10. }
  11. this.requestMessage.setThread(thread);
  12. }

代码示例来源:origin: apache/servicemix-bundles

  1. protected XmppSenderConnection(XMPPConnection connection, String to, String thread) {
  2. Assert.notNull(connection, "'connection' must not be null");
  3. Assert.hasLength(to, "'to' must not be empty");
  4. Assert.hasLength(thread, "'thread' must not be empty");
  5. this.connection = connection;
  6. try {
  7. this.requestMessage = new Message(JidCreate.from(to), Message.Type.chat);
  8. } catch (XmppStringprepException e) {
  9. throw new RuntimeException(e);
  10. }
  11. this.requestMessage.setThread(thread);
  12. }

代码示例来源:origin: org.apache.cayenne/cayenne-nodeps

  1. protected void sendExternalEvent(CayenneEvent localEvent) throws Exception {
  2. Message message = groupChat.createMessage();
  3. message.setBody(serializeToString(localEvent));
  4. // set thread to our session handle to be able to discard messages from self
  5. message.setThread(sessionHandle);
  6. groupChat.sendMessage(message);
  7. }

代码示例来源:origin: org.objectstyle.cayenne/cayenne

  1. protected void sendExternalEvent(CayenneEvent localEvent) throws Exception {
  2. Message message = groupChat.createMessage();
  3. message.setBody(serializeToString(localEvent));
  4. // set thread to our session handle to be able to discard messages from self
  5. message.setThread(sessionHandle);
  6. groupChat.sendMessage(message);
  7. }

代码示例来源:origin: org.springframework.ws/spring-ws-support

  1. @Override
  2. protected void onSendBeforeWrite(WebServiceMessage message) throws IOException {
  3. responseMessage = new Message(requestMessage.getFrom(), Message.Type.chat);
  4. responseMessage.setFrom(connection.getUser());
  5. responseMessage.setThread(requestMessage.getThread());
  6. }

代码示例来源:origin: spring-projects/spring-ws

  1. @Override
  2. protected void onSendBeforeWrite(WebServiceMessage message) throws IOException {
  3. responseMessage = new Message(requestMessage.getFrom(), Message.Type.chat);
  4. responseMessage.setFrom(connection.getUser());
  5. responseMessage.setThread(requestMessage.getThread());
  6. }

代码示例来源:origin: apache/servicemix-bundles

  1. @Override
  2. protected void onSendBeforeWrite(WebServiceMessage message) throws IOException {
  3. responseMessage = new Message(requestMessage.getFrom(), Message.Type.chat);
  4. responseMessage.setFrom(connection.getUser());
  5. responseMessage.setThread(requestMessage.getThread());
  6. }

相关文章