Interface Service

  • All Known Implementing Classes:
    AnalyticsService, KeyValueService, ManagerService, QueryService, SearchService, ViewService

    public interface Service
    The parent interface for all service implementations.

    Note that while this interface has been around since the 1.x days, it has been changed up quite a bit to make it simpler and provide more functionality based on real world experience with the first iteration.

    Since:
    1.0.0
    • Method Detail

      • connect

        void connect()
        Instruct this Service to connect.

        This method is async and will return immediately. Use the other methods available to inspect the current state of the service, signaling potential successful connection attempts.

      • disconnect

        void disconnect()
        Instruct this Service to disconnect.

        This method is async and will return immediately. Use the other methods available to inspect the current state of the service, signaling potential successful disconnection attempts.

      • send

        <R extends Request<? extends Response>> void send​(R request)
        Sends the request into this Service.

        Note that there is no guarantee that the request will actually dispatched, based on the state this service is in.

        Parameters:
        request - the request to send.
      • state

        ServiceState state()
        Returns the current state of this Service.
        Returns:
        the state of this service.