Package org.zeromq
Class ZBeacon
- java.lang.Object
-
- org.zeromq.ZBeacon
-
public class ZBeacon extends java.lang.Object
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description private class
ZBeacon.BroadcastClient
The broadcast client periodically sends beacons via UDP to the network.private class
ZBeacon.BroadcastServer
The broadcast server receives beacons.static class
ZBeacon.Builder
static interface
ZBeacon.Listener
All beacons with matching prefix are passed to a listener.
-
Field Summary
Fields Modifier and Type Field Description private java.util.concurrent.atomic.AtomicReference<byte[]>
beacon
private ZBeacon.BroadcastClient
broadcastClient
private java.util.concurrent.atomic.AtomicLong
broadcastInterval
private ZBeacon.BroadcastServer
broadcastServer
private java.util.concurrent.atomic.AtomicReference<java.lang.Thread.UncaughtExceptionHandler>
clientHandler
private static byte[]
DEFAULT_BROADCAST_ADDRESS
static java.lang.String
DEFAULT_BROADCAST_HOST
static long
DEFAULT_BROADCAST_INTERVAL
private java.util.concurrent.atomic.AtomicReference<ZBeacon.Listener>
listener
private java.util.concurrent.atomic.AtomicReference<byte[]>
prefix
private java.util.concurrent.atomic.AtomicReference<java.lang.Thread.UncaughtExceptionHandler>
serverHandler
-
Constructor Summary
Constructors Constructor Description ZBeacon(int port, byte[] beacon)
ZBeacon(java.lang.String broadcastAddress, byte[] serverAddress, int port, byte[] beacon, long broadcastInterval, boolean ignoreLocalAddress, boolean blocking)
ZBeacon(java.lang.String host, int port, byte[] beacon)
ZBeacon(java.lang.String host, int port, byte[] beacon, boolean ignoreLocalAddress)
ZBeacon(java.lang.String host, int port, byte[] beacon, boolean ignoreLocalAddress, boolean blocking)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description byte[]
getBeacon()
long
getBroadcastInterval()
ZBeacon.Listener
getListener()
byte[]
getPrefix()
void
setBeacon(byte[] beacon)
void
setBroadcastInterval(long broadcastInterval)
void
setListener(ZBeacon.Listener listener)
void
setPrefix(byte[] prefix)
void
setUncaughtExceptionHandlers(java.lang.Thread.UncaughtExceptionHandler clientHandler, java.lang.Thread.UncaughtExceptionHandler serverHandler)
void
start()
void
startClient()
void
startServer()
void
stop()
-
-
-
Field Detail
-
DEFAULT_BROADCAST_INTERVAL
public static final long DEFAULT_BROADCAST_INTERVAL
- See Also:
- Constant Field Values
-
DEFAULT_BROADCAST_HOST
public static final java.lang.String DEFAULT_BROADCAST_HOST
- See Also:
- Constant Field Values
-
DEFAULT_BROADCAST_ADDRESS
private static final byte[] DEFAULT_BROADCAST_ADDRESS
-
broadcastClient
private final ZBeacon.BroadcastClient broadcastClient
-
broadcastServer
private final ZBeacon.BroadcastServer broadcastServer
-
prefix
private final java.util.concurrent.atomic.AtomicReference<byte[]> prefix
-
beacon
private final java.util.concurrent.atomic.AtomicReference<byte[]> beacon
-
broadcastInterval
private final java.util.concurrent.atomic.AtomicLong broadcastInterval
-
listener
private final java.util.concurrent.atomic.AtomicReference<ZBeacon.Listener> listener
-
clientHandler
private java.util.concurrent.atomic.AtomicReference<java.lang.Thread.UncaughtExceptionHandler> clientHandler
-
serverHandler
private java.util.concurrent.atomic.AtomicReference<java.lang.Thread.UncaughtExceptionHandler> serverHandler
-
-
Constructor Detail
-
ZBeacon
public ZBeacon(int port, byte[] beacon)
-
ZBeacon
public ZBeacon(java.lang.String host, int port, byte[] beacon)
-
ZBeacon
public ZBeacon(java.lang.String host, int port, byte[] beacon, boolean ignoreLocalAddress)
-
ZBeacon
public ZBeacon(java.lang.String host, int port, byte[] beacon, boolean ignoreLocalAddress, boolean blocking)
-
ZBeacon
public ZBeacon(java.lang.String broadcastAddress, byte[] serverAddress, int port, byte[] beacon, long broadcastInterval, boolean ignoreLocalAddress, boolean blocking)
-
-
Method Detail
-
setUncaughtExceptionHandlers
public void setUncaughtExceptionHandlers(java.lang.Thread.UncaughtExceptionHandler clientHandler, java.lang.Thread.UncaughtExceptionHandler serverHandler)
-
startClient
public void startClient()
-
startServer
public void startServer()
-
start
public void start()
-
stop
public void stop() throws java.lang.InterruptedException
- Throws:
java.lang.InterruptedException
-
setBeacon
public void setBeacon(byte[] beacon)
-
getBeacon
public byte[] getBeacon()
-
setPrefix
public void setPrefix(byte[] prefix)
-
getPrefix
public byte[] getPrefix()
-
setListener
public void setListener(ZBeacon.Listener listener)
-
getListener
public ZBeacon.Listener getListener()
-
getBroadcastInterval
public long getBroadcastInterval()
-
setBroadcastInterval
public void setBroadcastInterval(long broadcastInterval)
-
-