package com.example.administrator.cookman.utils.Logger; import org.json.JSONObject; /** * Logger is a wrapper of {@link android.util.Log} * But more pretty, simple and powerful */ public final class Logger { public static final int DEBUG = 3; public static final int ERROR = 6; public static final int ASSERT = 7; public static final int INFO = 4; public static final int VERBOSE = 2; public static final int WARN = 5; private static final String DEFAULT_TAG = "PRETTYLOGGER"; private static Printer printer = new LoggerPrinter(); private static String Tag = DEFAULT_TAG; //no instance private Logger() { } /** * It is used to get the settings object in order to change settings * * @return the settings object */ public static Settings init() { return init(DEFAULT_TAG); } /** * It is used to change the tag * * @param tag is the given string which will be used in Logger as TAG */ public static Settings init(String tag) { printer = new LoggerPrinter(); return printer.init(tag); } public static void resetSettings() { printer.resetSettings(); } public static Printer t(String tag) { return printer.t(tag, printer.getSettings().getMethodCount()); } public static Printer t(int methodCount) { return printer.t(null, methodCount); } public static Printer t(String tag, int methodCount) { return printer.t(tag, methodCount); } public static void log(int priority, String tag, String message, Throwable throwable) { printer.log(priority, tag, message, throwable); } public static void d(String message) { printer.d(message); } public static void d(String tag, String message) { printer.d2(tag, message); } public static void d(Object object) { printer.d(object); } public static void e(String message) { printer.e(message); } public static void e(String tag, String message) { printer.e2(tag, message); } // public static void e(Throwable throwable, String message, Object... args) { // printer.e(throwable, message, args); // } public static void i(String message) { printer.i(message); } public static void i(String tag, String message) { printer.i2(tag, message); } public static void v(String tag, String message) { printer.v2(tag, message); } public static void v(String message) { printer.v(message); } public static void w(String message) { printer.w(message); } public static void w(String tag, String message) { printer.w2(tag, message); } public static void wtf(String message) { printer.wtf(message); } public static void wtf(String tag, String message) { printer.wtf2(tag, message); } /** * Formats the json content and print it * * @param json the json content */ public static void json(String json) { printer.json(json); } public static void json(String tag, String json) { printer.json2(tag, json); } public static void json(String tag, JSONObject json) { if(json == null){ printer.json2(tag, ""); } else { printer.json2(tag, json.toString()); } } /** * Formats the json content and print it * * @param xml the xml content */ public static void xml(String xml) { printer.xml(xml); } public static void xml(String tag, String xml) { printer.xml2(tag, xml); } public static LogLevel getLogLevel() { return printer.getSettings().getLogLevel(); } }