Rev 5072 | Blame | Compare with Previous | Last modification | View Log | RSS feed
package in.shop2020.datalogger.event;import in.shop2020.datalogger.EventType;import java.text.ParseException;import java.text.SimpleDateFormat;import java.util.Date;import org.json.JSONObject;public class Event {private static SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd/HH:mm:ss.SSS/zzz");protected Date time;protected String sessionId;protected Long userId;protected String userEmail;protected EventType eventType;public Event(String[] eventFileds) {try {time = sdf.parse(eventFileds[0].trim());} catch (ParseException e) {e.printStackTrace();}try {eventType = EventType.valueOf(eventFileds[1].trim());sessionId = eventFileds[2].trim();userId = Long.parseLong(eventFileds[3].trim());userEmail = eventFileds[4].trim();} catch (ArrayIndexOutOfBoundsException e) {e.printStackTrace();}catch (NumberFormatException e) {userId = -1l;e.printStackTrace();}}public static Event getInstance(EventType eType, String aSessionId, long aUserId, String email, String[] logData){return new Event(eType, aSessionId, aUserId, email, logData);}public Event(EventType eType, String aSessionId, long aUserId, String email) {eventType = eType;sessionId = aSessionId;userId = aUserId;userEmail = email;}public Event(EventType eType, String aSessionId, long aUserId, String email, String[] logData) {eventType = eType;sessionId = aSessionId;userId = aUserId;userEmail = email;}public static Event createEvent(EventType eType, String sessionId, long userId, String email, String[] logData) {switch (eType) {case ADD_ADDRESS:return new AddAddress(eType, sessionId, userId, email, logData);case DELETE_ADDRESS:return new DeleteAddress(eType, sessionId, userId, email, logData);case SET_DEFAULT_ADDRESS:return new SetDefaultAddress(eType, sessionId, userId, email,logData);case ADD_TO_CART:return new AddToCart(eType, sessionId, userId, email, logData);case DELETE_FROM_CART:return new DeleteFromCart(eType, sessionId, userId, email, logData);case UPDATE_CART_QUANTITY:return new UpdateCartQuantity(eType, sessionId, userId, email,logData);case UPDATE_CART_QUANTITY_FAILED:return new UpdateCartQuantityFailed(eType, sessionId, userId,email, logData);case PAYMENT_SUCCESS:return new PaymentSuccess(eType, sessionId, userId, email, logData);case PAYMENT_FAILURE:return new PaymentFailure(eType, sessionId, userId, email, logData);case PRODUCT_VIEW:return new ProductView(eType, sessionId, userId, email, logData);case PRODUCT_SEARCH:return new ProductSearch(eType, sessionId, userId, email, logData);case PRODUCT_COMPARE:return new ProductCompare(eType, sessionId, userId, email, logData);case RESEARCH_ADD:return new ResearchAdd(eType, sessionId, userId, email, logData);case RESEARCH_DELETE:return new ResearchDelete(eType, sessionId, userId, email, logData);case REGISTER_SUCCESS:return new RegisterSuccess(eType, sessionId, userId, email, logData);case REGISTER_FAILED_USER_EXISTS:return new RegisterFailedUserExists(eType, sessionId, userId, email, logData);case REGISTER_DATA_INCOMPLETE:return new RegisterDataIncomplete(eType, sessionId, userId, email,logData);case SHIPPINIG_ACCESS:return new ShippingAccess(eType, sessionId, userId, email, logData);case SHIPPINIG_ADD_ADDRESS:return new ShippingAddAddress(eType, sessionId, userId, email,logData);case SHIPPINIG_ADD_CHANGE:return new ShippingAddressChange(eType, sessionId, userId, email,logData);case ORDER_CREATION:return new OrderCreation(eType, sessionId, userId, email, logData);case NEW_SESSION:return new NewSession(eType, sessionId, userId, email, logData);case LOGIN_SUCCESS:return new LoginSuccess(eType, sessionId, userId, email, logData);case COUPON_APPLIED:return new CouponApplied(eType, sessionId, userId, email, logData);case COUPON_REMOVED:return new CouponRemoved(eType, sessionId, userId, email, logData);case PROCEED_TO_PAY:return new ProceedToPay(eType, sessionId, userId, email, logData);case DELIVERY_ESTIMATE:return new DeliveryEstimate(eType, sessionId, userId, email, logData);case RECHARGE_SUCCESSFUL:return new RechargeStatusEvent(eType, sessionId, userId, email, logData);case RECHARGE_PAYMENT_SUCCESSFUL:return new RechargeStatusEvent(eType, sessionId, userId, email, logData);case RECHARGE_PAYMENT_FAILED:return new RechargeStatusEvent(eType, sessionId, userId, email, logData);case PROVIDER_FETCH_FAILURE:return new ProviderFetchFailure(eType, sessionId, userId, email, logData);default:return new Event(eType, sessionId, userId, email);}}public static Event createEvent(String[] eventFileds) {EventType eType = EventType.valueOf(eventFileds[1].trim());switch (eType) {case ADD_ADDRESS:return new AddAddress(eventFileds);case DELETE_ADDRESS:return new DeleteAddress(eventFileds);case SET_DEFAULT_ADDRESS:return new SetDefaultAddress(eventFileds);case ADD_TO_CART:return new AddToCart(eventFileds);case DELETE_FROM_CART:return new DeleteFromCart(eventFileds);case UPDATE_CART_QUANTITY:return new UpdateCartQuantity(eventFileds);case UPDATE_CART_QUANTITY_FAILED:return new UpdateCartQuantityFailed(eventFileds);case PAYMENT_SUCCESS:return new PaymentSuccess(eventFileds);case PAYMENT_FAILURE:return new PaymentFailure(eventFileds);case PRODUCT_VIEW:return new ProductView(eventFileds);case PRODUCT_SEARCH:return new ProductSearch(eventFileds);case PRODUCT_COMPARE:return new ProductCompare(eventFileds);case RESEARCH_ADD:return new ResearchAdd(eventFileds);case REGISTER_SUCCESS:return new RegisterSuccess(eventFileds);case REGISTER_FAILED_USER_EXISTS:return new RegisterFailedUserExists(eventFileds);case REGISTER_DATA_INCOMPLETE:return new RegisterDataIncomplete(eventFileds);case SHIPPINIG_ACCESS:return new ShippingAccess(eventFileds);case SHIPPINIG_ADD_CHANGE:return new ShippingAddressChange(eventFileds);case ORDER_CREATION:return new OrderCreation(eventFileds);case NEW_SESSION:return new NewSession(eventFileds);case LOGIN_SUCCESS:return new LoginSuccess(eventFileds);case COUPON_APPLIED:return new CouponApplied(eventFileds);case COUPON_REMOVED:return new CouponRemoved(eventFileds);case PROCEED_TO_PAY:return new ProceedToPay(eventFileds);case DELIVERY_ESTIMATE:return new DeliveryEstimate(eventFileds);case RECHARGE_SUCCESSFUL:return new RechargeStatusEvent(eventFileds);case RECHARGE_PAYMENT_SUCCESSFUL:return new RechargeStatusEvent(eventFileds);case RECHARGE_PAYMENT_FAILED:return new RechargeStatusEvent(eventFileds);case PROVIDER_FETCH_FAILURE:return new ProviderFetchFailure(eventFileds);default:return new Event(eventFileds);}}public String toString() {StringBuilder sb = new StringBuilder();sb.append(eventType.name() + ", ");sb.append("userEmail : " + userEmail);sb.append(" time : " + time);sb.append(" session : " + sessionId);return sb.toString();}public JSONObject getLogDataInJson() {return null;}public Date getTime() {return time;}public void setTime(Date time) {this.time = time;}public String getSessionId() {return sessionId;}public void setSessionId(String sessionId) {this.sessionId = sessionId;}public Long getUserId() {return userId;}public void setUserId(Long userId) {this.userId = userId;}public String getUserEmail() {return userEmail;}public void setUserEmail(String userEmail) {this.userEmail = userEmail;}public EventType getEventType() {return eventType;}public void setEventType(EventType eventType) {this.eventType = eventType;}}