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

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

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

Message.getThread介绍

[英]Returns the thread id of the message, which is a unique identifier for a sequence of "chat" messages. If no thread id is set, null will be returned.
[中]返回消息的线程id,它是一系列“聊天”消息的唯一标识符。如果未设置线程id,则返回null。

代码示例

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

  1. @Override
  2. protected boolean acceptSpecific(Message message) {
  3. return thread.equals(message.getThread());
  4. }

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

  1. @Override
  2. protected boolean acceptSpecific(Message message) {
  3. return StringUtils.isNotEmpty(message.getThread());
  4. }

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

  1. @Override
  2. public void processStanza(Stanza packet) {
  3. Message message = (Message) packet;
  4. Chat chat;
  5. if (message.getThread() == null) {
  6. // CHECKSTYLE:OFF
  7. chat = getUserChat(message.getFrom());
  8. // CHECKSTYLE:ON
  9. }
  10. else {
  11. chat = getThreadChat(message.getThread());
  12. }
  13. if (chat == null) {
  14. chat = createChat(message);
  15. }
  16. // The chat could not be created, abort here
  17. if (chat == null)
  18. return;
  19. // TODO: Use AsyncButOrdered (with Chat as Key?)
  20. deliverMessage(chat, message);
  21. }
  22. }, packetFilter);

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

  1. /**
  2. * Creates a new {@link Chat} based on the message. May returns null if no chat could be
  3. * created, e.g. because the message comes without from.
  4. *
  5. * @param message
  6. * @return a Chat or null if none can be created
  7. */
  8. private Chat createChat(Message message) {
  9. Jid from = message.getFrom();
  10. // According to RFC6120 8.1.2.1 4. messages without a 'from' attribute are valid, but they
  11. // are of no use in this case for ChatManager
  12. if (from == null) {
  13. return null;
  14. }
  15. EntityJid userJID = from.asEntityJidIfPossible();
  16. if (userJID == null) {
  17. LOGGER.warning("Message from JID without localpart: '" + message.toXML(null) + "'");
  18. return null;
  19. }
  20. String threadID = message.getThread();
  21. if (threadID == null) {
  22. threadID = nextID();
  23. }
  24. return createChat(userJID, threadID, false);
  25. }

代码示例来源: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. if (original.getThread() != null) {
  2. reply.setThread(original.getThread());

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

  1. @Override
  2. protected Map<String, Object> extractStandardHeaders(Message source) {
  3. Map<String, Object> headers = new HashMap<>();
  4. Jid from = source.getFrom();
  5. if (from != null) {
  6. headers.put(XmppHeaders.FROM, from.toString());
  7. }
  8. String subject = source.getSubject();
  9. if (StringUtils.hasText(subject)) {
  10. headers.put(XmppHeaders.SUBJECT, subject);
  11. }
  12. String thread = source.getThread();
  13. if (StringUtils.hasText(thread)) {
  14. headers.put(XmppHeaders.THREAD, thread);
  15. }
  16. Jid to = source.getTo();
  17. if (to != null) {
  18. headers.put(XmppHeaders.TO, to.toString());
  19. }
  20. Message.Type type = source.getType();
  21. if (type != null) {
  22. headers.put(XmppHeaders.TYPE, type);
  23. }
  24. return headers;
  25. }

代码示例来源: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: org.littleshoot/smack-xmpp-3-2-2

  1. public boolean accept(Packet packet) {
  2. return packet instanceof Message && thread.equals(((Message) packet).getThread());
  3. }
  4. }

