X-Git-Url: https://git.ktnx.net/?p=mobile-ledger.git;a=blobdiff_plain;f=app%2Fsrc%2Fmain%2Fjava%2Fnet%2Fktnx%2Fmobileledger%2Futils%2FNetworkUtil.java;h=67adef060db0c0b77031a66c3cc6a9db491c60ea;hp=8386bbff057b85fc2cfac0bb6e6d946985ca619d;hb=4cdedb2eecf4b8fa1570eff713db7c0d1b3095f7;hpb=6b740c280c79b0170321f533747cdbfc3e179a29 diff --git a/app/src/main/java/net/ktnx/mobileledger/utils/NetworkUtil.java b/app/src/main/java/net/ktnx/mobileledger/utils/NetworkUtil.java index 8386bbff..67adef06 100644 --- a/app/src/main/java/net/ktnx/mobileledger/utils/NetworkUtil.java +++ b/app/src/main/java/net/ktnx/mobileledger/utils/NetworkUtil.java @@ -1,5 +1,5 @@ /* - * Copyright © 2018 Damyan Ivanov. + * Copyright © 2019 Damyan Ivanov. * This file is part of Mobile-Ledger. * Mobile-Ledger is free software: you can distribute it and/or modify it * under the term of the GNU General Public License as published by @@ -17,25 +17,31 @@ package net.ktnx.mobileledger.utils; -import android.content.SharedPreferences; import android.util.Base64; import android.util.Log; +import net.ktnx.mobileledger.model.Data; +import net.ktnx.mobileledger.model.MobileLedgerProfile; + import java.io.IOException; import java.net.HttpURLConnection; import java.net.URL; +import java.nio.charset.StandardCharsets; public final class NetworkUtil { - public static HttpURLConnection prepare_connection(SharedPreferences pref, String path) throws - IOException { - final String backend_url = pref.getString("backend_url", ""); - final boolean use_auth = pref.getBoolean("backend_use_http_auth", false); - Log.d("network", "Connecting to "+backend_url + "/" + path); - HttpURLConnection http = (HttpURLConnection) new URL(backend_url + "/" + path).openConnection(); + private static final int thirtySeconds = 30000; + public static HttpURLConnection prepareConnection(String path) throws IOException { + MobileLedgerProfile profile = Data.profile.get(); + final String backend_url = profile.getUrl(); + final boolean use_auth = profile.isAuthEnabled(); + Log.d("network", "Connecting to " + backend_url + "/" + path); + HttpURLConnection http = + (HttpURLConnection) new URL(backend_url + "/" + path).openConnection(); if (use_auth) { - final String auth_user = pref.getString("backend_auth_user", ""); - final String auth_password = pref.getString("backend_auth_password", ""); - final byte[] bytes = (String.format("%s:%s", auth_user, auth_password)).getBytes("UTF-8"); + final String auth_user = profile.getAuthUserName(); + final String auth_password = profile.getAuthPassword(); + final byte[] bytes = (String.format("%s:%s", auth_user, auth_password)) + .getBytes(StandardCharsets.UTF_8); final String value = Base64.encodeToString(bytes, Base64.DEFAULT); http.setRequestProperty("Authorization", "Basic " + value); } @@ -43,6 +49,8 @@ public final class NetworkUtil { http.setRequestProperty("Accept-Charset", "UTF-8"); http.setInstanceFollowRedirects(false); http.setUseCaches(false); + http.setReadTimeout(thirtySeconds); + http.setConnectTimeout(thirtySeconds); return http; }