package net
- Alphabetic
- By Inheritance
- net
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Type Members
-
final
case class
Datagram(remote: SocketAddress[IpAddress], bytes: Chunk[Byte]) extends Product with Serializable
A single datagram to send to the specified remote address or received from the specified address.
A single datagram to send to the specified remote address or received from the specified address.
- remote
remote party to send/receive datagram to/from
- bytes
data to send/receive
-
trait
DatagramSocket[F[_]] extends AnyRef
Provides the ability to read/write from a UDP socket in the effect
F
. - trait DatagramSocketGroup[F[_]] extends AnyRef
-
sealed
trait
Network[F[_]] extends SocketGroup[F] with DatagramSocketGroup[F]
Provides the ability to work with TCP, UDP, and TLS.
Provides the ability to work with TCP, UDP, and TLS.
import fs2.Stream import fs2.io.net.{Datagram, Network} def send[F[_]: Network](datagram: Datagram): F[Unit] = Network[F].openDatagramSocket().use { socket => socket.write(packet) }
In this example, the
F[_]
parameter tosend
requires theNetwork
constraint instead of requiring the much more powerfulAsync
constraint. TheNetwork
instance has a set of global resources used for managing sockets. Alternatively, use thesocketGroup
anddatagramSocketGroup
operations to manage the lifecycle of underlying resources. An instance ofNetwork
is available for any effectF
which has anAsync[F]
instance.
Example: -
trait
Socket[F[_]] extends AnyRef
Provides the ability to read/write from a TCP socket in the effect
F
. -
trait
SocketGroup[F[_]] extends AnyRef
Supports creation of client and server TCP sockets that all share an underlying non-blocking channel group.
-
sealed
trait
SocketOption extends AnyRef
Specifies a socket option on a TCP/UDP socket.
Specifies a socket option on a TCP/UDP socket.
The companion provides methods for creating a socket option from each of the JDK java.net.StandardSocketOptions as well as the ability to construct arbitrary additional options. See the docs on
StandardSocketOptions
for details on each.