// Path: common-android-utils/src/main/java/com/common/android/utils/ContextHelper.java
// @Nullable
// public static Context getContext() {
//     return context != null
//             ? context.get()
//             : null;
// }
// 
// Path: common-android-utils/src/main/java/com/common/android/utils/extensions/CollectionExtensions.java
// public static boolean isEmpty(@Nullable final Collection<?> collection) {
//     return collection == null || collection.isEmpty();
// }


import android.support.annotation.NonNull;
import android.support.annotation.Nullable;
import java.util.ArrayList;
import java.util.List;
import static com.common.android.utils.ContextHelper.getContext;
import static com.common.android.utils.extensions.CollectionExtensions.isEmpty;

    /**
     * Representing Error-Logging level.
     *
     * @param message - Actual logging message.
     */
    public static void e(@NonNull final String tag, @Nullable final String message) {
        if (allowLogging(Level.ERROR))
            for (ILogger logger : loggers)
                logger.error(tag, "" + message);
    }

    /**
     * Representing Error logging of throwable.
     *
     * @param throwable - Actual throwable.
     */
    public static void printStackTrace(@Nullable final Throwable throwable) {
        if (throwable == null) return;
        if (allowLogging(Level.ERROR)) throwable.printStackTrace();
    }

    public static void v(@Nullable final String message) {
        v(getTag(), message);
    }

    public static void d(@Nullable final String message) {
        d(getTag(), message);
    }

// Path: common-android-utils/src/main/java/com/common/android/utils/ContextHelper.java
// @Nullable
// public static Context getContext() {
//     return context != null
//             ? context.get()
//             : null;
// }
// 
// Path: common-android-utils/src/main/java/com/common/android/utils/extensions/CollectionExtensions.java
// public static boolean isEmpty(@Nullable final Collection<?> collection) {
//     return collection == null || collection.isEmpty();
// }


// Path: common-android-utils/src/main/java/com/common/android/utils/logging/Logger.java
import android.support.annotation.NonNull;
import android.support.annotation.Nullable;
import java.util.ArrayList;
import java.util.List;
import static com.common.android.utils.ContextHelper.getContext;
import static com.common.android.utils.extensions.CollectionExtensions.isEmpty;


    /**
     * Representing Error-Logging level.
     *
     * @param message - Actual logging message.
     */
    public static void e(@NonNull final String tag, @Nullable final String message) {
        if (allowLogging(Level.ERROR))
            for (ILogger logger : loggers)
                logger.error(tag, "" + message);
    }

    /**
     * Representing Error logging of throwable.
     *
     * @param throwable - Actual throwable.
     */
    public static void printStackTrace(@Nullable final Throwable throwable) {
        if (throwable == null) return;
        if (allowLogging(Level.ERROR)) throwable.printStackTrace();
    }

    public static void v(@Nullable final String message) {
        v(getTag(), message);
    }

    public static void d(@Nullable final String message) {
        d(getTag(), message);
    }

    public static void i(@Nullable final String message) {