diff --git a/devices/android-client/app/src/main/java/com/antmicro/update/rdfm/mgmt/ManagementClient.java b/devices/android-client/app/src/main/java/com/antmicro/update/rdfm/mgmt/ManagementClient.java index 3f3bd5ce..fb418f9e 100644 --- a/devices/android-client/app/src/main/java/com/antmicro/update/rdfm/mgmt/ManagementClient.java +++ b/devices/android-client/app/src/main/java/com/antmicro/update/rdfm/mgmt/ManagementClient.java @@ -42,15 +42,8 @@ public ManagementClient(Utils utils, IDeviceTokenProvider tokenProvider) { new Thread(this::reconnectThread).start(); } - private void connectToWs() { - String token; - try { - token = mTokenProvider.fetchDeviceToken(); - } catch (DeviceUnauthorizedException | ServerConnectionException e) { - Log.w(TAG, "Cannot connect to management WebSocket - device unauthorized"); - return; - } - + private void connectToWs() throws DeviceUnauthorizedException, ServerConnectionException { + String token = mTokenProvider.fetchDeviceToken(); Request request = new Request.Builder() .url(mServerAddress + "/api/v1/devices/ws") .header("Authorization", "Bearer token=" + token) @@ -143,8 +136,11 @@ private void reconnectThread() { // Connect to the WS try { connectToWs(); - } catch (Exception e) { - Log.e(TAG, "Exception when connecting to the management WebSocket", e); + } catch (ServerConnectionException e) { + Log.e(TAG, "Cannot connect to the management WebSocket - server connection failed"); + continue; + } catch (DeviceUnauthorizedException e) { + Log.e(TAG, "Cannot connect to the management WebSocket - device unauthorized"); continue; }