LoggerCallback -> kt
This commit is contained in:
parent
ff8ad7ac04
commit
f0ac7c4c25
4 changed files with 62 additions and 65 deletions
|
@ -1,63 +0,0 @@
|
|||
package info.nightscout.androidaps.plugins.aps.logger;
|
||||
|
||||
import org.mozilla.javascript.ScriptableObject;
|
||||
|
||||
import javax.inject.Inject;
|
||||
|
||||
import info.nightscout.androidaps.db.StaticInjector;
|
||||
import info.nightscout.androidaps.logging.AAPSLogger;
|
||||
import info.nightscout.androidaps.logging.LTag;
|
||||
|
||||
/**
|
||||
* Created by adrian on 15/10/17.
|
||||
*/
|
||||
|
||||
|
||||
public class LoggerCallback extends ScriptableObject {
|
||||
|
||||
@Inject
|
||||
AAPSLogger aapsLogger;
|
||||
|
||||
private static StringBuffer errorBuffer = new StringBuffer();
|
||||
private static StringBuffer logBuffer = new StringBuffer();
|
||||
|
||||
|
||||
public LoggerCallback() {
|
||||
//empty constructor needed for Rhino
|
||||
errorBuffer = new StringBuffer();
|
||||
logBuffer = new StringBuffer();
|
||||
StaticInjector.Companion.getInstance().androidInjector().inject(this);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getClassName() {
|
||||
return "LoggerCallback";
|
||||
}
|
||||
|
||||
public void jsConstructor() {
|
||||
//empty constructor on JS site; could work as setter
|
||||
}
|
||||
|
||||
public void jsFunction_log(Object obj1) {
|
||||
aapsLogger.debug(LTag.APS, obj1.toString().trim());
|
||||
logBuffer.append(obj1.toString());
|
||||
}
|
||||
|
||||
public void jsFunction_error(Object obj1) {
|
||||
aapsLogger.error(LTag.APS, obj1.toString().trim());
|
||||
errorBuffer.append(obj1.toString());
|
||||
}
|
||||
|
||||
|
||||
public static String getScriptDebug() {
|
||||
String ret = "";
|
||||
if (errorBuffer.length() > 0) {
|
||||
ret += "e:\n" + errorBuffer.toString();
|
||||
}
|
||||
if (ret.length() > 0 && logBuffer.length() > 0) ret += '\n';
|
||||
if (logBuffer.length() > 0) {
|
||||
ret += "d:\n" + logBuffer.toString();
|
||||
}
|
||||
return ret;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,60 @@
|
|||
package info.nightscout.androidaps.plugins.aps.logger
|
||||
|
||||
import info.nightscout.androidaps.db.StaticInjector.Companion.getInstance
|
||||
import info.nightscout.androidaps.logging.AAPSLogger
|
||||
import info.nightscout.androidaps.logging.LTag
|
||||
import org.mozilla.javascript.ScriptableObject
|
||||
import javax.inject.Inject
|
||||
|
||||
@Suppress("unused", "FunctionName")
|
||||
class LoggerCallback : ScriptableObject() {
|
||||
|
||||
@Inject lateinit var aapsLogger: AAPSLogger
|
||||
|
||||
override fun getClassName(): String = "LoggerCallback"
|
||||
|
||||
fun jsConstructor() {
|
||||
//empty constructor on JS site; could work as setter
|
||||
}
|
||||
|
||||
fun jsFunction_log(obj1: Any) {
|
||||
aapsLogger.debug(LTag.APS, obj1.toString().trim { it <= ' ' })
|
||||
logBuffer.append(obj1.toString())
|
||||
}
|
||||
|
||||
fun jsFunction_error(obj1: Any) {
|
||||
aapsLogger.error(LTag.APS, obj1.toString().trim { it <= ' ' })
|
||||
errorBuffer.append(obj1.toString())
|
||||
}
|
||||
|
||||
companion object {
|
||||
|
||||
private var errorBuffer = StringBuffer()
|
||||
private var logBuffer = StringBuffer()
|
||||
val scriptDebug: String
|
||||
get() {
|
||||
var ret = ""
|
||||
if (errorBuffer.isNotEmpty()) {
|
||||
ret += """
|
||||
e:
|
||||
$errorBuffer
|
||||
""".trimIndent()
|
||||
}
|
||||
if (ret.isNotEmpty() && logBuffer.isNotEmpty()) ret += '\n'
|
||||
if (logBuffer.isNotEmpty()) {
|
||||
ret += """
|
||||
d:
|
||||
$logBuffer
|
||||
""".trimIndent()
|
||||
}
|
||||
return ret
|
||||
}
|
||||
}
|
||||
|
||||
init {
|
||||
//empty constructor needed for Rhino
|
||||
errorBuffer = StringBuffer()
|
||||
logBuffer = StringBuffer()
|
||||
getInstance().androidInjector().inject(this)
|
||||
}
|
||||
}
|
|
@ -129,7 +129,7 @@ public class DetermineBasalAdapterAMAJS {
|
|||
setTempBasalFunctionsObj};
|
||||
|
||||
NativeObject jsResult = (NativeObject) determineBasalJS.call(rhino, scope, scope, params);
|
||||
scriptDebug = LoggerCallback.getScriptDebug();
|
||||
scriptDebug = LoggerCallback.Companion.getScriptDebug();
|
||||
|
||||
// Parse the jsResult object to a JSON-String
|
||||
String result = NativeJSON.stringify(rhino, scope, jsResult, null, null).toString();
|
||||
|
|
|
@ -156,7 +156,7 @@ public class DetermineBasalAdapterSMBJS {
|
|||
|
||||
|
||||
NativeObject jsResult = (NativeObject) determineBasalJS.call(rhino, scope, scope, params);
|
||||
scriptDebug = LoggerCallback.getScriptDebug();
|
||||
scriptDebug = LoggerCallback.Companion.getScriptDebug();
|
||||
|
||||
// Parse the jsResult object to a JSON-String
|
||||
String result = NativeJSON.stringify(rhino, scope, jsResult, null, null).toString();
|
||||
|
|
Loading…
Reference in a new issue