From 9d37f348352010ee88c2a4258d2e5c05217f1657 Mon Sep 17 00:00:00 2001 From: tom79 Date: Tue, 29 Oct 2019 15:08:39 +0100 Subject: Avoid to change network with 421 --- .../main/java/app/fedilab/android/client/API.java | 41 ++++++++++++---------- 1 file changed, 22 insertions(+), 19 deletions(-) diff --git a/app/src/main/java/app/fedilab/android/client/API.java b/app/src/main/java/app/fedilab/android/client/API.java index 83ffd1ad1..42b50e696 100644 --- a/app/src/main/java/app/fedilab/android/client/API.java +++ b/app/src/main/java/app/fedilab/android/client/API.java @@ -782,10 +782,16 @@ public class API { } catch (NoSuchAlgorithmException | KeyManagementException | JSONException e1) { e1.printStackTrace(); } catch (HttpsConnection.HttpsConnectionException e1) { - instanceNodeInfo.setName("GNU"); - instanceNodeInfo.setVersion("unknown"); - instanceNodeInfo.setOpenRegistrations(true); - e1.printStackTrace(); + if( e1.getStatusCode() == 404) { + instanceNodeInfo.setName("GNU"); + instanceNodeInfo.setVersion("unknown"); + instanceNodeInfo.setOpenRegistrations(true); + e1.printStackTrace(); + }else{ + instanceNodeInfo.setName("MASTODON"); + instanceNodeInfo.setVersion("3.0"); + instanceNodeInfo.setOpenRegistrations(false); + } } e.printStackTrace(); } @@ -826,11 +832,7 @@ public class API { } catch (JSONException e) { setDefaultError(e); } - } catch (IOException e) { - e.printStackTrace(); - } catch (NoSuchAlgorithmException e) { - e.printStackTrace(); - } catch (KeyManagementException e) { + } catch (IOException | JSONException | NoSuchAlgorithmException | KeyManagementException e) { e.printStackTrace(); } catch (HttpsConnection.HttpsConnectionException e) { try { @@ -842,20 +844,21 @@ public class API { } catch (IOException e1) { instanceNodeInfo.setConnectionError(true); e1.printStackTrace(); - } catch (NoSuchAlgorithmException e1) { - e1.printStackTrace(); - } catch (KeyManagementException e1) { + } catch (NoSuchAlgorithmException | JSONException | KeyManagementException e1) { e1.printStackTrace(); } catch (HttpsConnection.HttpsConnectionException e1) { - instanceNodeInfo.setName("GNU"); - instanceNodeInfo.setVersion("unknown"); - instanceNodeInfo.setOpenRegistrations(true); - } catch (JSONException e1) { - e1.printStackTrace(); + if( e1.getStatusCode() == 404) { + instanceNodeInfo.setName("GNU"); + instanceNodeInfo.setVersion("unknown"); + instanceNodeInfo.setOpenRegistrations(true); + e1.printStackTrace(); + }else{ + instanceNodeInfo.setName("MASTODON"); + instanceNodeInfo.setVersion("3.0"); + instanceNodeInfo.setOpenRegistrations(false); + } } e.printStackTrace(); - } catch (JSONException e) { - e.printStackTrace(); } return instanceNodeInfo; } -- cgit v1.2.3