From 9d7eef8d5ffb041f1cd04c0f3ed799b421c99758 Mon Sep 17 00:00:00 2001 From: Graham Jones Date: Sat, 22 Oct 2022 17:29:54 +0100 Subject: [PATCH] Started code to retrieve cnn model from server - not working! --- .../openseizuredetector/WebApiConnection.java | 2 + .../WebApiConnection_osdapi.java | 49 +++++++++++++++++++ 2 files changed, 51 insertions(+) diff --git a/app/src/main/java/uk/org/openseizuredetector/WebApiConnection.java b/app/src/main/java/uk/org/openseizuredetector/WebApiConnection.java index 2eafc56..38dc627 100644 --- a/app/src/main/java/uk/org/openseizuredetector/WebApiConnection.java +++ b/app/src/main/java/uk/org/openseizuredetector/WebApiConnection.java @@ -103,6 +103,8 @@ public abstract class WebApiConnection { */ public abstract boolean getEventTypes(JSONObjectCallback callback); + public abstract boolean getCnnModelInfo(JSONObjectCallback callback); + /** * Retrieve a trivial file from the server to check we have a good server connection. diff --git a/app/src/main/java/uk/org/openseizuredetector/WebApiConnection_osdapi.java b/app/src/main/java/uk/org/openseizuredetector/WebApiConnection_osdapi.java index 0e01565..e6afd8b 100644 --- a/app/src/main/java/uk/org/openseizuredetector/WebApiConnection_osdapi.java +++ b/app/src/main/java/uk/org/openseizuredetector/WebApiConnection_osdapi.java @@ -633,6 +633,55 @@ public class WebApiConnection_osdapi extends WebApiConnection { } + /** + * Retrieve the file containing the CNN Models information from the server. + * Calls the specified callback function, passing a JSONObject as a parameter when the data has been received and parsed. + * + * @return true if request sent successfully or else false. + */ + public boolean getCNNModelInfo(JSONObjectCallback callback) { + Log.v(TAG, "getCNNModelInfo()"); + String urlStr = mUrlBase + "/static/cnnModelInfo.json"; + Log.v(TAG, "urlStr=" + urlStr); + final String authtoken = getStoredToken(); + + StringRequest req = new StringRequest(Request.Method.GET, urlStr, + new Response.Listener() { + @Override + public void onResponse(String response) { + Log.v(TAG, "getCNNModelInfo.onResponse(): Response is: " + response); + mServerConnectionOk = true; + try { + JSONObject retObj = new JSONObject(response); + callback.accept(retObj); + } catch (JSONException e) { + Log.e(TAG, "getCNNModelInfo.onRespons(): Error: " + e.getMessage() + "," + e.toString()); + callback.accept(null); + } + } + }, + new Response.ErrorListener() { + @Override + public void onErrorResponse(VolleyError error) { + mServerConnectionOk = false; + if (error != null) { + Log.e(TAG, "getCNNModelInfo.onErrorResponse(): " + error.toString() + ", message:" + error.getMessage()); + } else { + Log.e(TAG, "getCNNModelInfo.onErrorResponse() - returned null response"); + } + callback.accept(null); + } + }) { + }; + + mQueue.add(req); + return (true); + + } + + + + /** * Retrieve a trivial file from the server to check we have a good server connection. * sets mServerConnectionOk.