Added code to receive settings by HTTP POST request.
This commit is contained in:
@@ -281,17 +281,23 @@ public class SdDataSourceNetworkPassive extends SdDataSource {
|
|||||||
JSONObject dataObject = mainObject.getJSONObject("dataObj");
|
JSONObject dataObject = mainObject.getJSONObject("dataObj");
|
||||||
String dataTypeStr = dataObject.getString("dataType");
|
String dataTypeStr = dataObject.getString("dataType");
|
||||||
Log.v(TAG,"updateFromJSON - dataType="+dataTypeStr);
|
Log.v(TAG,"updateFromJSON - dataType="+dataTypeStr);
|
||||||
|
if (dataTypeStr.equals("raw")) {
|
||||||
|
Log.v(TAG,"updateFromJSON - processing raw data");
|
||||||
JSONArray accelVals = dataObject.getJSONArray("data");
|
JSONArray accelVals = dataObject.getJSONArray("data");
|
||||||
|
Log.v(TAG, "Received " + accelVals.length() + " acceleration values");
|
||||||
Log.v(TAG,"Received " + accelVals.length() + " acceleration values");
|
|
||||||
|
|
||||||
int i;
|
int i;
|
||||||
for (i=0;i<accelVals.length();i++)
|
for (i = 0; i < accelVals.length(); i++) {
|
||||||
{
|
|
||||||
mAccData[i] = accelVals.getInt(i);
|
mAccData[i] = accelVals.getInt(i);
|
||||||
}
|
}
|
||||||
mNSamp = accelVals.length();
|
mNSamp = accelVals.length();
|
||||||
doAnalysis();
|
doAnalysis();
|
||||||
|
} else if (dataTypeStr.equals("settings")){
|
||||||
|
Log.v(TAG,"updateFromJSON - processing settings");
|
||||||
|
mSamplePeriod = (short)dataObject.getInt("analysisPeriod");
|
||||||
|
mSampleFreq = (short)dataObject.getInt("analysisPeriod");
|
||||||
|
mSdData.haveSettings = true;
|
||||||
|
mSdData.mSampleFreq = mSampleFreq;
|
||||||
|
}
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
Log.v(TAG,"Error Parsing JSON String - "+e.toString());
|
Log.v(TAG,"Error Parsing JSON String - "+e.toString());
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -94,6 +94,11 @@ public class SdWebServer extends NanoHTTPD {
|
|||||||
//Log.v(TAG, " postData=" + postData);
|
//Log.v(TAG, " postData=" + postData);
|
||||||
// Send the data to the SdDataSource so the app can pick it up.
|
// Send the data to the SdDataSource so the app can pick it up.
|
||||||
mSdServer.mSdDataSource.updateFromJSON(parameters.toString());
|
mSdServer.mSdDataSource.updateFromJSON(parameters.toString());
|
||||||
|
if (mSdData.haveSettings) {
|
||||||
|
answer = "OK";
|
||||||
|
} else {
|
||||||
|
answer = "sendSettings";
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
Log.v(TAG, "WebServer.serve() - Unrecognised method - " + method);
|
Log.v(TAG, "WebServer.serve() - Unrecognised method - " + method);
|
||||||
@@ -101,6 +106,8 @@ public class SdWebServer extends NanoHTTPD {
|
|||||||
break;
|
break;
|
||||||
|
|
||||||
case "/settings":
|
case "/settings":
|
||||||
|
switch (method) {
|
||||||
|
case GET:
|
||||||
//Log.v(TAG,"WebServer.serve() - Returning settings");
|
//Log.v(TAG,"WebServer.serve() - Returning settings");
|
||||||
try {
|
try {
|
||||||
JSONObject jsonObj = new JSONObject();
|
JSONObject jsonObj = new JSONObject();
|
||||||
@@ -119,7 +126,15 @@ public class SdWebServer extends NanoHTTPD {
|
|||||||
answer = "Error Creating Data Object";
|
answer = "Error Creating Data Object";
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
case POST:
|
||||||
|
Log.v(TAG, "WebServer.serve() - POST /settings - receiving data from device: parameters=" + parameters.toString());
|
||||||
|
Log.v(TAG, " header=" + header.toString());
|
||||||
|
Log.v(TAG, " files=" + files.toString());
|
||||||
|
mSdServer.mSdDataSource.updateFromJSON(parameters.toString());
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
Log.v(TAG, "WebServer.serve() - Unrecognised method - " + method);
|
||||||
|
}
|
||||||
case "/spectrum":
|
case "/spectrum":
|
||||||
Log.v(TAG, "WebServer.serve() - Returning spectrum - 1");
|
Log.v(TAG, "WebServer.serve() - Returning spectrum - 1");
|
||||||
try {
|
try {
|
||||||
|
|||||||
Reference in New Issue
Block a user