| Index: webrtc/base/java/src/org/webrtc/Logging.java
|
| diff --git a/webrtc/base/java/src/org/webrtc/Logging.java b/webrtc/base/java/src/org/webrtc/Logging.java
|
| deleted file mode 100644
|
| index 643b8cf7a91bf3d787c1f740ebc4ff62d154d44e..0000000000000000000000000000000000000000
|
| --- a/webrtc/base/java/src/org/webrtc/Logging.java
|
| +++ /dev/null
|
| @@ -1,200 +0,0 @@
|
| -/*
|
| - * Copyright (c) 2015 The WebRTC project authors. All Rights Reserved.
|
| - *
|
| - * Use of this source code is governed by a BSD-style license
|
| - * that can be found in the LICENSE file in the root of the source
|
| - * tree. An additional intellectual property rights grant can be found
|
| - * in the file PATENTS. All contributing project authors may
|
| - * be found in the AUTHORS file in the root of the source tree.
|
| - */
|
| -
|
| -package org.webrtc;
|
| -
|
| -import java.io.PrintWriter;
|
| -import java.io.StringWriter;
|
| -import java.util.EnumSet;
|
| -import java.util.logging.Level;
|
| -import java.util.logging.Logger;
|
| -
|
| -/**
|
| - * Java wrapper for WebRTC logging. Logging defaults to java.util.logging.Logger, but will switch to
|
| - * native logging (rtc::LogMessage) if one of the following static functions are called from the
|
| - * app:
|
| - * - Logging.enableLogThreads
|
| - * - Logging.enableLogTimeStamps
|
| - * - Logging.enableTracing
|
| - * - Logging.enableLogToDebugOutput
|
| - * Using native logging requires the presence of the jingle_peerconnection_so library.
|
| - */
|
| -public class Logging {
|
| - private static final Logger fallbackLogger = createFallbackLogger();
|
| - private static volatile boolean tracingEnabled;
|
| - private static volatile boolean loggingEnabled;
|
| - private static enum NativeLibStatus { UNINITIALIZED, LOADED, FAILED }
|
| - private static volatile NativeLibStatus nativeLibStatus = NativeLibStatus.UNINITIALIZED;
|
| -
|
| - private static Logger createFallbackLogger() {
|
| - final Logger fallbackLogger = Logger.getLogger("org.webrtc.Logging");
|
| - fallbackLogger.setLevel(Level.ALL);
|
| - return fallbackLogger;
|
| - }
|
| -
|
| - private static boolean loadNativeLibrary() {
|
| - if (nativeLibStatus == NativeLibStatus.UNINITIALIZED) {
|
| - try {
|
| - System.loadLibrary("jingle_peerconnection_so");
|
| - nativeLibStatus = NativeLibStatus.LOADED;
|
| - } catch (UnsatisfiedLinkError t) {
|
| - nativeLibStatus = NativeLibStatus.FAILED;
|
| - fallbackLogger.log(Level.WARNING, "Failed to load jingle_peerconnection_so: ", t);
|
| - }
|
| - }
|
| - return nativeLibStatus == NativeLibStatus.LOADED;
|
| - }
|
| -
|
| - // Keep in sync with webrtc/common_types.h:TraceLevel.
|
| - public enum TraceLevel {
|
| - TRACE_NONE(0x0000),
|
| - TRACE_STATEINFO(0x0001),
|
| - TRACE_WARNING(0x0002),
|
| - TRACE_ERROR(0x0004),
|
| - TRACE_CRITICAL(0x0008),
|
| - TRACE_APICALL(0x0010),
|
| - TRACE_DEFAULT(0x00ff),
|
| - TRACE_MODULECALL(0x0020),
|
| - TRACE_MEMORY(0x0100),
|
| - TRACE_TIMER(0x0200),
|
| - TRACE_STREAM(0x0400),
|
| - TRACE_DEBUG(0x0800),
|
| - TRACE_INFO(0x1000),
|
| - TRACE_TERSEINFO(0x2000),
|
| - TRACE_ALL(0xffff);
|
| -
|
| - public final int level;
|
| - TraceLevel(int level) {
|
| - this.level = level;
|
| - }
|
| - }
|
| -
|
| - // Keep in sync with webrtc/base/logging.h:LoggingSeverity.
|
| - public enum Severity { LS_SENSITIVE, LS_VERBOSE, LS_INFO, LS_WARNING, LS_ERROR, LS_NONE }
|
| -
|
| - public static void enableLogThreads() {
|
| - if (!loadNativeLibrary()) {
|
| - fallbackLogger.log(Level.WARNING, "Cannot enable log thread because native lib not loaded.");
|
| - return;
|
| - }
|
| - nativeEnableLogThreads();
|
| - }
|
| -
|
| - public static void enableLogTimeStamps() {
|
| - if (!loadNativeLibrary()) {
|
| - fallbackLogger.log(
|
| - Level.WARNING, "Cannot enable log timestamps because native lib not loaded.");
|
| - return;
|
| - }
|
| - nativeEnableLogTimeStamps();
|
| - }
|
| -
|
| - // Enable tracing to |path| of messages of |levels|.
|
| - // On Android, use "logcat:" for |path| to send output there.
|
| - // Note: this function controls the output of the WEBRTC_TRACE() macros.
|
| - public static synchronized void enableTracing(String path, EnumSet<TraceLevel> levels) {
|
| - if (!loadNativeLibrary()) {
|
| - fallbackLogger.log(Level.WARNING, "Cannot enable tracing because native lib not loaded.");
|
| - return;
|
| - }
|
| -
|
| - if (tracingEnabled) {
|
| - return;
|
| - }
|
| - int nativeLevel = 0;
|
| - for (TraceLevel level : levels) {
|
| - nativeLevel |= level.level;
|
| - }
|
| - nativeEnableTracing(path, nativeLevel);
|
| - tracingEnabled = true;
|
| - }
|
| -
|
| - // Enable diagnostic logging for messages of |severity| to the platform debug
|
| - // output. On Android, the output will be directed to Logcat.
|
| - // Note: this function starts collecting the output of the LOG() macros.
|
| - public static synchronized void enableLogToDebugOutput(Severity severity) {
|
| - if (!loadNativeLibrary()) {
|
| - fallbackLogger.log(Level.WARNING, "Cannot enable logging because native lib not loaded.");
|
| - return;
|
| - }
|
| - nativeEnableLogToDebugOutput(severity.ordinal());
|
| - loggingEnabled = true;
|
| - }
|
| -
|
| - public static void log(Severity severity, String tag, String message) {
|
| - if (loggingEnabled) {
|
| - nativeLog(severity.ordinal(), tag, message);
|
| - return;
|
| - }
|
| -
|
| - // Fallback to system log.
|
| - Level level;
|
| - switch (severity) {
|
| - case LS_ERROR:
|
| - level = Level.SEVERE;
|
| - break;
|
| - case LS_WARNING:
|
| - level = Level.WARNING;
|
| - break;
|
| - case LS_INFO:
|
| - level = Level.INFO;
|
| - break;
|
| - default:
|
| - level = Level.FINE;
|
| - break;
|
| - }
|
| - fallbackLogger.log(level, tag + ": " + message);
|
| - }
|
| -
|
| - public static void d(String tag, String message) {
|
| - log(Severity.LS_INFO, tag, message);
|
| - }
|
| -
|
| - public static void e(String tag, String message) {
|
| - log(Severity.LS_ERROR, tag, message);
|
| - }
|
| -
|
| - public static void w(String tag, String message) {
|
| - log(Severity.LS_WARNING, tag, message);
|
| - }
|
| -
|
| - public static void e(String tag, String message, Throwable e) {
|
| - log(Severity.LS_ERROR, tag, message);
|
| - log(Severity.LS_ERROR, tag, e.toString());
|
| - log(Severity.LS_ERROR, tag, getStackTraceString(e));
|
| - }
|
| -
|
| - public static void w(String tag, String message, Throwable e) {
|
| - log(Severity.LS_WARNING, tag, message);
|
| - log(Severity.LS_WARNING, tag, e.toString());
|
| - log(Severity.LS_WARNING, tag, getStackTraceString(e));
|
| - }
|
| -
|
| - public static void v(String tag, String message) {
|
| - log(Severity.LS_VERBOSE, tag, message);
|
| - }
|
| -
|
| - private static String getStackTraceString(Throwable e) {
|
| - if (e == null) {
|
| - return "";
|
| - }
|
| -
|
| - StringWriter sw = new StringWriter();
|
| - PrintWriter pw = new PrintWriter(sw);
|
| - e.printStackTrace(pw);
|
| - return sw.toString();
|
| - }
|
| -
|
| - private static native void nativeEnableTracing(String path, int nativeLevels);
|
| - private static native void nativeEnableLogToDebugOutput(int nativeSeverity);
|
| - private static native void nativeEnableLogThreads();
|
| - private static native void nativeEnableLogTimeStamps();
|
| - private static native void nativeLog(int severity, String tag, String message);
|
| -}
|
|
|