A high-level class for communicating over a TCP socket.

The Socket exposes both a Stream and a IOSink interface, making it ideal for using together with other Streams.

Implements
Implemented by

Static Methods

connect(host, int port, {sourceAddress}) → Future<Socket>
Creates a new socket connection to the host and port and returns a Future that will complete with either a Socket once connected or an error if the host-lookup or connection failed.

Properties

InternetAddress address
read-only
Returns the InternetAddress used to connect this socket.
Future done
read-only, inherited
Get a future that will complete when the consumer closes, or when an error occurs. This future is identical to the future returned by close.
Encoding encoding
read / write, inherited
The Encoding used when writing strings. Depending on the underlying consumer this property might be mutable. /
Future<List<int>> first
read-only, inherited
Returns the first element of the stream.
bool isBroadcast
read-only, inherited
Reports whether this stream is a broadcast stream.
Future<bool> isEmpty
read-only, inherited
Reports whether this stream contains any elements.
Future<List<int>> last
read-only, inherited
Returns the last element of the stream.
Future<int> length
read-only, inherited
Counts the elements in the stream.
int port
read-only
Returns the port used by this socket.
InternetAddress remoteAddress
read-only
Returns the remote InternetAddress connected to by this socket.
int remotePort
read-only
Returns the remote port connected to by this socket.
Future<List<int>> single
read-only, inherited
Returns the single element.

Constructors

Socket()

Methods

add(List<int> data) → void
inherited
Adds data to the target consumer, ignoring encoding.
addError(error, [StackTrace stackTrace]) → void
inherited
Passes the error to the target consumer as an error event.
addStream(Stream<List<int>> stream) → Future
inherited
Adds all elements of the given stream to this.
any(bool test(T element)) → Future<bool>
inherited
Checks whether test accepts any element provided by this stream.
asBroadcastStream({void onListen(StreamSubscription<T> subscription), void onCancel(StreamSubscription<T> subscription)}) → Stream<List<int>>
inherited
Returns a multi-subscription stream that produces the same events as this.
asyncExpand(Stream convert(T event)) → Stream
inherited
Creates a new stream with the events of a stream per original event.
asyncMap(dynamic convert(T event)) → Stream
inherited
Creates a new stream with each data event of this stream asynchronously mapped to a new event.
close() → Future
inherited
Close the target consumer.
contains(Object needle) → Future<bool>
inherited
Checks whether needle occurs in the elements provided by this stream.
destroy() → void
Destroy the socket in both directions. Calling destroy will make the send a close event on the stream and will no longer react on data being piped to it.
distinct([bool equals(T previous, T next)]) → Stream<List<int>>
inherited
Skips data events if they are equal to the previous data event.
drain([futureValue]) → Future
inherited
Discards all data on the stream, but signals when it's done or an error occured.
elementAt(int index) → Future<List<int>>
inherited
Returns the value of the indexth data event of this stream.
every(bool test(T element)) → Future<bool>
inherited
Checks whether test accepts all elements provided by this stream.
expand(Iterable convert(T value)) → Stream
inherited
Creates a new stream from this stream that converts each element into zero or more events.
firstWhere(bool test(T element), {Object defaultValue()}) → Future
inherited
Finds the first element of this stream matching test.
flush() → Future
inherited
Returns a Future that completes once all buffered data is accepted by the to underlying StreamConsumer.
fold(initialValue, dynamic combine(previous, T element)) → Future
inherited
Reduces a sequence of values by repeatedly applying combine.
forEach(void action(T element)) → Future
inherited
Executes action on each data event of the stream.
handleError(Function onError, {bool test(error)}) → Stream<List<int>>
inherited
Creates a wrapper Stream that intercepts some errors from this stream.
join([String separator = ""]) → Future<String>
inherited
Collects string of data events' string representations.
lastWhere(bool test(T element), {Object defaultValue()}) → Future
inherited
Finds the last element in this stream matching test.
listen(void onData(T event), {Function onError, void onDone(), bool cancelOnError}) → StreamSubscription<List<int>>
inherited
Adds a subscription to this stream.
map(dynamic convert(T event)) → Stream
inherited
Creates a new stream that converts each element of this stream to a new value using the convert function.
pipe(StreamConsumer<List<int>> streamConsumer) → Future
inherited
Pipe the events of this stream into streamConsumer.
reduce(T combine(T previous, T element)) → Future<List<int>>
inherited
Reduces a sequence of values by repeatedly applying combine.
setOption(SocketOption option, bool enabled) → bool
Use setOption to customize the RawSocket. See SocketOption for available options.
singleWhere(bool test(T element)) → Future<List<int>>
inherited
Finds the single element in this stream matching test.
skip(int count) → Stream<List<int>>
inherited
Skips the first count data events from this stream.
skipWhile(bool test(T element)) → Stream<List<int>>
inherited
Skip data events from this stream while they are matched by test.
take(int count) → Stream<List<int>>
inherited
Provides at most the first n values of this stream.
takeWhile(bool test(T element)) → Stream<List<int>>
inherited
Forwards data events while test is successful.
timeout(Duration timeLimit, {void onTimeout(EventSink sink)}) → Stream
inherited
Creates a new stream with the same events as this stream.
toList() → Future<List<List<int>>>
inherited
Collects the data of this stream in a List.
toSet() → Future<Set<List<int>>>
inherited
Collects the data of this stream in a Set.
transform(StreamTransformer<List<int>> streamTransformer) → Stream
inherited
Chains this stream as the input of the provided StreamTransformer.
where(bool test(T event)) → Stream<List<int>>
inherited
Creates a new stream from this stream that discards some data events.
write(Object obj) → void
inherited
Converts obj to a String by invoking Object.toString and adds the encoding of the result to the target consumer.
writeAll(Iterable objects, [String separator = ""]) → void
inherited
Iterates over the given objects and writes them in sequence.
writeCharCode(int charCode) → void
inherited
Writes the charCode to this.
writeln([Object obj = ""]) → void
inherited
Converts obj to a String by invoking Object.toString and writes the result to this, followed by a newline.