// Path: liquid/src/main/java/io/lqd/sdk/LQLog.java
// public class LQLog {
// 
//     private static int LOG_LEVEL = 2;
// 
//     public static final int PATHS = 7;
//     public static final int HTTP = 6;
//     public static final int DATA = 5;
//     public static final int INFO_VERBOSE = 4;
//     public static final int INFO = 3;
//     public static final int WARNING = 2;
//     public static final int ERROR = 1;
// 
//     /**
//      * Changes the current Log level (Debugging proposes)
//      * @param level LogLevel
//      */
//     public static void setLevel(int level) {
//         if( level < 1 || level > 7)
//             throw new IllegalArgumentException("Log levels are between 1 and 7");
//         LOG_LEVEL = level;
//     }
// 
//     /**
//      * Gets the current log level
//      * @return the log level
//      */
//     public static int getLevel() {
//         return LOG_LEVEL;
//     }
// 
//     public static void paths(String message) {
//         if(LOG_LEVEL >= PATHS) {
//             Log.d(Liquid.TAG_LIQUID, message);
//         }
//     }
// 
//     public static void http(String message) {
//         if(LOG_LEVEL >= HTTP) {
//             Log.d(Liquid.TAG_LIQUID, message);
//         }
//     }
// 
//     public static void data(String message) {
//         if(LOG_LEVEL >= DATA) {
//             Log.v(Liquid.TAG_LIQUID, message);
//         }
//     }
// 
//     public static void infoVerbose(String message) {
//         if(LOG_LEVEL >= INFO_VERBOSE) {
//             Log.i(Liquid.TAG_LIQUID, message);
//         }
//     }
// 
//     public static void warning(String message) {
//         if(LOG_LEVEL >= WARNING) {
//             Log.w(Liquid.TAG_LIQUID, message);
//         }
//     }
// 
//     public static void info(String message) {
//         if(LOG_LEVEL >= INFO) {
//             Log.i(Liquid.TAG_LIQUID, message);
//         }
//     }
// 
//     public static void error(String message) {
//         if(LOG_LEVEL >= ERROR) {
//             Log.e(Liquid.TAG_LIQUID, message);
//         }
//     }
// 
// }


import org.json.JSONException;
import org.json.JSONObject;
import java.util.Date;
import java.util.HashMap;
import io.lqd.sdk.LQLog;
import io.lqd.sdk.LiquidTools;

    public void setName(String name) {
        if ((name == null) || (name.length() == 0)) {
            mName = UNNAMED_EVENT;
        } else {
            mName = name;
        }
    }

    public String getName() {
        return mName;
    }

    // JSON
    public JSONObject toJSON() {
        JSONObject json = new JSONObject();
        try {
            if(mAttributes != null) {
                for(String key : mAttributes.keySet()){
                    if(mAttributes.get(key) instanceof Date) {
                        json.put(key, LiquidTools.dateToString((Date) mAttributes.get(key)));
                    } else {
                        json.put(key, mAttributes.get(key));
                    }
                }
            }
            json.put("name", mName);
            json.put("date",LiquidTools.dateToString(mDate));
            return json;
        } catch (JSONException e) {
// Path: liquid/src/main/java/io/lqd/sdk/LQLog.java
// public class LQLog {
// 
//     private static int LOG_LEVEL = 2;
// 
//     public static final int PATHS = 7;
//     public static final int HTTP = 6;
//     public static final int DATA = 5;
//     public static final int INFO_VERBOSE = 4;
//     public static final int INFO = 3;
//     public static final int WARNING = 2;
//     public static final int ERROR = 1;
// 
//     /**
//      * Changes the current Log level (Debugging proposes)
//      * @param level LogLevel
//      */
//     public static void setLevel(int level) {
//         if( level < 1 || level > 7)
//             throw new IllegalArgumentException("Log levels are between 1 and 7");
//         LOG_LEVEL = level;
//     }
// 
//     /**
//      * Gets the current log level
//      * @return the log level
//      */
//     public static int getLevel() {
//         return LOG_LEVEL;
//     }
// 
//     public static void paths(String message) {
//         if(LOG_LEVEL >= PATHS) {
//             Log.d(Liquid.TAG_LIQUID, message);
//         }
//     }
// 
//     public static void http(String message) {
//         if(LOG_LEVEL >= HTTP) {
//             Log.d(Liquid.TAG_LIQUID, message);
//         }
//     }
// 
//     public static void data(String message) {
//         if(LOG_LEVEL >= DATA) {
//             Log.v(Liquid.TAG_LIQUID, message);
//         }
//     }
// 
//     public static void infoVerbose(String message) {
//         if(LOG_LEVEL >= INFO_VERBOSE) {
//             Log.i(Liquid.TAG_LIQUID, message);
//         }
//     }
// 
//     public static void warning(String message) {
//         if(LOG_LEVEL >= WARNING) {
//             Log.w(Liquid.TAG_LIQUID, message);
//         }
//     }
// 
//     public static void info(String message) {
//         if(LOG_LEVEL >= INFO) {
//             Log.i(Liquid.TAG_LIQUID, message);
//         }
//     }
// 
//     public static void error(String message) {
//         if(LOG_LEVEL >= ERROR) {
//             Log.e(Liquid.TAG_LIQUID, message);
//         }
//     }
// 
// }


// Path: liquid/src/main/java/io/lqd/sdk/model/LQEvent.java
import org.json.JSONException;
import org.json.JSONObject;
import java.util.Date;
import java.util.HashMap;
import io.lqd.sdk.LQLog;
import io.lqd.sdk.LiquidTools;


    public void setName(String name) {
        if ((name == null) || (name.length() == 0)) {
            mName = UNNAMED_EVENT;
        } else {
            mName = name;
        }
    }

    public String getName() {
        return mName;
    }

    // JSON
    public JSONObject toJSON() {
        JSONObject json = new JSONObject();
        try {
            if(mAttributes != null) {
                for(String key : mAttributes.keySet()){
                    if(mAttributes.get(key) instanceof Date) {
                        json.put(key, LiquidTools.dateToString((Date) mAttributes.get(key)));
                    } else {
                        json.put(key, mAttributes.get(key));
                    }
                }
            }
            json.put("name", mName);
            json.put("date",LiquidTools.dateToString(mDate));
            return json;
        } catch (JSONException e) {
            LQLog.error("LQEvent toJSON: " + e.getMessage());