You're viewing an older version of Vaadin JavaDoc. Please see version 24.7.0 for the latest.
com.vaadin.collaborationengine.

Class MessageManager

  • public class MessageManager
    extends AbstractCollaborationManager

    Manager to handle messages sent to a topic. It allows submitting messages to a topic and set a handler to react when a new message has been submitted.

    Author:

    Vaadin Ltd

    • Constructor Detail

      • MessageManager

        public MessageManager​(Component component,
                              UserInfo localUser,
                              String topicId)

        Creates a new manager for the given component.

        Parameters:

        component - the component which holds UI access, not null

        localUser - the information of the local user, not null

        topicId - the id of the topic to connect to, not null

      • MessageManager

        public MessageManager​(Component component,
                              UserInfo localUser,
                              String topicId,
                              CollaborationMessagePersister persister)

        Creates a new persisting manager for the given component.

        Parameters:

        component - the component which holds UI access, not null

        localUser - the information of the local user, not null

        topicId - the id of the topic to connect to, not null

        persister - the persister to read/write messages to an external source

      • MessageManager

        public MessageManager​(ConnectionContext context,
                              UserInfo localUser,
                              String topicId,
                              CollaborationEngine collaborationEngine)

        Creates a new manager for the given connection context.

        Parameters:

        context - the context that manages connection status, not null

        localUser - the information of the local user, not null

        topicId - the id of the topic to connect to, not null

        collaborationEngine - the collaboration engine instance to use, not null

      • MessageManager

        public MessageManager​(ConnectionContext context,
                              UserInfo localUser,
                              String topicId,
                              CollaborationMessagePersister persister,
                              CollaborationEngine collaborationEngine)

        Creates a new persisting manager for the given connection context.

        Parameters:

        context - the context that manages connection status, not null

        localUser - the information of the local user, not null

        topicId - the id of the topic to connect to, not null

        persister - the persister to read/write messages to an external source

        collaborationEngine - the collaboration engine instance to use, not null

    • Method Detail

      • setMessageHandler

        public void setMessageHandler​(MessageHandler handler)

        Sets a handler which will be invoked for all messages already in the topic and when a new message is submitted.

        The handler accepts a MessageHandler.MessageContext as a parameter which contains a reference to the sent message.

        Parameters:

        handler - the message handler, or null to remove an existing handler

      • submit

        public CompletableFuture<Void> submit​(String text)

        Submits a message to the topic as the current local user.

        Parameters:

        text - the text of the message, not null

        Returns:

        a future which will complete when the message has been added to the topic, not null

      • submit

        public CompletableFuture<Void> submit​(CollaborationMessage message)

        Submits a message to the topic.

        Parameters:

        message - the message, not null

        Returns:

        a future which will complete when the message has been added to the topic, not null