Class IQHandler

    • Constructor Detail

      • IQHandler

        public IQHandler​(String moduleName)
        Create a basic module with the given name.
        Parameters:
        moduleName - The name for the module or null to use the default
    • Method Detail

      • performNoSuchUserCheck

        public boolean performNoSuchUserCheck()
        RFC 6121 8.5.1. "No Such User" specifies how the server must respond to a request made against a non-existing user. The abstract IQ Handler plugin can act accordingly, but allows implementations to override this behavior. By default, Openfire will perform a non-existing user check and act according to the RFC 6121. Subclasses can disable this behavior by overriding this method, and returning 'false'.
        Returns:
        'true' if the Abstract IQ Handler implementation should detect if the IQ request is made against a non-existing user and return an error.
        See Also:
        RFC 6121 8.5.1. "No Such User", OF-880
      • processNoSuchUserCheck

        public Optional<org.xmpp.packet.IQ> processNoSuchUserCheck​(org.xmpp.packet.IQ iq)
        Performs the check as defined in RFC 6121 8.5.1. "No Such User":
        If the 'to' address specifies a bare JID or full JID where the domainpart of the JID matches a configured domain that is serviced by the server itself, the server MUST proceed as follows. [...] If the user account identified by the 'to' attribute does not exist, how the stanza is processed depends on the stanza type. [...] For an IQ stanza, the server MUST return a stanza error to the sender.
        See Also:
        RFC 6121 8.5.1. "No Such User"
      • process

        public void process​(org.xmpp.packet.Packet packet)
                     throws PacketException
        Description copied from interface: ChannelHandler
        Process an XMPP packet.
        Specified by:
        process in interface ChannelHandler
        Parameters:
        packet - a packet to process.
        Throws:
        PacketException - thrown if the packet is malformed (results in the sender's session being shutdown).
      • handleIQ

        public abstract org.xmpp.packet.IQ handleIQ​(org.xmpp.packet.IQ packet)
                                             throws UnauthorizedException
        Handles the received IQ packet.
        Parameters:
        packet - the IQ packet to handle.
        Returns:
        the response to send back.
        Throws:
        UnauthorizedException - if the user that sent the packet is not authorized to request the given operation.
      • getInfo

        public abstract IQHandlerInfo getInfo()
        Returns the handler information to help generically handle IQ packets. IQHandlers that aren't local server iq handlers (e.g. chatbots, transports, etc) return null.
        Returns:
        The IQHandlerInfo for this handler
      • initialize

        public void initialize​(XMPPServer server)
        Description copied from class: BasicModule

        Initializes the basic module.

        Inheriting classes that choose to override this method MUST call this initialize() method before accessing BasicModule resources.

        Specified by:
        initialize in interface Module
        Overrides:
        initialize in class BasicModule
        Parameters:
        server - the server hosting this module.