[lutron] Add debug logging in leapbridge (#9554)
Signed-off-by: Bob Adair <bob.github@att.net>
This commit is contained in:
parent
cb32068637
commit
1cc6577b20
|
@ -727,6 +727,9 @@ public class LeapBridgeHandler extends LutronBridgeHandler implements LeapMessag
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Executed by keepAliveJob. Sends a LEAP ping request and schedules a reconnect task.
|
||||||
|
*/
|
||||||
private void sendKeepAlive() {
|
private void sendKeepAlive() {
|
||||||
logger.trace("Sending keepalive query");
|
logger.trace("Sending keepalive query");
|
||||||
sendCommand(new LeapCommand(Request.ping()));
|
sendCommand(new LeapCommand(Request.ping()));
|
||||||
|
@ -734,12 +737,20 @@ public class LeapBridgeHandler extends LutronBridgeHandler implements LeapMessag
|
||||||
reconnectTaskSchedule();
|
reconnectTaskSchedule();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Schedules the reconnect task keepAliveReconnectJob to execute in KEEPALIVE_TIMEOUT_SECONDS. This should be
|
||||||
|
* cancelled by calling reconnectTaskCancel() if a valid response is received from the bridge.
|
||||||
|
*/
|
||||||
private void reconnectTaskSchedule() {
|
private void reconnectTaskSchedule() {
|
||||||
synchronized (keepAliveReconnectLock) {
|
synchronized (keepAliveReconnectLock) {
|
||||||
keepAliveReconnectJob = scheduler.schedule(this::reconnect, KEEPALIVE_TIMEOUT_SECONDS, TimeUnit.SECONDS);
|
keepAliveReconnectJob = scheduler.schedule(this::keepaliveTimeoutExpired, KEEPALIVE_TIMEOUT_SECONDS,
|
||||||
|
TimeUnit.SECONDS);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Cancels the reconnect task keepAliveReconnectJob.
|
||||||
|
*/
|
||||||
private void reconnectTaskCancel(boolean interrupt) {
|
private void reconnectTaskCancel(boolean interrupt) {
|
||||||
synchronized (keepAliveReconnectLock) {
|
synchronized (keepAliveReconnectLock) {
|
||||||
ScheduledFuture<?> keepAliveReconnectJob = this.keepAliveReconnectJob;
|
ScheduledFuture<?> keepAliveReconnectJob = this.keepAliveReconnectJob;
|
||||||
|
@ -751,6 +762,15 @@ public class LeapBridgeHandler extends LutronBridgeHandler implements LeapMessag
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Executed by keepAliveReconnectJob if it is not cancelled by the LEAP message parser calling
|
||||||
|
* validMessageReceived() which in turn calls reconnectTaskCancel().
|
||||||
|
*/
|
||||||
|
private void keepaliveTimeoutExpired() {
|
||||||
|
logger.debug("Keepalive response timeout expired. Initiating reconnect.");
|
||||||
|
reconnect();
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void handleCommand(ChannelUID channelUID, Command command) {
|
public void handleCommand(ChannelUID channelUID, Command command) {
|
||||||
if (channelUID.getId().equals(CHANNEL_COMMAND)) {
|
if (channelUID.getId().equals(CHANNEL_COMMAND)) {
|
||||||
|
|
Loading…
Reference in New Issue