Subversion Repositories SmartDukaan

Rev

Rev 2418 | Go to most recent revision | Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
2262 vikas 1
package in.shop2020.datalogger.event;
2
 
3
import in.shop2020.datalogger.EventType;
4
 
5
import java.text.ParseException;
6
import java.text.SimpleDateFormat;
7
import java.util.Date;
8
public class Event {
9
    private static SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd/HH:mm:ss.SSS/zzz");
10
    protected Date time;
11
    protected String sessionId;
12
    protected Long userId;
13
    protected String userEmail;
14
    protected EventType eventType;
15
 
16
    public Event(String[] eventFileds) {
17
        try {
18
            time = sdf.parse(eventFileds[0].trim());
19
        } catch (ParseException e) {
20
            e.printStackTrace();
21
        }
22
        try {
23
            eventType = EventType.valueOf(eventFileds[1].trim());
24
            sessionId = eventFileds[2].trim();
25
            userId = Long.parseLong(eventFileds[3].trim());
26
            userEmail = eventFileds[4].trim();
27
 
28
        } catch (ArrayIndexOutOfBoundsException e) {
29
            e.printStackTrace();
30
        }
31
        catch (NumberFormatException e) {
32
            userId = -1l;
33
            e.printStackTrace();
34
        }
35
 
36
    }
37
 
38
    public static Event createEvent(String[] eventFileds) {
39
        EventType eType = EventType.valueOf(eventFileds[1].trim());
40
        if(eType == EventType.ADD_ADDRESS) {
41
            return new AddAddress(eventFileds);
42
        }
43
        if(eType == EventType.DELETE_ADDRESS) {
44
            return new DeleteAddress(eventFileds);
45
        }
46
        if(eType == EventType.SET_DEFAULT_ADDRESS) {
47
            return new SetDefaultAddress(eventFileds);
48
        }
49
        if(eType == EventType.ADD_TO_CART) {
50
            return new AddToCart(eventFileds);
51
        }
52
        if(eType == EventType.DELETE_FROM_CART) {
53
            return new DeleteFromCart(eventFileds);
54
        }
55
        if(eType == EventType.UPDATE_CART_QUANTITY) {
56
            return new UpdateCartQuantity(eventFileds);
57
        }
58
        if(eType == EventType.UPDATE_CART_QUANTITY_FAILED) {
59
            return new UpdateCartQuantityFailed(eventFileds);
60
        }
61
        if(eType == EventType.PAYMENT_SUCCESS) {
62
            return new PaymentSuccess(eventFileds);
63
        }
64
        if(eType == EventType.PAYMENT_FAILURE) {
65
            return new PaymentFailure(eventFileds);
66
        }
67
        if(eType == EventType.PRODUCT_VIEW) {
68
            return new ProductView(eventFileds);
69
        }
70
        if(eType == EventType.PRODUCT_SEARCH) {
71
            return new ProductSearch(eventFileds);
72
        }
73
        if(eType == EventType.PRODUCT_COMPARE) {
74
            return new ProductCompare(eventFileds);
75
        }
76
        if(eType == EventType.RESEARCH_ADD) {
77
            return new ResearchAdd(eventFileds);
78
        }
79
        if(eType == EventType.RESEARCH_DELETE) {
80
            return new ResearchDelete(eventFileds);
81
        }
82
        if(eType == EventType.REGISTER_SUCCESS) {
83
            return new RegisterSuccess(eventFileds);
84
        }
85
        if(eType == EventType.REGISTER_FAILED_USER_EXISTS) {
86
            return new RegisterFailedUserExists(eventFileds);
87
        }
88
        if(eType == EventType.REGISTER_DATA_INCOMPLETE) {
89
            return new RegisterDataIncomplete(eventFileds);
90
        }
91
        if(eType == EventType.SHIPPINIG_ACCESS) {
92
            return new ShippingAccess(eventFileds);
93
        }
94
        if(eType == EventType.SHIPPINIG_ADD_ADDRESS) {
95
            return new ShippingAddAddress(eventFileds);
96
        }
97
        if(eType == EventType.SHIPPINIG_ADD_CHANGE) {
98
            return new ShippingAddressChange(eventFileds);
99
        }
100
        if(eType == EventType.ORDER_CREATION) {
101
            return new OrderCreation(eventFileds);
102
        }
103
        return new Event(eventFileds); 
104
    }
105
 
106
    public String toString() {
107
        StringBuilder sb = new StringBuilder();
108
        sb.append(eventType.name() + ", ");
109
        sb.append("userEmail : " + userEmail);
110
        sb.append(" time : " + time);
111
        sb.append(" session : " + sessionId);
112
 
113
        return sb.toString();
114
    }
115
 
116
    public Date getTime() {
117
        return time;
118
    }
119
 
120
    public void setTime(Date time) {
121
        this.time = time;
122
    }
123
 
124
    public String getSessionId() {
125
        return sessionId;
126
    }
127
 
128
    public void setSessionId(String sessionId) {
129
        this.sessionId = sessionId;
130
    }
131
 
132
    public Long getUserId() {
133
        return userId;
134
    }
135
 
136
    public void setUserId(Long userId) {
137
        this.userId = userId;
138
    }
139
 
140
    public String getUserEmail() {
141
        return userEmail;
142
    }
143
 
144
    public void setUserEmail(String userEmail) {
145
        this.userEmail = userEmail;
146
    }
147
 
148
    public EventType getEventType() {
149
        return eventType;
150
    }
151
 
152
    public void setEventType(EventType eventType) {
153
        this.eventType = eventType;
154
    }
155
}