aboutsummaryrefslogtreecommitdiff
path: root/resource_manager.py
diff options
context:
space:
mode:
authorMarek Siarkowicz <mareksiarkowicz@gmail.com>2015-06-15 02:59:24 +0200
committerMarek Siarkowicz <mareksiarkowicz@gmail.com>2015-06-15 02:59:24 +0200
commitfde8202e397eff82993c738010e1519a00e7430d (patch)
tree8fc1295341d9751018943df7720448245629d4c2 /resource_manager.py
parenteac6cdf7521d6514072e1f91958bbc0f1bc29b70 (diff)
downloadpyParrotZikTCP-fde8202e397eff82993c738010e1519a00e7430d.tar.xz
pyParrotZikTCP-fde8202e397eff82993c738010e1519a00e7430d.zip
Handle disconnection through exceptions.
Diffstat (limited to '')
-rw-r--r--resource_manager.py10
1 files changed, 6 insertions, 4 deletions
diff --git a/resource_manager.py b/resource_manager.py
index ddd39fb..6bb8eb7 100644
--- a/resource_manager.py
+++ b/resource_manager.py
@@ -1,3 +1,4 @@
+import bluetooth
from operator import itemgetter
import sys
@@ -45,11 +46,9 @@ class ResourceManagerBase(object):
def send_message(self, message):
try:
self.sock.send(str(message))
- except Exception:
- self.sock = ""
- return
- else:
return self.get_answer(message)
+ except bluetooth.btcommon.BluetoothError:
+ raise DeviceDisconnected
def get_answer(self, message):
data = self.receive_message()
@@ -139,3 +138,6 @@ class Version2ResourceManager(ResourceManagerBase):
'/api/audio/noise_control/enabled': ['get', 'set'],
'/api/audio/track/metadata': ['get'],
}
+
+class DeviceDisconnected(Exception):
+ pass