protected override void JavaFinalize() { if (!mFinished) { Finish("Request on the loose"); VolleyLog.E("Marker log finalized without finish() - uncaught exit point for request"); } }
public void Finish(String header) { mFinished = true; long duration = GetTotalDuration(); if (duration <= MIN_DURATION_FOR_LOGGING_MS) { return; } long prevTime = mMarkers.First().time; VolleyLog.D("({0:F4} ms) {1}", duration, header); foreach (Marker marker in mMarkers) { long thisTime = marker.time; VolleyLog.D("+{0:F4} [{1:2}] {2}", (thisTime - prevTime), marker.thread, marker.name); prevTime = thisTime; } }
private static String BuildMessage(String format, params object[] args) { String msg = (args == null) ? format : String.Format(format, args); var trace = new Java.Lang.Throwable().FillInStackTrace().GetStackTrace(); String caller = "<unknown>"; Java.Lang.Class volleyLogClass = new VolleyLog().Class; for (int i = 2; i < trace.Length; i++) { var clazz = trace[i].Class; if (!clazz.Equals(volleyLogClass)) { String callingClass = trace[i].ClassName; callingClass = callingClass.Substring(callingClass.LastIndexOf('.') + 1); callingClass = callingClass.Substring(callingClass.LastIndexOf('$') + 1); caller = callingClass + "." + trace[i].MethodName; break; } } return(String.Format("[{0}] {1}:{2}", Thread.CurrentThread.ManagedThreadId, caller, msg)); }
private static String BuildMessage(String format, params object[] args) { String msg = (args == null) ? format : String.Format(format, args); var trace = new Java.Lang.Throwable().FillInStackTrace().GetStackTrace(); String caller = "<unknown>"; Java.Lang.Class volleyLogClass = new VolleyLog().Class; for (int i = 2; i < trace.Length; i++) { var clazz = trace[i].Class; if (!clazz.Equals(volleyLogClass)) { String callingClass = trace[i].ClassName; callingClass = callingClass.Substring(callingClass.LastIndexOf('.') + 1); callingClass = callingClass.Substring(callingClass.LastIndexOf('$') + 1); caller = callingClass + "." + trace[i].MethodName; break; } } return String.Format("[{0}] {1}:{2}", Thread.CurrentThread.ManagedThreadId, caller, msg); }