Class Addresses


  • public final class Addresses
    extends Object
    The implementation of the <addresses/> element in the http://jabber.org/protocol/address namespace..

    Use this class to add extended address information to a stanza.

    Usage

    
     Address address = new Address(Address.Type.CC, Jid.of("juliet@example.net"));
     Addresses addresses = new Addresses(Arrays.asList(address));
     Message message = new Message(Jid.of("romeo@example.net"));
     message.addExtension(addresses);
     

    Creating a Reply for a Message

    To create a reply use createReply(Message, Message):

    
     Message replyMessage = new Message();
     boolean replyGenerated = Addresses.createReply(originalMessage, replyMessage);
     

    This will append an address extension to the reply message according to the business rules.

    This class is immutable.

    See Also:
    XEP-0033: Extended Stanza Addressing, XML Schema, Address
    • Constructor Detail

      • Addresses

        public Addresses​(Collection<Address> addresses)
        Creates an address extension.
        Parameters:
        addresses - The addresses.
      • Addresses

        public Addresses​(Address... address)
        Creates an address extension.
        Parameters:
        address - The addresses.
    • Method Detail

      • getAddresses

        public final List<Address> getAddresses()
        Gets the addresses.
        Returns:
        The addresses.
      • deliveredAndWithoutBlindCarbonCopies

        public final Addresses deliveredAndWithoutBlindCarbonCopies()
        Creates a copy of this addresses extension, but without any BCC addresses. This is useful for server processing (multicast usage).
        Returns:
        A new addresses extension.
        See Also:
        6. Multicast Usage
      • shouldNotReply

        public final boolean shouldNotReply()
        If a noreply address is specified, a reply SHOULD NOT be generated.
        Returns:
        True, if a reply should not be generated.
        See Also:
        8. Reply Handling
      • createReply

        public static boolean createReply​(Message original,
                                          Message reply)
        Creates a reply for a message. If the original message contains address information, a new address extension is created based on the original one and added to the reply.

        This method return false, if either no address information is found on the original message or it contains either Address.Type.NOREPLY or Address.Type.REPLYROOM addresses.

        Parameters:
        original - The original message.
        reply - The reply message.
        Returns:
        True, if a reply has been generated; false, if a reply should not be generated.
        See Also:
        8. Reply Handling