io.backchat.hookup

HookupClient

trait HookupClient extends HookupClientLike with Connectable with Reconnectable with Closeable

The Hookup client provides a client for the hookup server, it doesn't lock you in to using a specific message format. The default implementation uses websockets to communicate with the server. You can opt-in or opt-out of every feature in the hookup client through configuration.

Usage of the simple hookup client:

  new HookupClient {
    val uri = new URI("ws://localhost:8080/thesocket")

    def receive = {
      case Disconnected(_) ⇒ println("The websocket to " + uri.toASCIIString + " disconnected.")
      case TextMessage(message) ⇒ {
        println("RECV: " + message)
        send("ECHO: " + message)
      }
    }

    connect() onSuccess {
      case Success ⇒
        println("The websocket to " + uri.toASCIIString + "is connected.")
      case _ ⇒
    }
  }

See also

HookupClientConfig

Linear Supertypes
Closeable, AutoCloseable, Reconnectable, Connectable, HookupClientLike, BroadcastChannelLike, AnyRef, Any
Known Subclasses
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. Hide All
  2. Show all
  1. HookupClient
  2. Closeable
  3. AutoCloseable
  4. Reconnectable
  5. Connectable
  6. HookupClientLike
  7. BroadcastChannelLike
  8. AnyRef
  9. Any
Visibility
  1. Public
  2. All

Abstract Value Members

  1. def receive : Receive

    Handle inbound InboundMessage instances

    Handle inbound InboundMessage instances

    returns

    a io.backchat.hookup.HookupClient.Receive as message handler

    Attributes
    abstract
    Definition Classes
    HookupClientLike
  2. def settings : HookupClientConfig

    The configuration of this client.

    The configuration of this client.

    returns

    The HookupClientConfig as configuration object

    Attributes
    abstract

Concrete Value Members

  1. def ! (message: OutboundMessage): Future[OperationResult]

    Send a message to the server.

    Send a message to the server.

    message

    The OutboundMessage to send

    returns

    A akka.dispatch.Future with the OperationResult

    Attributes
    final
  2. def != (arg0: AnyRef): Boolean

    Attributes
    final
    Definition Classes
    AnyRef
  3. def != (arg0: Any): Boolean

    Attributes
    final
    Definition Classes
    Any
  4. def ## (): Int

    Attributes
    final
    Definition Classes
    AnyRef → Any
  5. def == (arg0: AnyRef): Boolean

    Attributes
    final
    Definition Classes
    AnyRef
  6. def == (arg0: Any): Boolean

    Attributes
    final
    Definition Classes
    Any
  7. def asInstanceOf [T0] : T0

    Attributes
    final
    Definition Classes
    Any
  8. def buffered : Boolean

    A flag indicating whether this websocket client can fallback to buffering.

    A flag indicating whether this websocket client can fallback to buffering.

    returns

    whether this websocket client can fallback to buffering or not.

  9. def clone (): AnyRef

    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws()
  10. def close (): Unit

    Attributes
    final
    Definition Classes
    HookupClient → Closeable → AutoCloseable
  11. def connect (protocols: String*): Future[OperationResult]

    Connect to the server.

    Connect to the server.

    returns

    A akka.dispatch.Future with the OperationResult

    Attributes
    final
    Definition Classes
    HookupClientConnectable
  12. def disconnect (): Future[OperationResult]

    Disconnect from the server.

    Disconnect from the server.

    returns

    A akka.dispatch.Future with the OperationResult

    Attributes
    final
    Definition Classes
    HookupClientBroadcastChannelLike
  13. def eq (arg0: AnyRef): Boolean

    Attributes
    final
    Definition Classes
    AnyRef
  14. def equals (arg0: Any): Boolean

    Definition Classes
    AnyRef → Any
  15. implicit lazy val executionContext : ExecutionContext

    The execution context for futures within this client.

    The execution context for futures within this client.

    returns

    The akka.dispatch.ExecutionContext

    Attributes
    protected implicit
  16. def finalize (): Unit

    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws()
  17. def getClass (): java.lang.Class[_]

    Attributes
    final
    Definition Classes
    AnyRef → Any
  18. def hashCode (): Int

    Definition Classes
    AnyRef → Any
  19. def isConnected : Boolean

    A flag indicating connection status.

    A flag indicating connection status.

    returns

    a boolean indicating connection status

    Definition Classes
    HookupClientConnectable
  20. def isInstanceOf [T0] : Boolean

    Attributes
    final
    Definition Classes
    Any
  21. def ne (arg0: AnyRef): Boolean

    Attributes
    final
    Definition Classes
    AnyRef
  22. def notify (): Unit

    Attributes
    final
    Definition Classes
    AnyRef
  23. def notifyAll (): Unit

    Attributes
    final
    Definition Classes
    AnyRef
  24. def reconnect (): Future[OperationResult]

    Reconnect to the server.

    Reconnect to the server.

    returns

    A akka.dispatch.Future with the OperationResult

    Definition Classes
    HookupClientReconnectable
  25. def send (message: OutboundMessage): Future[OperationResult]

    Send a message to the server.

    Send a message to the server.

    message

    The OutboundMessage to send

    returns

    A akka.dispatch.Future with the OperationResult

    Attributes
    final
    Definition Classes
    HookupClientBroadcastChannelLike
  26. def synchronized [T0] (arg0: ⇒ T0): T0

    Attributes
    final
    Definition Classes
    AnyRef
  27. def toString (): String

    Definition Classes
    AnyRef → Any
  28. def wait (): Unit

    Attributes
    final
    Definition Classes
    AnyRef
    Annotations
    @throws()
  29. def wait (arg0: Long, arg1: Int): Unit

    Attributes
    final
    Definition Classes
    AnyRef
    Annotations
    @throws()
  30. def wait (arg0: Long): Unit

    Attributes
    final
    Definition Classes
    AnyRef
    Annotations
    @throws()

Inherited from Closeable

Inherited from AutoCloseable

Inherited from Reconnectable

Inherited from Connectable

Inherited from HookupClientLike

Inherited from BroadcastChannelLike

Inherited from AnyRef

Inherited from Any