Interface DiscoItemsProvider

  • All Known Implementing Classes:
    AdHocCommandHandler, FileTransferProxy, IQOfflineMessagesHandler, MediaProxyService, MultiUserChatServiceImpl, PubSubModule

    public interface DiscoItemsProvider
    A DiscoItemsProvider is responsible for providing the items associated with a JID's name and node. For example, the room service could implement this interface in order to provide the existing rooms as its items. In this case, the JID's name and node won't be used.

    The items to provide must have a JID attribute specifying the JID of the item and may possess a name attribute specifying a natural-language name for the item. The node attribute is optional and must be used only for items that aren't addressable as a JID.

    Author:
    Gaston Dombiak
    • Method Detail

      • getItems

        Iterator<DiscoItem> getItems​(String name,
                                     String node,
                                     org.xmpp.packet.JID senderJID)
        Returns an Iterator (of DiscoItem) with the target entity's items or null if none. Each DiscoItem must include a JID attribute and may include the name and node attributes of the entity. In case that the sender of the disco request is not authorized to discover items an UnauthorizedException will be thrown.
        Parameters:
        name - the recipient JID's name.
        node - the requested disco node.
        senderJID - the XMPPAddress of user that sent the disco items request.
        Returns:
        an Iterator (of DiscoItem) with the target entity's items or null if none.