// Path: logful/src/main/java/com/getui/logful/security/DefaultSecurityProvider.java
// public class DefaultSecurityProvider implements SecurityProvider {
// 
//     private byte[] passwordData;
// 
//     private byte[] saltData;
// 
//     @Override
//     public byte[] password() {
//         if (passwordData == null) {
//             this.passwordData = SystemConfig.appKey().getBytes();
//         }
//         return passwordData;
//     }
// 
//     @Override
//     public byte[] salt() {
//         if (saltData == null) {
//             this.saltData = UIDUtils.uid().getBytes();
//         }
//         return saltData;
//     }
// }
// 
// Path: logful/src/main/java/com/getui/logful/security/SecurityProvider.java
// public interface SecurityProvider {
// 
//     byte[] password();
// 
//     byte[] salt();
// 
// }
// 
// Path: logful/src/main/java/com/getui/logful/util/LogUtil.java
// public class LogUtil {
// 
//     public static void d(String tag, String msg) {
//         if (LoggerFactory.isDebug()) {
//             Log.d(tag, msg);
//         }
//     }
// 
//     public static void d(String tag, String msg, Throwable tr) {
//         if (LoggerFactory.isDebug()) {
//             Log.d(tag, msg, tr);
//         }
//     }
// 
//     public static void e(String tag, String msg) {
//         if (LoggerFactory.isDebug()) {
//             Log.e(tag, msg);
//         }
//     }
// 
//     public static void e(String tag, String msg, Throwable tr) {
//         if (LoggerFactory.isDebug()) {
//             Log.e(tag, msg, tr);
//         }
//     }
// 
//     public static void i(String tag, String msg) {
//         if (LoggerFactory.isDebug()) {
//             Log.i(tag, msg);
//         }
//     }
// 
//     public static void i(String tag, String msg, Throwable tr) {
//         if (LoggerFactory.isDebug()) {
//             Log.i(tag, msg, tr);
//         }
//     }
// 
//     public static void v(String tag, String msg, Throwable tr) {
//         if (LoggerFactory.isDebug()) {
//             Log.v(tag, msg, tr);
//         }
//     }
// 
//     public static void v(String tag, String msg) {
//         if (LoggerFactory.isDebug()) {
//             Log.v(tag, msg);
//         }
//     }
// 
//     public static void w(String tag, Throwable tr) {
//         if (LoggerFactory.isDebug()) {
//             Log.w(tag, tr);
//         }
//     }
// 
//     public static void w(String tag, String msg, Throwable tr) {
//         if (LoggerFactory.isDebug()) {
//             Log.w(tag, msg, tr);
//         }
//     }
// 
//     public static void w(String tag, String msg) {
//         if (LoggerFactory.isDebug()) {
//             Log.w(tag, msg);
//         }
//     }
// 
//     public static void wtf(String tag, Throwable tr) {
//         if (LoggerFactory.isDebug()) {
//             Log.wtf(tag, tr);
//         }
//     }
// 
//     public static void wtf(String tag, String msg, Throwable tr) {
//         if (LoggerFactory.isDebug()) {
//             Log.wtf(tag, msg, tr);
//         }
//     }
// 
//     public static void wtf(String tag, String msg) {
//         if (LoggerFactory.isDebug()) {
//             Log.wtf(tag, msg);
//         }
//     }
// }


import com.getui.logful.security.DefaultSecurityProvider;
import com.getui.logful.security.SecurityProvider;
import com.getui.logful.util.LogUtil;
package com.getui.logful;



public class LoggerConfigurator {

    /**
     * 单个日志文件最大字节数（单位：字节）.
     */
    private long logFileMaxSize;

    /**
     * 允许上传日志文件的网络环境.
     */
    private int[] uploadNetworkType;

    /**
     * 需要上传的日志级别.
     */
    private int[] uploadLogLevel;

    /**
     * 是否删除已经上传的日志文件.
     */
    private boolean deleteUploadedLogFile;

    /**
     * 定时刷新日志系统（单位：秒）.
     */
    private long updateSystemFrequency;

    /**
     * 同时上传文件数量.
     */
    private int activeUploadTask;

    /**
     * 同时写入日志文件数量.
     */
    private int activeLogWriter;

    /**
     * 是否捕捉未捕捉的异常信息.
     */
    private boolean caughtException;

    /**
     * 默认的 logger 名称.
     */
    private String defaultLoggerName;

    /**
     * 默认的消息模板.
     */
    private String defaultMsgLayout;

    /**
     * 截图文件压缩质量（1~100）.
     */
    private int screenshotQuality;

    /**
     * 截图文件缩放比例（0.1~1）.
     */
    private float screenshotScale;

