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

io.backchat.hookup.HookupClientConfig

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

Abstract Value Members

  1. abstract def receive: Receive

    Handle inbound io.backchat.hookup.InboundMessage instances

    Handle inbound io.backchat.hookup.InboundMessage instances

    returns

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

    Definition Classes
    HookupClientLike
  2. abstract def settings: HookupClientConfig

    The configuration of this client.

    The configuration of this client.

    returns

    The io.backchat.hookup.HookupClientConfig as configuration object

Concrete Value Members

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

    Send a message to the server.

    Send a message to the server.

    message

    The io.backchat.hookup.OutboundMessage to send

    returns

    A scala.concurrent.Future with the io.backchat.hookup.OperationResult

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

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

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

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

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

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

    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[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  10. final def close(): Unit

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

    Connect to the server.

    Connect to the server.

    returns

    A scala.concurrent.Future with the io.backchat.hookup.OperationResult

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

    Disconnect from the server.

    Disconnect from the server.

    returns

    A scala.concurrent.Future with the io.backchat.hookup.OperationResult

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

    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 scala.concurrent.ExecutionContext

    Attributes
    protected
  16. def finalize(): Unit

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

    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. final def isInstanceOf[T0]: Boolean

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

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

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

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

    Reconnect to the server.

    Reconnect to the server.

    returns

    A scala.concurrent.Future with the io.backchat.hookup.OperationResult

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

  26. final def send(message: OutboundMessage): Future[OperationResult]

    Send a message to the server.

    Send a message to the server.

    message

    The io.backchat.hookup.OutboundMessage to send

    returns

    A scala.concurrent.Future with the io.backchat.hookup.OperationResult

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

    Definition Classes
    AnyRef
  28. def toString(): String

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

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

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

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from Closeable

Inherited from Reconnectable

Inherited from Connectable

Inherited from HookupClientLike

Inherited from BroadcastChannelLike

Inherited from AnyRef

Inherited from Any

Ungrouped