代码示例来源:origin: org.mobicents.resources/mobicents-slee-ra-xmpp-library

  1. public boolean accept(Packet packet) {
  2. if (packet instanceof Message) {
  3. return thread.equals(((Message)packet).getThread());
  4. }
  5. else {
  6. return false;
  7. }
  8. }
  9. }

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

  1. @Test
  2. public void fromHeadersStandardOutbound() {
  3. DefaultXmppHeaderMapper mapper = new DefaultXmppHeaderMapper();
  4. Map<String, Object> headerMap = new HashMap<>();
  5. headerMap.put("userDefined1", "foo");
  6. headerMap.put("userDefined2", "bar");
  7. headerMap.put(XmppHeaders.THREAD, "test.thread");
  8. headerMap.put(XmppHeaders.TO, "test.to");
  9. headerMap.put(XmppHeaders.FROM, "test.from");
  10. headerMap.put(XmppHeaders.SUBJECT, "test.subject");
  11. headerMap.put(XmppHeaders.TYPE, "headline");
  12. MessageHeaders headers = new MessageHeaders(headerMap);
  13. Message target = new Message();
  14. mapper.fromHeadersToRequest(headers, target);
  15. // "standard" XMPP headers
  16. assertEquals("test.thread", target.getThread());
  17. assertEquals("test.to", target.getTo().toString());
  18. assertEquals("test.from", target.getFrom().toString());
  19. assertEquals("test.subject", target.getSubject());
  20. assertEquals(Message.Type.headline, target.getType());
  21. // user-defined headers not included by default
  22. assertNull(JivePropertiesManager.getProperty(target, "userDefined1"));
  23. assertNull(JivePropertiesManager.getProperty(target, "userDefined2"));
  24. // transient headers should not be copied
  25. assertNull(JivePropertiesManager.getProperty(target, "id"));
  26. assertNull(JivePropertiesManager.getProperty(target, "timestamp"));
  27. }

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

  1. assertNull(target.getThread());
  2. assertNull(target.getTo());
  3. assertNull(target.getFrom());

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

  1. boolean bodyMatches = smackMessage.getBody().equals("Hello Kitty");
  2. boolean toMatches = smackMessage.getTo().equals("kermit@frog.com");
  3. boolean threadIdMatches = smackMessage.getThread().equals("123");
  4. return bodyMatches & toMatches & threadIdMatches;
  5. }));

代码示例来源:origin: org.mule.transports/mule-transport-xmpp

  1. private void copyThread(Message xmppMessage, MuleMessage muleMessage)
  2. {
  3. String thread = xmppMessage.getThread();
  4. if (StringUtils.isNotEmpty(thread))
  5. {
  6. muleMessage.setOutboundProperty(XmppConnector.XMPP_THREAD, thread);
  7. }
  8. }

代码示例来源:origin: org.igniterealtime.smack/smack

  1. private Chat createChat(Message message) {
  2. String threadID = message.getThread();
  3. if(threadID == null) {
  4. threadID = nextID();
  5. }
  6. String userJID = message.getFrom();
  7. return createChat(userJID, threadID, false);
  8. }

代码示例来源:origin: org.littleshoot/smack-xmpp-3-2-2

  1. private Chat createChat(Message message) {
  2. String threadID = message.getThread();
  3. if(threadID == null) {
  4. threadID = nextID();
  5. }
  6. String userJID = message.getFrom();
  7. return createChat(userJID, threadID, false);
  8. }

代码示例来源:origin: org.littleshoot/smack-xmpp-3-2-2

  1. public void interceptPacket(Packet packet) {
  2. Message message = (Message) packet;
  3. Chat chat = connection.getChatManager().getThreadChat(message.getThread());
  4. if (chat == null) {
  5. return;
  6. }
  7. if (updateChatState(chat, ChatState.active)) {
  8. message.addExtension(new ChatStateExtension(ChatState.active));
  9. }
  10. }
  11. }

代码示例来源: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. }

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

  1. private StanzaFilter createPacketFilter() {
  2. AndFilter andFilter = new AndFilter();
  3. andFilter.addFilter(new StanzaTypeFilter(Message.class));
  4. andFilter.addFilter(new ThreadFilter(requestMessage.getThread()));
  5. return andFilter;
  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. }

相关文章