Class MultiplexerPacketDeliverer

  • All Implemented Interfaces:

    public class MultiplexerPacketDeliverer
    extends Object
    implements PacketDeliverer
    Fallback method used by NettyConnection when connected to a connection manager. The fallback method will be used when a connection fails to send a Packet (probably because the socket was closed).

    The first attempt will be to send the packet using another connection to the same connection manager (since managers may have a pool of connections to the server). And if that fails then instances of Message may be stored offline for later retrieval. Since packets may be wrapped by special IQ packets (read the Connection Manager JEP for more information) we need to unwrap the packet and store the wrapped packet offline.

    Gaston Dombiak
    • Constructor Detail

      • MultiplexerPacketDeliverer

        public MultiplexerPacketDeliverer()
    • Method Detail

      • setConnectionManagerDomain

        public void setConnectionManagerDomain​(String connectionManagerDomain)
      • deliver

        public void deliver​(org.xmpp.packet.Packet packet)
                     throws UnauthorizedException,
        Description copied from interface: PacketDeliverer
        Delivers the given packet based on packet recipient and sender. The deliverer defers actual routing decisions to other classes.


        Be careful to enforce concurrency DbC of concurrent by synchronizing any accesses to class resources.
        Specified by:
        deliver in interface PacketDeliverer
        packet - the packet to route
        UnauthorizedException - if the user is not authorised
        PacketException - if the packet is null or the packet could not be routed.