From: Mike Beattie Date: Mon, 27 Aug 2012 07:41:29 +0000 (+1200) Subject: altosdroid: Add Connected/Connect_failed messages X-Git-Tag: 1.1~47^2~20 X-Git-Url: https://git.gag.com/?p=fw%2Faltos;a=commitdiff_plain;h=9a41508d92f95012a37bb75603e6e48a2c405204 altosdroid: Add Connected/Connect_failed messages Signed-off-by: Mike Beattie --- diff --git a/altosdroid/src/org/altusmetrum/AltosDroid/AltosBluetooth.java b/altosdroid/src/org/altusmetrum/AltosDroid/AltosBluetooth.java index bb188d80..19b2a2a5 100644 --- a/altosdroid/src/org/altusmetrum/AltosDroid/AltosBluetooth.java +++ b/altosdroid/src/org/altusmetrum/AltosDroid/AltosBluetooth.java @@ -103,6 +103,7 @@ public class AltosBluetooth extends AltosLink { input = null; output = null; AltosBluetooth.this.notifyAll(); + handler.obtainMessage(TelemetryService.MSG_CONNECT_FAILED).sendToTarget(); if (D) Log.e(TAG, "ConnectThread: Failed to establish connection"); return; } @@ -147,6 +148,7 @@ public class AltosBluetooth extends AltosLink { private void connection_failed() { if (D) Log.e(TAG, "Bluetooth Socket IO failed!"); + handler.obtainMessage(TelemetryService.MSG_DISCONNECTED).sendToTarget(); } public void print(String data) { diff --git a/altosdroid/src/org/altusmetrum/AltosDroid/TelemetryService.java b/altosdroid/src/org/altusmetrum/AltosDroid/TelemetryService.java index e9254bad..ecafc74a 100644 --- a/altosdroid/src/org/altusmetrum/AltosDroid/TelemetryService.java +++ b/altosdroid/src/org/altusmetrum/AltosDroid/TelemetryService.java @@ -47,6 +47,8 @@ public class TelemetryService extends Service { static final int MSG_UNREGISTER_CLIENT = 2; static final int MSG_CONNECT = 3; static final int MSG_CONNECTED = 4; + static final int MSG_CONNECT_FAILED = 5; + static final int MSG_DISCONNECTED = 6; public static final int STATE_NONE = 0; public static final int STATE_READY = 1; @@ -101,6 +103,14 @@ public class TelemetryService extends Service { s.setState(STATE_CONNECTED); s.mAltosBluetooth.add_monitor(s.telem); break; + case MSG_CONNECT_FAILED: + if (D) Log.d(TAG, "Connection failed... retrying"); + s.startAltosBluetooth(); + break; + case MSG_DISCONNECTED: + if (D) Log.d(TAG, "Disconnected from " + s.device.getName()); + s.stopAltosBluetooth(); + break; default: super.handleMessage(msg); }