SocketGroup

fs2.io.net.SocketGroup
trait SocketGroup[F[_]]

Supports creation of client and server TCP sockets that all share an underlying non-blocking channel group.

Attributes

Source
SocketGroup.scala
Graph
Supertypes
class Object
trait Matchable
class Any
Known subtypes
trait Network[F]

Members list

Value members

Abstract methods

def client(to: SocketAddress[Host], options: List[SocketOption]): Resource[F, Socket[F]]

Opens a TCP connection to the specified server.

Opens a TCP connection to the specified server.

The connection is closed when the resource is released.

Value parameters

options

socket options to apply to the underlying socket

to

address of remote server

Attributes

Source
SocketGroup.scala
def server(address: Option[Host], port: Option[Port], options: List[SocketOption]): Stream[F, Socket[F]]

Creates a TCP server bound to specified address/port and returns a stream of client sockets -- one per client that connects to the bound address/port.

Creates a TCP server bound to specified address/port and returns a stream of client sockets -- one per client that connects to the bound address/port.

When the stream terminates, all open connections will terminate as well. Because of this, make sure to handle errors in the client socket Streams.

Value parameters

address

address to accept connections from; none for all interfaces

options

socket options to apply to the underlying socket

port

port to bind

Attributes

Source
SocketGroup.scala
def serverResource(address: Option[Host], port: Option[Port], options: List[SocketOption]): Resource[F, (SocketAddress[IpAddress], Stream[F, Socket[F]])]

Like server but provides the SocketAddress of the bound server socket before providing accepted sockets.

Like server but provides the SocketAddress of the bound server socket before providing accepted sockets.

Make sure to handle errors in the client socket Streams.

Attributes

Source
SocketGroup.scala