package com.gzsll.hupu;
/**
* Created by sll on 2016/6/30.
*/
/**
* Wrapper API for sending log output.
*/
public class Logger {
protected static final String TAG = "TLint";
public static boolean DEBUG = true;
private Logger() {
}
/**
* Send a VERBOSE log message.
*
* @param msg The message you would like logged.
*/
public static void v(String msg) {
if (DEBUG) android.util.Log.v(TAG, buildMessage(msg));
}
/**
* Send a VERBOSE log message and log the exception.
*
* @param msg The message you would like logged.
* @param thr An exception to log
*/
public static void v(String msg, Throwable thr) {
if (DEBUG) android.util.Log.v(TAG, buildMessage(msg), thr);
}
/**
* Send a DEBUG log message.
*/
public static void d(String msg) {
if (DEBUG) android.util.Log.d(TAG, buildMessage(msg));
}
/**
* Send a DEBUG log message and log the exception.
*
* @param msg The message you would like logged.
* @param thr An exception to log
*/
public static void d(String msg, Throwable thr) {
if (DEBUG) android.util.Log.d(TAG, buildMessage(msg), thr);
}
/**
* Send an INFO log message.
*
* @param msg The message you would like logged.
*/
public static void i(String msg) {
if (DEBUG) android.util.Log.i(TAG, buildMessage(msg));
}
/**
* Send a INFO log message and log the exception.
*
* @param msg The message you would like logged.
* @param thr An exception to log
*/
public static void i(String msg, Throwable thr) {
if (DEBUG) android.util.Log.i(TAG, buildMessage(msg), thr);
}
/**
* Send an ERROR log message.
*
* @param msg The message you would like logged.
*/
public static void e(String msg) {
if (DEBUG) android.util.Log.e(TAG, buildMessage(msg));
}
/**
* Send a WARN log message
*
* @param msg The message you would like logged.
*/
public static void w(String msg) {
if (DEBUG) android.util.Log.w(TAG, buildMessage(msg));
}
/**
* Send a WARN log message and log the exception.
*
* @param msg The message you would like logged.
* @param thr An exception to log
*/
public static void w(String msg, Throwable thr) {
if (DEBUG) android.util.Log.w(TAG, buildMessage(msg), thr);
}
/**
* Send an empty WARN log message and log the exception.
*
* @param thr An exception to log
*/
public static void w(Throwable thr) {
if (DEBUG) android.util.Log.w(TAG, buildMessage(""), thr);
}
/**
* Send an ERROR log message and log the exception.
*
* @param msg The message you would like logged.
* @param thr An exception to log
*/
public static void e(String msg, Throwable thr) {
if (DEBUG) android.util.Log.e(TAG, buildMessage(msg), thr);
}
/**
* Building Message
*
* @param msg The message you would like logged.
* @return Message String
*/
protected static String buildMessage(String msg) {
StackTraceElement caller = new Throwable().fillInStackTrace().getStackTrace()[2];
return new StringBuilder().append(caller.getFileName())
.append(".")
.append(caller.getMethodName())
.append("(): ")
.append(msg)
.toString();
}
}