    /**
     * 是否使用 jni 加密内容.
     */
    private boolean useNativeCryptor;

// Path: logful/src/main/java/com/getui/logful/security/DefaultSecurityProvider.java
// public class DefaultSecurityProvider implements SecurityProvider {
// 
//     private byte[] passwordData;
// 
//     private byte[] saltData;
// 
//     @Override
//     public byte[] password() {
//         if (passwordData == null) {
//             this.passwordData = SystemConfig.appKey().getBytes();
//         }
//         return passwordData;
//     }
// 
//     @Override
//     public byte[] salt() {
//         if (saltData == null) {
//             this.saltData = UIDUtils.uid().getBytes();
//         }
//         return saltData;
//     }
// }
// 
// Path: logful/src/main/java/com/getui/logful/security/SecurityProvider.java
// public interface SecurityProvider {
// 
//     byte[] password();
// 
//     byte[] salt();
// 
// }
// 
// Path: logful/src/main/java/com/getui/logful/util/LogUtil.java
// public class LogUtil {
// 
//     public static void d(String tag, String msg) {
//         if (LoggerFactory.isDebug()) {
//             Log.d(tag, msg);
//         }
//     }
// 
//     public static void d(String tag, String msg, Throwable tr) {
//         if (LoggerFactory.isDebug()) {
//             Log.d(tag, msg, tr);
//         }
//     }
// 
//     public static void e(String tag, String msg) {
//         if (LoggerFactory.isDebug()) {
//             Log.e(tag, msg);
//         }
//     }
// 
//     public static void e(String tag, String msg, Throwable tr) {
//         if (LoggerFactory.isDebug()) {
//             Log.e(tag, msg, tr);
//         }
//     }
// 
//     public static void i(String tag, String msg) {
//         if (LoggerFactory.isDebug()) {
//             Log.i(tag, msg);
//         }
//     }
// 
//     public static void i(String tag, String msg, Throwable tr) {
//         if (LoggerFactory.isDebug()) {
//             Log.i(tag, msg, tr);
//         }
//     }
// 
//     public static void v(String tag, String msg, Throwable tr) {
//         if (LoggerFactory.isDebug()) {
//             Log.v(tag, msg, tr);
//         }
//     }
// 
//     public static void v(String tag, String msg) {
//         if (LoggerFactory.isDebug()) {
//             Log.v(tag, msg);
//         }
//     }
// 
//     public static void w(String tag, Throwable tr) {
//         if (LoggerFactory.isDebug()) {
//             Log.w(tag, tr);
//         }
//     }
// 
//     public static void w(String tag, String msg, Throwable tr) {
//         if (LoggerFactory.isDebug()) {
//             Log.w(tag, msg, tr);
//         }
//     }
// 
//     public static void w(String tag, String msg) {
//         if (LoggerFactory.isDebug()) {
//             Log.w(tag, msg);
//         }
//     }
// 
//     public static void wtf(String tag, Throwable tr) {
//         if (LoggerFactory.isDebug()) {
//             Log.wtf(tag, tr);
//         }
//     }
// 
//     public static void wtf(String tag, String msg, Throwable tr) {
//         if (LoggerFactory.isDebug()) {
//             Log.wtf(tag, msg, tr);
//         }
//     }
// 
//     public static void wtf(String tag, String msg) {
//         if (LoggerFactory.isDebug()) {
//             Log.wtf(tag, msg);
//         }
//     }
// }


// Path: logful/src/main/java/com/getui/logful/LoggerConfigurator.java
import com.getui.logful.security.DefaultSecurityProvider;
import com.getui.logful.security.SecurityProvider;
import com.getui.logful.util.LogUtil;

package com.getui.logful;



public class LoggerConfigurator {

    /**
     * 单个日志文件最大字节数（单位：字节）.
     */
    private long logFileMaxSize;

    /**
     * 允许上传日志文件的网络环境.
     */
    private int[] uploadNetworkType;

    /**
     * 需要上传的日志级别.
     */
    private int[] uploadLogLevel;

    /**
     * 是否删除已经上传的日志文件.
     */
    private boolean deleteUploadedLogFile;

    /**
     * 定时刷新日志系统（单位：秒）.
     */
    private long updateSystemFrequency;

    /**
     * 同时上传文件数量.
     */
    private int activeUploadTask;

    /**
     * 同时写入日志文件数量.
     */
    private int activeLogWriter;

    /**
     * 是否捕捉未捕捉的异常信息.
     */
    private boolean caughtException;

    /**
     * 默认的 logger 名称.
     */
    private String defaultLoggerName;

    /**
     * 默认的消息模板.
     */
    private String defaultMsgLayout;

    /**
     * 截图文件压缩质量（1~100）.
     */
    private int screenshotQuality;

    /**
     * 截图文件缩放比例（0.1~1）.
     */
    private float screenshotScale;

    /**
     * 是否使用 jni 加密内容.
     */
    private boolean useNativeCryptor;

    private SecurityProvider securityProvider;