mirror of
https://github.com/syncthing/syncthing-android.git
synced 2024-11-22 12:21:15 +00:00
Additional info level logging.
This commit is contained in:
parent
a8b84a21e5
commit
fa749da4a6
4 changed files with 35 additions and 23 deletions
|
@ -15,30 +15,27 @@ import java.io.InputStream;
|
|||
import java.io.InputStreamReader;
|
||||
|
||||
/**
|
||||
* Performs a GET request with no parameters to the URL in uri[0] and
|
||||
* Performs a GET request with no parameters to the URL in uri[0] with the path in uri[1] and
|
||||
* returns the result as a String.
|
||||
*/
|
||||
public class GetTask extends AsyncTask<String, Void, String> {
|
||||
|
||||
private static final String TAG = "GetTask";
|
||||
|
||||
/**
|
||||
* URI to call to get version name.
|
||||
*/
|
||||
public static final String URI_VERSION = "/rest/version";
|
||||
|
||||
@Override
|
||||
protected String doInBackground(String... uri) {
|
||||
String fullUri = uri[0] + uri[1];
|
||||
Log.i(TAG, "Sending GET request to " + fullUri);
|
||||
HttpClient httpclient = new DefaultHttpClient();
|
||||
HttpGet get = new HttpGet(uri[0] + uri[1]);
|
||||
HttpGet get = new HttpGet(fullUri);
|
||||
String responseString = null;
|
||||
try {
|
||||
HttpResponse response = httpclient.execute(get);
|
||||
HttpEntity entity = response.getEntity();
|
||||
|
||||
if (entity != null) {
|
||||
|
||||
// A Simple JSON Response Read
|
||||
InputStream is = entity.getContent();
|
||||
|
||||
BufferedReader br = new BufferedReader(new InputStreamReader(is));
|
||||
|
@ -52,7 +49,7 @@ public class GetTask extends AsyncTask<String, Void, String> {
|
|||
}
|
||||
}
|
||||
catch (IOException e) {
|
||||
Log.w(TAG, "Failed to call Rest API at " + uri[0], e);
|
||||
Log.w(TAG, "Failed to call Rest API at " + fullUri, e);
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
|
|
@ -11,27 +11,26 @@ import org.apache.http.impl.client.DefaultHttpClient;
|
|||
import java.io.IOException;
|
||||
|
||||
/**
|
||||
* Performs a POST request with no parameters to the URL in uri[0].
|
||||
* Performs a POST request with no parameters to the URL in uri[0] with the path in uri[1].
|
||||
*/
|
||||
public class PostTask extends AsyncTask<String, Void, Void> {
|
||||
|
||||
private static final String TAG = "PostTask";
|
||||
|
||||
/**
|
||||
* URI to call for shutdown.
|
||||
*/
|
||||
public static final String URI_SHUTDOWN = "/rest/shutdown";
|
||||
|
||||
@Override
|
||||
protected Void doInBackground(String... uri) {
|
||||
String fullUri = uri[0] + uri[1];
|
||||
Log.i(TAG, "Sending POST request to " + fullUri);
|
||||
HttpClient httpclient = new DefaultHttpClient();
|
||||
HttpPost post = new HttpPost(uri[0] + uri[1]);
|
||||
HttpPost post = new HttpPost(fullUri);
|
||||
String responseString = null;
|
||||
try {
|
||||
HttpResponse response = httpclient.execute(post);
|
||||
}
|
||||
catch (IOException e) {
|
||||
Log.w(TAG, "Failed to call Rest API at " + uri[0], e);
|
||||
Log.w(TAG, "Failed to call Rest API at " + fullUri, e);
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
|
|
@ -1,6 +1,7 @@
|
|||
package com.nutomic.syncthingandroid.syncthing;
|
||||
|
||||
import android.content.Context;
|
||||
import android.util.Log;
|
||||
|
||||
import com.nutomic.syncthingandroid.R;
|
||||
|
||||
|
@ -9,6 +10,8 @@ import com.nutomic.syncthingandroid.R;
|
|||
*/
|
||||
public class RestApi implements SyncthingService.OnWebGuiAvailableListener {
|
||||
|
||||
private static final String TAG = "RestApi";
|
||||
|
||||
private Context mContext;
|
||||
|
||||
private String mVersion;
|
||||
|
@ -31,10 +34,9 @@ public class RestApi implements SyncthingService.OnWebGuiAvailableListener {
|
|||
public void onWebGuiAvailable() {
|
||||
new GetTask() {
|
||||
@Override
|
||||
protected void onPostExecute(String versionName) {
|
||||
mVersion = (versionName != null)
|
||||
? versionName
|
||||
: mContext.getString(R.string.syncthing_version_error);
|
||||
protected void onPostExecute(String version) {
|
||||
mVersion = version;
|
||||
Log.i(TAG, "Syncthing version is " + mVersion);
|
||||
}
|
||||
}.execute(mUrl, GetTask.URI_VERSION);
|
||||
}
|
||||
|
@ -43,7 +45,9 @@ public class RestApi implements SyncthingService.OnWebGuiAvailableListener {
|
|||
* Returns the version name, or a (text) error message on failure.
|
||||
*/
|
||||
public String getVersion() {
|
||||
return mVersion;
|
||||
return (mVersion != null)
|
||||
? mVersion
|
||||
: mContext.getString(R.string.syncthing_version_error);
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
@ -201,6 +201,7 @@ public class SyncthingService extends Service {
|
|||
|
||||
@Override
|
||||
protected void onPostExecute(Void aVoid) {
|
||||
Log.i(TAG, "Web GUI has come online at " + mApi.getUrl());
|
||||
mIsWebGuiAvailable = true;
|
||||
for (OnWebGuiAvailableListener listener : mOnWebGuiAvailableListeners) {
|
||||
listener.onWebGuiAvailable();
|
||||
|
@ -229,6 +230,8 @@ public class SyncthingService extends Service {
|
|||
@Override
|
||||
public void run() {
|
||||
if (isFirstStart(SyncthingService.this)) {
|
||||
Log.i(TAG, "App started for the first time. " +
|
||||
"Copying default config, keys will be generated automatically");
|
||||
copyDefaultConfig();
|
||||
}
|
||||
updateConfig();
|
||||
|
@ -240,14 +243,19 @@ public class SyncthingService extends Service {
|
|||
Element options = (Element)
|
||||
d.getDocumentElement().getElementsByTagName("gui").item(0);
|
||||
syncthingUrl = options.getElementsByTagName("address").item(0).getTextContent();
|
||||
} catch (SAXException e) {
|
||||
}
|
||||
catch (SAXException e) {
|
||||
throw new RuntimeException("Failed to read gui url, aborting", e);
|
||||
} catch (ParserConfigurationException e) {
|
||||
}
|
||||
catch (ParserConfigurationException e) {
|
||||
throw new RuntimeException("Failed to read gui url, aborting", e);
|
||||
} catch (IOException e) {
|
||||
}
|
||||
catch (IOException e) {
|
||||
throw new RuntimeException("Failed to read gui url, aborting", e);
|
||||
} finally {
|
||||
}
|
||||
finally {
|
||||
mApi = new RestApi(SyncthingService.this, "http://" + syncthingUrl);
|
||||
Log.i(TAG, "Web GUI will be available at " + mApi.getUrl());
|
||||
registerOnWebGuiAvailableListener(mApi);
|
||||
}
|
||||
new PollWebGuiAvailableTask().execute();
|
||||
|
@ -267,6 +275,7 @@ public class SyncthingService extends Service {
|
|||
@Override
|
||||
public void onDestroy() {
|
||||
super.onDestroy();
|
||||
Log.i(TAG, "Shutting down service");
|
||||
mApi.shutdown();
|
||||
}
|
||||
|
||||
|
@ -299,6 +308,7 @@ public class SyncthingService extends Service {
|
|||
*/
|
||||
private void updateConfig() {
|
||||
try {
|
||||
Log.i(TAG, "Checking for needed config updates");
|
||||
boolean changed = false;
|
||||
DocumentBuilder db = DocumentBuilderFactory.newInstance().newDocumentBuilder();
|
||||
Document d = db.parse(getConfigFile());
|
||||
|
@ -321,6 +331,7 @@ public class SyncthingService extends Service {
|
|||
Element r = (Element) repos.item(i);
|
||||
if (!r.hasAttribute("ignorePerms") ||
|
||||
!Boolean.parseBoolean(r.getAttribute("ignorePerms"))) {
|
||||
Log.i(TAG, "Set 'ignorePerms' on repository " + r.getAttribute("id"));
|
||||
r.setAttribute("ignorePerms", Boolean.toString(true));
|
||||
changed = true;
|
||||
}
|
||||
|
@ -328,6 +339,7 @@ public class SyncthingService extends Service {
|
|||
|
||||
// Write the changes back to file.
|
||||
if (changed) {
|
||||
Log.i(TAG, "Writing updated config back to file");
|
||||
TransformerFactory transformerFactory = TransformerFactory.newInstance();
|
||||
Transformer transformer = transformerFactory.newTransformer();
|
||||
DOMSource domSource = new DOMSource(d);
|
||||
|
|
Loading…
Reference in a new issue