Interface HubService

  • All Known Implementing Classes:
    BasicHubService, FacadeHubService, GuiHubService, MessageTrackerHubService

    public interface HubService
    Interface defining the work that the hub has to do. This is independent of profile or transport, and just concerns keeping track of clients and routing messages between them.
    Since:
    15 Jul 2008
    Author:
    Mark Taylor
    • Method Detail

      • register

        HubConnection register​(ProfileToken profileToken)
                        throws SampException
        Creates a new connection to this hub service, thereby initiating a new registered client.

        It is the responsibility of the returned connection, not the user of that connection, to broadcast the various samp.hub.event.* notifications at the appropriate times.

        Most of the HubConnection methods are declared to throw SampException, however, implementations may throw unchecked exceptions if that is more convenient; users of the connection should be prepared to catch these if they occur.

        Parameters:
        profileToken - identifier for the profile acting as gatekeeper for this connection
        Returns:
        new hub connection representing registration of a new client
        Throws:
        SampException
      • disconnectAll

        void disconnectAll​(ProfileToken profileToken)
        Forcibly terminates any connections created by a previous call of register(org.astrogrid.samp.hub.ProfileToken) with a particular profileToken. Any necessary hub events will be sent.
        Parameters:
        profileToken - previous argument to register
      • isHubRunning

        boolean isHubRunning()
        Indicates whether this hub service is currently open for operations.
        Returns:
        true iff called between start() and shutdown()
      • shutdown

        void shutdown()
        Tidies up any resources owned by this object. Should be called when no longer required.