Class DatagramSocket
- java.lang.Object
-
- io.vertx.reactivex.core.datagram.DatagramSocket
-
- All Implemented Interfaces:
Measured
,ReadStream<DatagramPacket>
,StreamBase
public class DatagramSocket extends Object implements ReadStream<DatagramPacket>, Measured
A datagram socket can be used to sendDatagramPacket
's to remote datagram servers and receiveDatagramPacket
s .Usually you use a datagram socket to send UDP over the wire. UDP is connection-less which means you are not connected to the remote peer in a persistent way. Because of this you have to supply the address and port of the remote peer when sending data.
You can send data to ipv4 or ipv6 addresses, which also include multicast addresses.
Please consult the documentation for more information on datagram sockets.
NOTE: This class has been automatically generated from theoriginal
non RX-ified interface using Vert.x codegen.
-
-
Field Summary
Fields Modifier and Type Field Description static TypeArg<DatagramSocket>
__TYPE_ARG
-
Constructor Summary
Constructors Constructor Description DatagramSocket(DatagramSocket delegate)
DatagramSocket(Object delegate)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description DatagramSocket
blockMulticastGroup(String multicastAddress, String sourceToBlock)
Block the given address for the given multicast address and notifies the once the operation completes.DatagramSocket
blockMulticastGroup(String multicastAddress, String sourceToBlock, Handler<AsyncResult<Void>> handler)
Block the given address for the given multicast address and notifies the once the operation completes.DatagramSocket
blockMulticastGroup(String multicastAddress, String networkInterface, String sourceToBlock)
Block the given address for the given multicast address on the given network interface and notifies the once the operation completes.DatagramSocket
blockMulticastGroup(String multicastAddress, String networkInterface, String sourceToBlock, Handler<AsyncResult<Void>> handler)
Block the given address for the given multicast address on the given network interface and notifies the once the operation completes.void
close()
Closes theDatagramSocket
implementation asynchronous and notifies the handler once done.void
close(Handler<AsyncResult<Void>> handler)
Closes theDatagramSocket
implementation asynchronous and notifies the handler once done.DatagramSocket
endHandler(Handler<Void> endHandler)
Deprecated.boolean
equals(Object o)
DatagramSocket
exceptionHandler(Handler<Throwable> handler)
Set an exception handler on the read stream.DatagramSocket
fetch(long amount)
Deprecated.DatagramSocket
getDelegate()
DatagramSocket
handler(Handler<DatagramPacket> handler)
Set a data handler.int
hashCode()
boolean
isMetricsEnabled()
Whether the metrics are enabled for this measured objectDatagramSocket
listen(int port, String host)
Start listening on the given port and host.DatagramSocket
listen(int port, String host, Handler<AsyncResult<DatagramSocket>> handler)
Start listening on the given port and host.DatagramSocket
listenMulticastGroup(String multicastAddress)
Joins a multicast group and listens for packets send to it.DatagramSocket
listenMulticastGroup(String multicastAddress, Handler<AsyncResult<Void>> handler)
Joins a multicast group and listens for packets send to it.DatagramSocket
listenMulticastGroup(String multicastAddress, String networkInterface, String source)
Joins a multicast group and listens for packets send to it on the given network interface.DatagramSocket
listenMulticastGroup(String multicastAddress, String networkInterface, String source, Handler<AsyncResult<Void>> handler)
Joins a multicast group and listens for packets send to it on the given network interface.SocketAddress
localAddress()
Return theSocketAddress
to which thisDatagramSocket
is bound.static DatagramSocket
newInstance(DatagramSocket arg)
DatagramSocket
pause()
Deprecated.Pipe<DatagramPacket>
pipe()
Pause this stream and return a to transfer the elements of this stream to a destination .void
pipeTo(WriteStream<DatagramPacket> dst)
Pipe thisReadStream
to theWriteStream
.void
pipeTo(WriteStream<DatagramPacket> dst, Handler<AsyncResult<Void>> handler)
Pipe thisReadStream
to theWriteStream
.DatagramSocket
resume()
Deprecated.io.reactivex.Completable
rxBlockMulticastGroup(String multicastAddress, String sourceToBlock)
Block the given address for the given multicast address and notifies the once the operation completes.io.reactivex.Completable
rxBlockMulticastGroup(String multicastAddress, String networkInterface, String sourceToBlock)
Block the given address for the given multicast address on the given network interface and notifies the once the operation completes.io.reactivex.Completable
rxClose()
Closes theDatagramSocket
implementation asynchronous and notifies the handler once done.io.reactivex.Single<DatagramSocket>
rxListen(int port, String host)
Start listening on the given port and host.io.reactivex.Completable
rxListenMulticastGroup(String multicastAddress)
Joins a multicast group and listens for packets send to it.io.reactivex.Completable
rxListenMulticastGroup(String multicastAddress, String networkInterface, String source)
Joins a multicast group and listens for packets send to it on the given network interface.io.reactivex.Completable
rxPipeTo(WriteStream<DatagramPacket> dst)
Pipe thisReadStream
to theWriteStream
.io.reactivex.Completable
rxSend(Buffer packet, int port, String host)
Write the givenBuffer
to theSocketAddress
.io.reactivex.Completable
rxSend(String str, int port, String host)
Write the givenString
to theSocketAddress
using UTF8 encoding.io.reactivex.Completable
rxSend(String str, String enc, int port, String host)
Write the givenString
to theSocketAddress
using the given encoding.io.reactivex.Completable
rxUnlistenMulticastGroup(String multicastAddress)
Leaves a multicast group and stops listening for packets send to it.io.reactivex.Completable
rxUnlistenMulticastGroup(String multicastAddress, String networkInterface, String source)
Leaves a multicast group and stops listening for packets send to it on the given network interface.DatagramSocket
send(Buffer packet, int port, String host)
Write the givenBuffer
to theSocketAddress
.DatagramSocket
send(Buffer packet, int port, String host, Handler<AsyncResult<Void>> handler)
Write the givenBuffer
to theSocketAddress
.DatagramSocket
send(String str, int port, String host)
Write the givenString
to theSocketAddress
using UTF8 encoding.DatagramSocket
send(String str, int port, String host, Handler<AsyncResult<Void>> handler)
Write the givenString
to theSocketAddress
using UTF8 encoding.DatagramSocket
send(String str, String enc, int port, String host)
Write the givenString
to theSocketAddress
using the given encoding.DatagramSocket
send(String str, String enc, int port, String host, Handler<AsyncResult<Void>> handler)
Write the givenString
to theSocketAddress
using the given encoding.WriteStream<Buffer>
sender(int port, String host)
Returns aWriteStream
able to send to theSocketAddress
.io.reactivex.Flowable<DatagramPacket>
toFlowable()
io.reactivex.Observable<DatagramPacket>
toObservable()
String
toString()
DatagramSocket
unlistenMulticastGroup(String multicastAddress)
Leaves a multicast group and stops listening for packets send to it.DatagramSocket
unlistenMulticastGroup(String multicastAddress, Handler<AsyncResult<Void>> handler)
Leaves a multicast group and stops listening for packets send to it.DatagramSocket
unlistenMulticastGroup(String multicastAddress, String networkInterface, String source)
Leaves a multicast group and stops listening for packets send to it on the given network interface.DatagramSocket
unlistenMulticastGroup(String multicastAddress, String networkInterface, String source, Handler<AsyncResult<Void>> handler)
Leaves a multicast group and stops listening for packets send to it on the given network interface.
-
-
-
Field Detail
-
__TYPE_ARG
public static final TypeArg<DatagramSocket> __TYPE_ARG
-
-
Constructor Detail
-
DatagramSocket
public DatagramSocket(DatagramSocket delegate)
-
DatagramSocket
public DatagramSocket(Object delegate)
-
-
Method Detail
-
getDelegate
public DatagramSocket getDelegate()
- Specified by:
getDelegate
in interfaceMeasured
- Specified by:
getDelegate
in interfaceReadStream<DatagramPacket>
- Specified by:
getDelegate
in interfaceStreamBase
-
toObservable
public io.reactivex.Observable<DatagramPacket> toObservable()
- Specified by:
toObservable
in interfaceReadStream<DatagramPacket>
-
toFlowable
public io.reactivex.Flowable<DatagramPacket> toFlowable()
- Specified by:
toFlowable
in interfaceReadStream<DatagramPacket>
-
isMetricsEnabled
public boolean isMetricsEnabled()
Whether the metrics are enabled for this measured object- Specified by:
isMetricsEnabled
in interfaceMeasured
- Returns:
true
if metrics are enabled
-
pipe
public Pipe<DatagramPacket> pipe()
Pause this stream and return a to transfer the elements of this stream to a destination . The stream will be resumed when the pipe will be wired to aWriteStream
.- Specified by:
pipe
in interfaceReadStream<DatagramPacket>
- Returns:
- a pipe
-
pipeTo
public void pipeTo(WriteStream<DatagramPacket> dst, Handler<AsyncResult<Void>> handler)
Pipe thisReadStream
to theWriteStream
.Elements emitted by this stream will be written to the write stream until this stream ends or fails.
Once this stream has ended or failed, the write stream will be ended and the
handler
will be called with the result.- Specified by:
pipeTo
in interfaceReadStream<DatagramPacket>
- Parameters:
dst
- the destination write streamhandler
-
-
pipeTo
public void pipeTo(WriteStream<DatagramPacket> dst)
Pipe thisReadStream
to theWriteStream
.Elements emitted by this stream will be written to the write stream until this stream ends or fails.
Once this stream has ended or failed, the write stream will be ended and the
handler
will be called with the result.- Specified by:
pipeTo
in interfaceReadStream<DatagramPacket>
- Parameters:
dst
- the destination write stream
-
rxPipeTo
public io.reactivex.Completable rxPipeTo(WriteStream<DatagramPacket> dst)
Pipe thisReadStream
to theWriteStream
.Elements emitted by this stream will be written to the write stream until this stream ends or fails.
Once this stream has ended or failed, the write stream will be ended and the
handler
will be called with the result.- Specified by:
rxPipeTo
in interfaceReadStream<DatagramPacket>
- Parameters:
dst
- the destination write stream- Returns:
-
send
public DatagramSocket send(Buffer packet, int port, String host, Handler<AsyncResult<Void>> handler)
-
send
public DatagramSocket send(Buffer packet, int port, String host)
- Parameters:
packet
- theBuffer
to writeport
- the host port of the remote peerhost
- the host address of the remote peer- Returns:
- a reference to this, so the API can be used fluently
-
rxSend
public io.reactivex.Completable rxSend(Buffer packet, int port, String host)
- Parameters:
packet
- theBuffer
to writeport
- the host port of the remote peerhost
- the host address of the remote peer- Returns:
- a reference to this, so the API can be used fluently
-
sender
public WriteStream<Buffer> sender(int port, String host)
Returns aWriteStream
able to send to theSocketAddress
.- Parameters:
port
- the port of the remote peerhost
- the host address of the remote peer- Returns:
- the write stream for sending packets
-
send
public DatagramSocket send(String str, int port, String host, Handler<AsyncResult<Void>> handler)
Write the givenString
to theSocketAddress
using UTF8 encoding. The will be notified once the write completes.
-
send
public DatagramSocket send(String str, int port, String host)
Write the givenString
to theSocketAddress
using UTF8 encoding. The will be notified once the write completes.- Parameters:
str
- theString
to writeport
- the host port of the remote peerhost
- the host address of the remote peer- Returns:
- a reference to this, so the API can be used fluently
-
rxSend
public io.reactivex.Completable rxSend(String str, int port, String host)
Write the givenString
to theSocketAddress
using UTF8 encoding. The will be notified once the write completes.- Parameters:
str
- theString
to writeport
- the host port of the remote peerhost
- the host address of the remote peer- Returns:
- a reference to this, so the API can be used fluently
-
send
public DatagramSocket send(String str, String enc, int port, String host, Handler<AsyncResult<Void>> handler)
Write the givenString
to theSocketAddress
using the given encoding. The will be notified once the write completes.
-
send
public DatagramSocket send(String str, String enc, int port, String host)
Write the givenString
to theSocketAddress
using the given encoding. The will be notified once the write completes.- Parameters:
str
- theString
to writeenc
- the charset used for encodingport
- the host port of the remote peerhost
- the host address of the remote peer- Returns:
- a reference to this, so the API can be used fluently
-
rxSend
public io.reactivex.Completable rxSend(String str, String enc, int port, String host)
Write the givenString
to theSocketAddress
using the given encoding. The will be notified once the write completes.- Parameters:
str
- theString
to writeenc
- the charset used for encodingport
- the host port of the remote peerhost
- the host address of the remote peer- Returns:
- a reference to this, so the API can be used fluently
-
close
public void close(Handler<AsyncResult<Void>> handler)
Closes theDatagramSocket
implementation asynchronous and notifies the handler once done.- Parameters:
handler
- the handler to notify once complete
-
close
public void close()
Closes theDatagramSocket
implementation asynchronous and notifies the handler once done.
-
rxClose
public io.reactivex.Completable rxClose()
Closes theDatagramSocket
implementation asynchronous and notifies the handler once done.- Returns:
-
localAddress
public SocketAddress localAddress()
Return theSocketAddress
to which thisDatagramSocket
is bound.- Returns:
- the socket address
-
listenMulticastGroup
public DatagramSocket listenMulticastGroup(String multicastAddress, Handler<AsyncResult<Void>> handler)
Joins a multicast group and listens for packets send to it. The is notified once the operation completes.- Parameters:
multicastAddress
- the address of the multicast group to joinhandler
- then handler to notify once the operation completes- Returns:
- a reference to this, so the API can be used fluently
-
listenMulticastGroup
public DatagramSocket listenMulticastGroup(String multicastAddress)
Joins a multicast group and listens for packets send to it. The is notified once the operation completes.- Parameters:
multicastAddress
- the address of the multicast group to join- Returns:
- a reference to this, so the API can be used fluently
-
rxListenMulticastGroup
public io.reactivex.Completable rxListenMulticastGroup(String multicastAddress)
Joins a multicast group and listens for packets send to it. The is notified once the operation completes.- Parameters:
multicastAddress
- the address of the multicast group to join- Returns:
- a reference to this, so the API can be used fluently
-
listenMulticastGroup
public DatagramSocket listenMulticastGroup(String multicastAddress, String networkInterface, String source, Handler<AsyncResult<Void>> handler)
Joins a multicast group and listens for packets send to it on the given network interface. The is notified once the operation completes.- Parameters:
multicastAddress
- the address of the multicast group to joinnetworkInterface
- the network interface on which to listen for packets.source
- the address of the source for which we will listen for multicast packetshandler
- then handler to notify once the operation completes- Returns:
- a reference to this, so the API can be used fluently
-
listenMulticastGroup
public DatagramSocket listenMulticastGroup(String multicastAddress, String networkInterface, String source)
Joins a multicast group and listens for packets send to it on the given network interface. The is notified once the operation completes.- Parameters:
multicastAddress
- the address of the multicast group to joinnetworkInterface
- the network interface on which to listen for packets.source
- the address of the source for which we will listen for multicast packets- Returns:
- a reference to this, so the API can be used fluently
-
rxListenMulticastGroup
public io.reactivex.Completable rxListenMulticastGroup(String multicastAddress, String networkInterface, String source)
Joins a multicast group and listens for packets send to it on the given network interface. The is notified once the operation completes.- Parameters:
multicastAddress
- the address of the multicast group to joinnetworkInterface
- the network interface on which to listen for packets.source
- the address of the source for which we will listen for multicast packets- Returns:
- a reference to this, so the API can be used fluently
-
unlistenMulticastGroup
public DatagramSocket unlistenMulticastGroup(String multicastAddress, Handler<AsyncResult<Void>> handler)
Leaves a multicast group and stops listening for packets send to it. The is notified once the operation completes.- Parameters:
multicastAddress
- the address of the multicast group to leavehandler
- then handler to notify once the operation completes- Returns:
- a reference to this, so the API can be used fluently
-
unlistenMulticastGroup
public DatagramSocket unlistenMulticastGroup(String multicastAddress)
Leaves a multicast group and stops listening for packets send to it. The is notified once the operation completes.- Parameters:
multicastAddress
- the address of the multicast group to leave- Returns:
- a reference to this, so the API can be used fluently
-
rxUnlistenMulticastGroup
public io.reactivex.Completable rxUnlistenMulticastGroup(String multicastAddress)
Leaves a multicast group and stops listening for packets send to it. The is notified once the operation completes.- Parameters:
multicastAddress
- the address of the multicast group to leave- Returns:
- a reference to this, so the API can be used fluently
-
unlistenMulticastGroup
public DatagramSocket unlistenMulticastGroup(String multicastAddress, String networkInterface, String source, Handler<AsyncResult<Void>> handler)
Leaves a multicast group and stops listening for packets send to it on the given network interface. The is notified once the operation completes.- Parameters:
multicastAddress
- the address of the multicast group to joinnetworkInterface
- the network interface on which to listen for packets.source
- the address of the source for which we will listen for multicast packetshandler
- the handler to notify once the operation completes- Returns:
- a reference to this, so the API can be used fluently
-
unlistenMulticastGroup
public DatagramSocket unlistenMulticastGroup(String multicastAddress, String networkInterface, String source)
Leaves a multicast group and stops listening for packets send to it on the given network interface. The is notified once the operation completes.- Parameters:
multicastAddress
- the address of the multicast group to joinnetworkInterface
- the network interface on which to listen for packets.source
- the address of the source for which we will listen for multicast packets- Returns:
- a reference to this, so the API can be used fluently
-
rxUnlistenMulticastGroup
public io.reactivex.Completable rxUnlistenMulticastGroup(String multicastAddress, String networkInterface, String source)
Leaves a multicast group and stops listening for packets send to it on the given network interface. The is notified once the operation completes.- Parameters:
multicastAddress
- the address of the multicast group to joinnetworkInterface
- the network interface on which to listen for packets.source
- the address of the source for which we will listen for multicast packets- Returns:
- a reference to this, so the API can be used fluently
-
blockMulticastGroup
public DatagramSocket blockMulticastGroup(String multicastAddress, String sourceToBlock, Handler<AsyncResult<Void>> handler)
Block the given address for the given multicast address and notifies the once the operation completes.- Parameters:
multicastAddress
- the address for which you want to block the source addresssourceToBlock
- the source address which should be blocked. You will not receive an multicast packets for it anymore.handler
- the handler to notify once the operation completes- Returns:
- a reference to this, so the API can be used fluently
-
blockMulticastGroup
public DatagramSocket blockMulticastGroup(String multicastAddress, String sourceToBlock)
Block the given address for the given multicast address and notifies the once the operation completes.- Parameters:
multicastAddress
- the address for which you want to block the source addresssourceToBlock
- the source address which should be blocked. You will not receive an multicast packets for it anymore.- Returns:
- a reference to this, so the API can be used fluently
-
rxBlockMulticastGroup
public io.reactivex.Completable rxBlockMulticastGroup(String multicastAddress, String sourceToBlock)
Block the given address for the given multicast address and notifies the once the operation completes.- Parameters:
multicastAddress
- the address for which you want to block the source addresssourceToBlock
- the source address which should be blocked. You will not receive an multicast packets for it anymore.- Returns:
- a reference to this, so the API can be used fluently
-
blockMulticastGroup
public DatagramSocket blockMulticastGroup(String multicastAddress, String networkInterface, String sourceToBlock, Handler<AsyncResult<Void>> handler)
Block the given address for the given multicast address on the given network interface and notifies the once the operation completes.- Parameters:
multicastAddress
- the address for which you want to block the source addressnetworkInterface
- the network interface on which the blocking should occur.sourceToBlock
- the source address which should be blocked. You will not receive an multicast packets for it anymore.handler
- the handler to notify once the operation completes- Returns:
- a reference to this, so the API can be used fluently
-
blockMulticastGroup
public DatagramSocket blockMulticastGroup(String multicastAddress, String networkInterface, String sourceToBlock)
Block the given address for the given multicast address on the given network interface and notifies the once the operation completes.- Parameters:
multicastAddress
- the address for which you want to block the source addressnetworkInterface
- the network interface on which the blocking should occur.sourceToBlock
- the source address which should be blocked. You will not receive an multicast packets for it anymore.- Returns:
- a reference to this, so the API can be used fluently
-
rxBlockMulticastGroup
public io.reactivex.Completable rxBlockMulticastGroup(String multicastAddress, String networkInterface, String sourceToBlock)
Block the given address for the given multicast address on the given network interface and notifies the once the operation completes.- Parameters:
multicastAddress
- the address for which you want to block the source addressnetworkInterface
- the network interface on which the blocking should occur.sourceToBlock
- the source address which should be blocked. You will not receive an multicast packets for it anymore.- Returns:
- a reference to this, so the API can be used fluently
-
listen
public DatagramSocket listen(int port, String host, Handler<AsyncResult<DatagramSocket>> handler)
Start listening on the given port and host. The handler will be called when the socket is listening.- Parameters:
port
- the port to listen onhost
- the host to listen onhandler
- the handler will be called when listening- Returns:
- a reference to this, so the API can be used fluently
-
listen
public DatagramSocket listen(int port, String host)
Start listening on the given port and host. The handler will be called when the socket is listening.- Parameters:
port
- the port to listen onhost
- the host to listen on- Returns:
- a reference to this, so the API can be used fluently
-
rxListen
public io.reactivex.Single<DatagramSocket> rxListen(int port, String host)
Start listening on the given port and host. The handler will be called when the socket is listening.- Parameters:
port
- the port to listen onhost
- the host to listen on- Returns:
- a reference to this, so the API can be used fluently
-
pause
@Deprecated public DatagramSocket pause()
Deprecated.Description copied from interface:ReadStream
Pause theReadStream
, it sets the buffer infetch
mode and clears the actual demand.While it's paused, no data will be sent to the data
handler
.- Specified by:
pause
in interfaceReadStream<DatagramPacket>
- Returns:
-
resume
@Deprecated public DatagramSocket resume()
Deprecated.Description copied from interface:ReadStream
Resume reading, and sets the buffer inflowing
mode. If theReadStream
has been paused, reading will recommence on it.- Specified by:
resume
in interfaceReadStream<DatagramPacket>
- Returns:
-
fetch
@Deprecated public DatagramSocket fetch(long amount)
Deprecated.Description copied from interface:ReadStream
Fetch the specifiedamount
of elements. If theReadStream
has been paused, reading will recommence with the specifiedamount
of items, otherwise the specifiedamount
will be added to the current stream demand.- Specified by:
fetch
in interfaceReadStream<DatagramPacket>
- Parameters:
amount
-- Returns:
-
endHandler
@Deprecated public DatagramSocket endHandler(Handler<Void> endHandler)
Deprecated.Description copied from interface:ReadStream
Set an end handler. Once the stream has ended, and there is no more data to be read, this handler will be called.- Specified by:
endHandler
in interfaceReadStream<DatagramPacket>
- Parameters:
endHandler
-- Returns:
-
handler
public DatagramSocket handler(Handler<DatagramPacket> handler)
Description copied from interface:ReadStream
Set a data handler. As data is read, the handler will be called with the data.- Specified by:
handler
in interfaceReadStream<DatagramPacket>
- Returns:
- a reference to this, so the API can be used fluently
-
exceptionHandler
public DatagramSocket exceptionHandler(Handler<Throwable> handler)
Description copied from interface:ReadStream
Set an exception handler on the read stream.- Specified by:
exceptionHandler
in interfaceReadStream<DatagramPacket>
- Specified by:
exceptionHandler
in interfaceStreamBase
- Parameters:
handler
- the exception handler- Returns:
- a reference to this, so the API can be used fluently
-
newInstance
public static DatagramSocket newInstance(DatagramSocket arg)
-
-