Class WrapperHubConnection

    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      java.lang.String call​(java.lang.String recipientId, java.lang.String msgTag, java.util.Map msg)
      Sends a message to a given client expecting a response.
      java.util.Map callAll​(java.lang.String msgTag, java.util.Map msg)
      Sends a message to all subscribed clients expecting responses.
      Response callAndWait​(java.lang.String recipientId, java.util.Map msg, int timeout)
      Sends a message synchronously to a client, waiting for the response.
      void declareMetadata​(java.util.Map meta)
      Declares this registered client's metadata.
      void declareSubscriptions​(java.util.Map subs)
      Declares this registered client's MType subscriptions.
      Metadata getMetadata​(java.lang.String clientId)
      Returns the metadata for another registered client.
      RegInfo getRegInfo()
      Returns the registration information associated with this connection.
      java.lang.String[] getRegisteredClients()
      Returns the list of client public IDs for those clients currently registered.
      java.util.Map getSubscribedClients​(java.lang.String mtype)
      Returns a map of subscriptions for a given MType.
      Subscriptions getSubscriptions​(java.lang.String clientId)
      Returns the subscriptions for another registered client.
      void notify​(java.lang.String recipientId, java.util.Map msg)
      Sends a message to a given client without wanting a response.
      java.util.List notifyAll​(java.util.Map msg)
      Sends a message to all subscribed clients without wanting a response.
      void ping()
      Tests whether the connection is currently open.
      void reply​(java.lang.String msgId, java.util.Map response)
      Supplies a response to a previously received message.
      void setCallable​(CallableClient callable)
      Tells the hub how it can perform callbacks on the client by providing a CallableClient object.
      void unregister()
      Unregisters the client and terminates this connection.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • WrapperHubConnection

        public WrapperHubConnection​(HubConnection base)
    • Method Detail

      • getRegInfo

        public RegInfo getRegInfo()
        Description copied from interface: HubConnection
        Returns the registration information associated with this connection.
        Specified by:
        getRegInfo in interface HubConnection
        Returns:
        registration info
      • setCallable

        public void setCallable​(CallableClient callable)
                         throws SampException
        Description copied from interface: HubConnection
        Tells the hub how it can perform callbacks on the client by providing a CallableClient object. This is required before the client can declare subscriptions or make asynchronous calls.
        Specified by:
        setCallable in interface HubConnection
        Parameters:
        callable - callable client
        Throws:
        SampException
      • ping

        public void ping()
                  throws SampException
        Description copied from interface: HubConnection
        Tests whether the connection is currently open.
        Specified by:
        ping in interface HubConnection
        Throws:
        SampException - if the hub has disappeared or communications are disrupted in some other way
      • getMetadata

        public Metadata getMetadata​(java.lang.String clientId)
                             throws SampException
        Description copied from interface: HubConnection
        Returns the metadata for another registered client.
        Specified by:
        getMetadata in interface HubConnection
        Parameters:
        clientId - public id for another registered client
        Returns:
        metadata map
        Throws:
        SampException
      • getRegisteredClients

        public java.lang.String[] getRegisteredClients()
                                                throws SampException
        Description copied from interface: HubConnection
        Returns the list of client public IDs for those clients currently registered.
        Specified by:
        getRegisteredClients in interface HubConnection
        Returns:
        array of client ids, excluding the one for this client
        Throws:
        SampException
      • getSubscribedClients

        public java.util.Map getSubscribedClients​(java.lang.String mtype)
                                           throws SampException
        Description copied from interface: HubConnection
        Returns a map of subscriptions for a given MType.
        Specified by:
        getSubscribedClients in interface HubConnection
        Parameters:
        mtype - MType
        Returns:
        map in which the keys are the public IDs of clients subscribed to mtype
        Throws:
        SampException
      • notify

        public void notify​(java.lang.String recipientId,
                           java.util.Map msg)
                    throws SampException
        Description copied from interface: HubConnection
        Sends a message to a given client without wanting a response.
        Specified by:
        notify in interface HubConnection
        Parameters:
        recipientId - public-id of client to receive message
        msg - Message-like map
        Throws:
        SampException
      • notifyAll

        public java.util.List notifyAll​(java.util.Map msg)
                                 throws SampException
        Description copied from interface: HubConnection
        Sends a message to all subscribed clients without wanting a response.
        Specified by:
        notifyAll in interface HubConnection
        Parameters:
        msg - Message-like map
        Returns:
        list of public-ids for clients to which the notify will be sent
        Throws:
        SampException
      • call

        public java.lang.String call​(java.lang.String recipientId,
                                     java.lang.String msgTag,
                                     java.util.Map msg)
                              throws SampException
        Description copied from interface: HubConnection
        Sends a message to a given client expecting a response. The receiveResponse method of this connection's CallableClient will be called with a response at some time in the future.

        Only permitted if this client is already callable.

        Specified by:
        call in interface HubConnection
        Parameters:
        recipientId - public-id of client to receive message
        msgTag - arbitrary string tagging this message for caller's benefit
        msg - Message-like map
        Returns:
        message ID
        Throws:
        SampException
      • callAll

        public java.util.Map callAll​(java.lang.String msgTag,
                                     java.util.Map msg)
                              throws SampException
        Description copied from interface: HubConnection
        Sends a message to all subscribed clients expecting responses. The receiveResponse method of this connection's CallableClient will be called with responses at some time in the future.

        Only permitted if this client is already callable.

        Specified by:
        callAll in interface HubConnection
        Parameters:
        msgTag - arbitrary string tagging this message for caller's benefit
        msg - Message-like map
        Returns:
        public-id->msg-id map for clients to which an attempt to send the call will be made
        Throws:
        SampException
      • callAndWait

        public Response callAndWait​(java.lang.String recipientId,
                                    java.util.Map msg,
                                    int timeout)
                             throws SampException
        Description copied from interface: HubConnection
        Sends a message synchronously to a client, waiting for the response. If more seconds elapse than the value of the timeout parameter, an exception will result.
        Specified by:
        callAndWait in interface HubConnection
        Parameters:
        recipientId - public-id of client to receive message
        msg - Message-like map
        timeout - timeout in seconds, or <0 for no timeout
        Returns:
        response
        Throws:
        SampException
      • reply

        public void reply​(java.lang.String msgId,
                          java.util.Map response)
                   throws SampException
        Description copied from interface: HubConnection
        Supplies a response to a previously received message.
        Specified by:
        reply in interface HubConnection
        Parameters:
        msgId - ID associated with earlier send
        response - Response-like map
        Throws:
        SampException