Skip to content
This repository was archived by the owner on Apr 28, 2022. It is now read-only.

Change log handling. #368

Merged
merged 1 commit into from
Oct 8, 2014
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 2 additions & 3 deletions library/src/main/java/org/onepf/oms/OpenIabHelper.java
Original file line number Diff line number Diff line change
@@ -373,7 +373,6 @@ public OpenIabHelper(Context context, Options options) {
}

checkOptions();
Logger.init();
}

private ExecutorService setupExecutorService;
@@ -393,7 +392,6 @@ public void startSetup(@NotNull final OnIabSetupFinishedListener listener) {
if (setupState != SETUP_RESULT_NOT_STARTED && setupState != SETUP_RESULT_FAILED) {
throw new IllegalStateException("Couldn't be set up. Current state: " + setupStateToString(setupState));
}
Logger.init();
setupState = SETUP_IN_PROGRESS;
setupExecutorService = Executors.newSingleThreadExecutor();

@@ -1305,7 +1303,7 @@ public static boolean isDebugLog() {
* Will be removed in version 1.0.
*/
public static void enableDebugLogging(boolean enabled) {
Logger.setLoggable(enabled);
enableDebuglLogging(enabled, null);
}

/**
@@ -1314,6 +1312,7 @@ public static void enableDebugLogging(boolean enabled) {
* Will be removed in version 1.0.
*/
public static void enableDebuglLogging(boolean enabled, String tag) {
Logger.setLogTag(tag);
Logger.setLoggable(enabled);
}

Large diffs are not rendered by default.

95 changes: 44 additions & 51 deletions library/src/main/java/org/onepf/oms/util/Logger.java
Original file line number Diff line number Diff line change
@@ -22,120 +22,113 @@
/**
* Utility for log events. For log event set
* {@link #setLoggable(boolean)} to true.
* <p/>
* For correct use log event with timing like {@link #dWithTimeFromUp(String)}
* or {@link #dWithTimeFromUp(Object...)}, you must init start time via call {@link #init}.
*
* @author Kirill Rozov
* @since 25.07.14
*/
public final class Logger {
public static final String LOG_TAG = "OpenIabLibrary";

private Logger() {}

public static final String LOG_TAG = "OpenIAB";

private static String logTag = LOG_TAG;
private static boolean loggable;

private static long started = System.currentTimeMillis();
public static boolean isLoggable() {
return loggable;
}

private Logger() {
public static void setLoggable(boolean loggable) {
Logger.loggable = loggable;
}

public static void init() {
started = System.currentTimeMillis();
@Deprecated
public static void init() {}

public static void setLogTag(final String logTag) {
Logger.logTag = TextUtils.isEmpty(logTag) ? LOG_TAG : logTag;
}

public static void d(Object... values) {
if (loggable && Log.isLoggable(LOG_TAG, Log.DEBUG)) {
Log.d(LOG_TAG, TextUtils.join("", values));
if (loggable || Log.isLoggable(logTag, Log.DEBUG)) {
Log.d(logTag, TextUtils.join("", values));
}
}

public static void i(Object... values) {
if (loggable && Log.isLoggable(LOG_TAG, Log.INFO)) {
Log.i(LOG_TAG, TextUtils.join("", values));
if (loggable || Log.isLoggable(logTag, Log.INFO)) {
Log.i(logTag, TextUtils.join("", values));
}
}

public static void i(String msg) {
if (loggable && Log.isLoggable(LOG_TAG, Log.INFO)) {
Log.i(LOG_TAG, msg);
if (loggable || Log.isLoggable(logTag, Log.INFO)) {
Log.i(logTag, msg);
}
}

public static void d(String msg) {
if (loggable && Log.isLoggable(LOG_TAG, Log.DEBUG)) {
Log.d(LOG_TAG, msg);
if (loggable || Log.isLoggable(logTag, Log.DEBUG)) {
Log.d(logTag, msg);
}
}

@Deprecated
public static void dWithTimeFromUp(String msg) {
if (loggable && Log.isLoggable(LOG_TAG, Log.DEBUG)) {
Log.d(LOG_TAG, in() + ' ' + msg);
}
d(msg);
}

@Deprecated
public static void dWithTimeFromUp(Object... msgs) {
if (loggable && Log.isLoggable(LOG_TAG, Log.DEBUG)) {
Log.d(LOG_TAG, in() + ' ' + TextUtils.join("", msgs));
}
d(msgs);
}

public static void e(Object... msgs) {
if (loggable && Log.isLoggable(LOG_TAG, Log.ERROR)) {
Log.e(LOG_TAG, TextUtils.join("", msgs));
if (loggable || Log.isLoggable(logTag, Log.ERROR)) {
Log.e(logTag, TextUtils.join("", msgs));
}
}

public static void e(String msg, Throwable e) {
if (loggable && Log.isLoggable(LOG_TAG, Log.ERROR)) {
Log.e(LOG_TAG, msg, e);
if (loggable || Log.isLoggable(logTag, Log.ERROR)) {
Log.e(logTag, msg, e);
}
}


public static void e(String msg) {
if (loggable && Log.isLoggable(LOG_TAG, Log.ERROR)) {
Log.e(LOG_TAG, msg);
if (loggable || Log.isLoggable(logTag, Log.ERROR)) {
Log.e(logTag, msg);
}
}

public static void e(Throwable e, Object... msgs) {
if (loggable && Log.isLoggable(LOG_TAG, Log.ERROR)) {
Log.e(LOG_TAG, TextUtils.join("", msgs), e);
if (loggable || Log.isLoggable(logTag, Log.ERROR)) {
Log.e(logTag, TextUtils.join("", msgs), e);
}
}

public static void w(String msg) {
if (loggable && Log.isLoggable(LOG_TAG, Log.WARN)) {
Log.w(LOG_TAG, msg);
if (loggable || Log.isLoggable(logTag, Log.WARN)) {
Log.w(logTag, msg);
}
}

public static void w(String msg, Throwable e) {
if (loggable && Log.isLoggable(LOG_TAG, Log.WARN)) {
Log.w(LOG_TAG, msg, e);
if (loggable || Log.isLoggable(logTag, Log.WARN)) {
Log.w(logTag, msg, e);
}
}

public static void v(Object... msgs) {
if (loggable && Log.isLoggable(LOG_TAG, Log.VERBOSE)) {
Log.v(LOG_TAG, TextUtils.join("", msgs));
if (loggable || Log.isLoggable(logTag, Log.VERBOSE)) {
Log.v(logTag, TextUtils.join("", msgs));
}
}

public static void w(Object... values) {
if (loggable && Log.isLoggable(LOG_TAG, Log.VERBOSE)) {
Log.w(LOG_TAG, TextUtils.join("", values));
if (loggable || Log.isLoggable(logTag, Log.VERBOSE)) {
Log.w(logTag, TextUtils.join("", values));
}
}

public static boolean isLoggable() {
return loggable;
}

public static void setLoggable(boolean loggable) {
Logger.loggable = loggable;
}

private static String in() {
return "in: " + (System.currentTimeMillis() - started);
}
}