Socket class

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.

Implemented types
Implementers

Constructors

Socket()

Properties

address InternetAddress
Returns the InternetAddress used to connect this socket.
read-only
done Future
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.
read-only, override
port int
Returns the port used by this socket.
read-only
remoteAddress InternetAddress
Returns the remote InternetAddress connected to by this socket.
read-only
remotePort int
Returns the remote port connected to by this socket.
read-only
encoding Encoding
The Encoding used when writing strings. Depending on the underlying consumer this property might be mutable.
read / write, inherited
first Future<List<int>>
The first element of this 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>
Whether this stream contains any elements. [...]
read-only, inherited
last Future<List<int>>
The last element of this stream. [...]
read-only, inherited
length Future<int>
The number of elements in this stream. [...]
read-only, inherited
runtimeType Type
A representation of the runtime type of the object.
read-only, inherited
single Future<List<int>>
The single element of this stream. [...]
read-only, inherited

Methods

close() Future
Close the target consumer. [...]
override
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. [...]
setOption(SocketOption option, bool enabled) bool
Use setOption to customize the RawSocket. See SocketOption for available options. [...]
add(List<int> data) → void
Adds byte data to the target consumer, ignoring encoding. [...]
inherited
addError(Object error, [ StackTrace stackTrace ]) → void
Passes the error to the target consumer as an error event. [...]
inherited
addStream(Stream<List<int>> stream) Future
Adds all elements of the given stream to this. [...]
inherited
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<List<int>>
Returns a multi-subscription stream that produces the same events as this. [...]
inherited
asyncExpand<E>(Stream<E> convert(T event)) Stream<E>
Transforms each element into a sequence of asynchronous events. [...]
inherited
asyncMap<E>(FutureOr<E> convert(T event)) Stream<E>
Creates a new stream with each data event of this stream asynchronously mapped to a new event. [...]
inherited
cast<R>() Stream<R>
Adapt this stream to be a Stream<R>. [...]
inherited
contains(Object needle) Future<bool>
Returns whether needle occurs in the elements provided by this stream. [...]
inherited
distinct([bool equals(T previous, T next) ]) Stream<List<int>>
Skips data events if they are equal to the previous data event. [...]
inherited
drain<E>([E futureValue ]) Future<E>
Discards all data on this stream, but signals when it is done or an error occurred. [...]
inherited
elementAt(int index) Future<List<int>>
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 element)) Stream<S>
Transforms each element of this stream into a sequence of elements. [...]
inherited
firstWhere(bool test(T element), { List<int> orElse() }) Future<List<int>>
Finds the first element of this stream matching test. [...]
inherited
flush() Future
Returns a Future that completes once all buffered data is accepted by the underlying StreamConsumer. [...]
inherited
fold<S>(S initialValue, S combine(S previous, T element)) Future<S>
Combines a sequence of values by repeatedly applying combine. [...]
inherited
forEach(void action(T element)) Future
Executes action on each element of this stream. [...]
inherited
handleError(Function onError, { bool test(dynamic error) }) Stream<List<int>>
Creates a wrapper Stream that intercepts some errors from this stream. [...]
inherited
join([String separator = "" ]) Future<String>
Combines the string representation of elements into a single string. [...]
inherited
lastWhere(bool test(T element), { List<int> orElse() }) Future<List<int>>
Finds the last element in this stream matching test. [...]
inherited
listen(void onData(T event), { Function onError, void onDone(), bool cancelOnError }) StreamSubscription<List<int>>
Adds a subscription to this stream. [...]
inherited
map<S>(S convert(T event)) Stream<S>
Transforms each element of this stream into a new stream event. [...]
inherited
noSuchMethod(Invocation invocation) → dynamic
Invoked when a non-existent method or property is accessed. [...]
inherited
pipe(StreamConsumer<List<int>> streamConsumer) Future
Pipes the events of this stream into streamConsumer. [...]
inherited
reduce(List<int> combine(T previous, T element)) Future<List<int>>
Combines a sequence of values by repeatedly applying combine. [...]
inherited
singleWhere(bool test(T element), { List<int> orElse() }) Future<List<int>>
Finds the single element in this stream matching test. [...]
inherited
skip(int count) Stream<List<int>>
Skips the first count data events from this stream. [...]
inherited
skipWhile(bool test(T element)) Stream<List<int>>
Skip data events from this stream while they are matched by test. [...]
inherited
take(int count) Stream<List<int>>
Provides at most the first count data events of this stream. [...]
inherited
takeWhile(bool test(T element)) Stream<List<int>>
Forwards data events while test is successful. [...]
inherited
timeout(Duration timeLimit, { void onTimeout(EventSink<T> sink) }) Stream<List<int>>
Creates a new stream with the same events as this stream. [...]
inherited
toList() Future<List<List<int>>>
Collects all elements of this stream in a List. [...]
inherited
toSet() Future<Set<List<int>>>
Collects the data of this stream in a Set. [...]
inherited
toString() String
Returns a string representation of this object.
inherited
transform<S>(StreamTransformer<List<int>, S> streamTransformer) Stream<S>
Applies streamTransformer to this stream. [...]
inherited
where(bool test(T event)) Stream<List<int>>
Creates a new stream from this stream that discards some elements. [...]
inherited
write(Object obj) → void
Converts obj to a String by invoking Object.toString and adds the encoding of the result to the target consumer. [...]
inherited
writeAll(Iterable objects, [ String separator = "" ]) → void
Iterates over the given objects and writes them in sequence. [...]
inherited
writeCharCode(int charCode) → void
Writes the character of charCode. [...]
inherited
writeln([Object obj = "" ]) → void
Converts obj to a String by invoking Object.toString and writes the result to this, followed by a newline. [...]
inherited

Operators

operator ==(dynamic other) bool
The equality operator. [...]
inherited

Static Methods

connect(dynamic host, int port, { dynamic sourceAddress, Duration timeout }) 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. [...]
startConnect(dynamic host, int port, { dynamic sourceAddress }) Future<ConnectionTask<Socket>>
Like connect, but returns a Future that completes with a ConnectionTask that can be cancelled if the Socket is no longer needed.