The RawDatagramSocket is a low-level interface to an UDP socket, exposing the raw events signaled by the system. It's a Stream of RawSocketEvents.

Note that the event RawSocketEvent.READ_CLOSED will never be received as an UDP socket cannot be closed by a remote peer.

Inheritance

Static Methods

bind(host, int port, { bool reuseAddress: true }) Future<RawDatagramSocket>

Creates a new raw datagram socket binding it to an address and port.

Constructors

RawDatagramSocket()

Properties

address InternetAddress

Returns the address used by this socket.

read-only
broadcastEnabled bool

Set or get, whether IPv4 broadcast is enabled.

read / write
multicastHops int

Set or get, the maximum network hops for multicast packages originating from this socket.

read / write
multicastInterface NetworkInterface

Set or get, the network interface used for outgoing multicast packages.

read / write
multicastLoopback bool

Set or get, whether multicast traffic is looped back to the host.

read / write
port int

Returns the port used by this socket.

read-only
readEventsEnabled bool

Set or get, if the RawDatagramSocket should listen for RawSocketEvent.READ events. Default is true.

read / write
writeEventsEnabled bool

Set or get, if the RawDatagramSocket should listen for RawSocketEvent.WRITE events. Default is true. This is a one-shot listener, and writeEventsEnabled must be set to true again to receive another write event.

read / write
first Future<RawSocketEvent>

Returns the first element of the stream.

read-only, inherited
hashCode int

The hash code for this object.

read-only, inherited
isBroadcast bool

Whether this stream is a broadcast stream.

read-only, inherited
isEmpty Future<bool>

Reports whether this stream contains any elements.

read-only, inherited
last Future<RawSocketEvent>

Returns the last element of the stream.

read-only, inherited
length Future<int>

Counts the elements in the stream.

read-only, inherited
runtimeType Type

A representation of the runtime type of the object.

read-only, inherited
single Future<RawSocketEvent>

Returns the single element.

read-only, inherited

Operators

operator ==(other) bool

The equality operator.

inherited

Methods

close() → void

Close the datagram socket.

joinMulticast(InternetAddress group, [ NetworkInterface interface ]) → void

Join a multicast group.

leaveMulticast(InternetAddress group, [ NetworkInterface interface ]) → void

Leave a multicast group.

receive() Datagram

Receive a datagram. If there are no datagrams available null is returned.

send(List<int> buffer, InternetAddress address, int port) int

Send a datagram.

any(bool test(T element)) Future<bool>

Checks whether test accepts any element provided by this stream.

inherited
asBroadcastStream({void onListen(StreamSubscription<T> subscription), void onCancel(StreamSubscription<T> subscription) }) Stream<RawSocketEvent>

Returns a multi-subscription stream that produces the same events as this.

inherited
asyncExpand<E>(Stream<E> convert(T event)) Stream<E>

Creates a new stream with the events of a stream per original event.

inherited
asyncMap<E>(dynamic convert(T event)) Stream<E>

Creates a new stream with each data event of this stream asynchronously mapped to a new event.

inherited
contains(Object needle) Future<bool>

Checks whether needle occurs in the elements provided by this stream.

inherited
distinct([bool equals(T previous, T next) ]) Stream<RawSocketEvent>

Skips data events if they are equal to the previous data event.

inherited
drain<E>([E futureValue ]) Future<E>

Discards all data on the stream, but signals when it's done or an error occurred.

inherited
elementAt(int index) Future<RawSocketEvent>

Returns the value of the indexth data event of this stream.

inherited
every(bool test(T element)) Future<bool>

Checks whether test accepts all elements provided by this stream.

inherited
expand<S>(Iterable<S> convert(T value)) Stream<S>

Creates a new stream from this stream that converts each element into zero or more events.

inherited
firstWhere(bool test(T element), { Object defaultValue() }) Future

Finds the first element of this stream matching test.

inherited
fold<S>(S initialValue, S combine(S previous, T element)) Future<S>

Reduces a sequence of values by repeatedly applying combine.

inherited
forEach(void action(T element)) Future

Executes action on each data event of the stream.

inherited
handleError(Function onError, { bool test(error) }) Stream<RawSocketEvent>

Creates a wrapper Stream that intercepts some errors from this stream.

inherited
join([String separator = "" ]) Future<String>

Collects string of data events' string representations.

inherited
lastWhere(bool test(T element), { Object defaultValue() }) Future

Finds the last element in this stream matching test.

inherited
listen(void onData(T event), { Function onError, void onDone(), bool cancelOnError }) StreamSubscription<RawSocketEvent>

Adds a subscription to this stream.

inherited
map<S>(S convert(T event)) Stream<S>

Creates a new stream that converts each element of this stream to a new value using the convert function.

inherited
noSuchMethod(Invocation invocation) → dynamic

Invoked when a non-existent method or property is accessed.

inherited
pipe(StreamConsumer<RawSocketEvent> streamConsumer) Future

Pipe the events of this stream into streamConsumer.

inherited
reduce(RawSocketEvent combine(T previous, T element)) Future<RawSocketEvent>

Reduces a sequence of values by repeatedly applying combine.

inherited
singleWhere(bool test(T element)) Future<RawSocketEvent>

Finds the single element in this stream matching test.

inherited
skip(int count) Stream<RawSocketEvent>

Skips the first count data events from this stream.

inherited
skipWhile(bool test(T element)) Stream<RawSocketEvent>

Skip data events from this stream while they are matched by test.

inherited
take(int count) Stream<RawSocketEvent>

Provides at most the first count data events of this stream.

inherited
takeWhile(bool test(T element)) Stream<RawSocketEvent>

Forwards data events while test is successful.

inherited
timeout(Duration timeLimit, { void onTimeout(EventSink<T> sink) }) Stream<RawSocketEvent>

Creates a new stream with the same events as this stream.

inherited
toList() Future<List<RawSocketEvent>>

Collects the data of this stream in a List.

inherited
toSet() Future<Set<RawSocketEvent>>

Collects the data of this stream in a Set.

inherited
toString() String

Returns a string representation of this object.

inherited
transform<S>(StreamTransformer<RawSocketEvent, S> streamTransformer) Stream<S>

Chains this stream as the input of the provided StreamTransformer.

inherited
where(bool test(T event)) Stream<RawSocketEvent>

Creates a new stream from this stream that discards some data events.

inherited