Android Open Source - liquid-sdk-android L Q Event






From Project

Back to project page liquid-sdk-android.

License

The source code is released under:

Apache License

If you think the Android project liquid-sdk-android listed in this page is inappropriate, such as containing malicious code/tools or violating the copyright, please email info at java2s dot com, thanks.

Java Source Code

/**
 * Copyright 2014-present Liquid Data Intelligence S.A.
 */* w  w  w.  j  a  va 2 s .  c  o  m*/
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *    http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

package io.lqd.sdk.model;

import io.lqd.sdk.LQLog;
import io.lqd.sdk.LiquidTools;

import java.util.Date;
import java.util.HashMap;

import org.json.JSONException;
import org.json.JSONObject;

public class LQEvent extends LQModel {

    private static final long serialVersionUID = 4817275328778708775L;

    private String mName;
    private HashMap<String,Object> mAttributes;
    private Date mDate;

    // Initialization
    public LQEvent(String name, HashMap<String,Object> attributes, Date date){
        mName = name;
        if(attributes == null){
            mAttributes = new HashMap<String,Object>();
        } else {
            mAttributes = attributes;
        }
        mDate = date;
    }

    public LQEvent(String name, HashMap<String,Object> attributes) {
        this(name,attributes, new Date());
    }

    // 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());
        }

        return null;
    }

    public static boolean hasvalidName(String name, boolean raiseException) {
        boolean isValid = name == null || name.length() == 0 || name.charAt(0) != '_';
        if(!isValid) {
            LiquidTools.exceptionOrLog(raiseException, "Event can't begin with \' _ \' character ");
        }
        return isValid;
    }
}




Java Source Code List

io.lqd.sdk.ISO8601Utils.java
io.lqd.sdk.LQLog.java
io.lqd.sdk.LQPushHandler.java
io.lqd.sdk.LQQueuer.java
io.lqd.sdk.LQRequestFactory.java
io.lqd.sdk.LiquidOnEventListener.java
io.lqd.sdk.LiquidTools.java
io.lqd.sdk.Liquid.java
io.lqd.sdk.UniqueTime.java
io.lqd.sdk.model.LQDataPoint.java
io.lqd.sdk.model.LQDevice.java
io.lqd.sdk.model.LQEvent.java
io.lqd.sdk.model.LQLiquidPackage.java
io.lqd.sdk.model.LQModel.java
io.lqd.sdk.model.LQNetworkRequest.java
io.lqd.sdk.model.LQNetworkResponse.java
io.lqd.sdk.model.LQSession.java
io.lqd.sdk.model.LQTarget.java
io.lqd.sdk.model.LQUser.java
io.lqd.sdk.model.LQValue.java
io.lqd.sdk.model.LQVariable.java