Socket

trait Socket[F[_]]

Provides the ability to read/write from a UDP socket in the effect F.

Provides the ability to read/write from a UDP socket in the effect F.

To construct a Socket, use the methods in the fs2.io.udp package object.

class Object
trait Matchable
class Any
trait DTLSSocket[F]

Type members

Classlikes

Result of joining an any-source multicast group on a UDP socket.

Result of joining an any-source multicast group on a UDP socket.

Result of joining a multicast group on a UDP socket.

Result of joining a multicast group on a UDP socket.

Value members

Abstract methods

def close: F[Unit]

Closes this socket.

Closes this socket.

def join(group: InetAddress, interface: NetworkInterface): F[AnySourceGroupMembership]

Joins a multicast group on a specific network interface.

Joins a multicast group on a specific network interface.

Value Params
group

address of group to join

interface

network interface upon which to listen for datagrams

def join(group: InetAddress, interface: NetworkInterface, source: InetAddress): F[GroupMembership]

Joins a source specific multicast group on a specific network interface.

Joins a source specific multicast group on a specific network interface.

Value Params
group

address of group to join

interface

network interface upon which to listen for datagrams

source

limits received packets to those sent by the source

def localAddress: F[InetSocketAddress]

Returns the local address of this udp socket.

Returns the local address of this udp socket.

def read(timeout: Option[FiniteDuration]): F[Packet]

Reads a single packet from this udp socket.

Reads a single packet from this udp socket.

If timeout is specified, then resulting F will fail with java.nio.channels.InterruptedByTimeoutException if read was not satisfied in given timeout.

def reads(timeout: Option[FiniteDuration]): Stream[F, Packet]

Reads packets received from this udp socket.

Reads packets received from this udp socket.

Note that multiple reads may execute at same time, causing each evaluation to receive fair amount of messages.

If timeout is specified, then resulting stream will fail with java.nio.channels.InterruptedByTimeoutException if a read was not satisfied in given timeout.

Returns

stream of packets

def write(packet: Packet, timeout: Option[FiniteDuration]): F[Unit]

Write a single packet to this udp socket.

Write a single packet to this udp socket.

If timeout is specified, then resulting F will fail with java.nio.channels.InterruptedByTimeoutException if write was not completed in given timeout.

Value Params
packet

Packet to write

def writes(timeout: Option[FiniteDuration]): (F, Packet) => Unit

Writes supplied packets to this udp socket.

Writes supplied packets to this udp socket.

If timeout is specified, then resulting pipe will fail with java.nio.channels.InterruptedByTimeoutException if a write was not completed in given timeout.