public class ZBeacon
extends java.lang.Object
Modifier and Type | Class and 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.
|
Modifier and Type | Field and 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> |
clientExHandler |
private static java.net.InetAddress |
DEFAULT_BROADCAST_ADDRESS |
static java.lang.String |
DEFAULT_BROADCAST_HOST |
private static java.net.InetAddress |
DEFAULT_BROADCAST_HOST_ADDRESS |
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> |
serverExHandler |
Constructor and Description |
---|
ZBeacon(java.net.InetAddress broadcastAddress,
java.net.InetAddress serverAddress,
int port,
byte[] beacon,
long broadcastInterval,
boolean ignoreLocalAddress,
boolean blocking) |
ZBeacon(int port,
byte[] beacon) |
ZBeacon(java.lang.String broadcastAddress,
byte[] serverAddress,
int port,
byte[] beacon,
long broadcastInterval,
boolean ignoreLocalAddress,
boolean blocking)
Deprecated.
|
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) |
Modifier and Type | Method and Description |
---|---|
byte[] |
getBeacon() |
long |
getBroadcastInterval() |
ZBeacon.Listener |
getListener() |
byte[] |
getPrefix() |
void |
setBeacon(byte[] beacon)
Deprecated.
use the builder
|
void |
setBroadcastInterval(long broadcastInterval) |
void |
setListener(ZBeacon.Listener listener)
Deprecated.
use the builder
|
void |
setPrefix(byte[] prefix)
Deprecated.
use the builder
|
void |
setUncaughtExceptionHandlers(java.lang.Thread.UncaughtExceptionHandler clientExHandler,
java.lang.Thread.UncaughtExceptionHandler serverExHandler)
Deprecated.
use the builder
|
void |
start() |
void |
startClient() |
void |
startServer() |
void |
stop() |
public static final long DEFAULT_BROADCAST_INTERVAL
public static final java.lang.String DEFAULT_BROADCAST_HOST
private static final java.net.InetAddress DEFAULT_BROADCAST_HOST_ADDRESS
private static final java.net.InetAddress DEFAULT_BROADCAST_ADDRESS
private final ZBeacon.BroadcastClient broadcastClient
private final ZBeacon.BroadcastServer broadcastServer
private final java.util.concurrent.atomic.AtomicReference<byte[]> prefix
private final java.util.concurrent.atomic.AtomicReference<byte[]> beacon
private final java.util.concurrent.atomic.AtomicLong broadcastInterval
private final java.util.concurrent.atomic.AtomicReference<ZBeacon.Listener> listener
private final java.util.concurrent.atomic.AtomicReference<java.lang.Thread.UncaughtExceptionHandler> clientExHandler
private final java.util.concurrent.atomic.AtomicReference<java.lang.Thread.UncaughtExceptionHandler> serverExHandler
public ZBeacon(int port, byte[] beacon)
public ZBeacon(java.lang.String host, int port, byte[] beacon)
public ZBeacon(java.lang.String host, int port, byte[] beacon, boolean ignoreLocalAddress)
public ZBeacon(java.lang.String host, int port, byte[] beacon, boolean ignoreLocalAddress, boolean blocking)
public ZBeacon(java.net.InetAddress broadcastAddress, java.net.InetAddress serverAddress, int port, byte[] beacon, long broadcastInterval, boolean ignoreLocalAddress, boolean blocking)
@Deprecated public ZBeacon(java.lang.String broadcastAddress, byte[] serverAddress, int port, byte[] beacon, long broadcastInterval, boolean ignoreLocalAddress, boolean blocking)
@Deprecated public void setUncaughtExceptionHandlers(java.lang.Thread.UncaughtExceptionHandler clientExHandler, java.lang.Thread.UncaughtExceptionHandler serverExHandler)
clientExHandler
- serverExHandler
- public void startClient()
public void startServer()
public void start()
public void stop() throws java.lang.InterruptedException
java.lang.InterruptedException
@Deprecated public void setBeacon(byte[] beacon)
beacon
- public byte[] getBeacon()
@Deprecated public void setPrefix(byte[] prefix)
prefix
- public byte[] getPrefix()
@Deprecated public void setListener(ZBeacon.Listener listener)
listener
- public ZBeacon.Listener getListener()
public long getBroadcastInterval()
public void setBroadcastInterval(long broadcastInterval)