Fixed code review findings + upgrade to lttng-tools 2.0-pre20
[deliverable/tracecompass.git] / org.eclipse.linuxtools.lttng.ui / src / org / eclipse / linuxtools / lttng / ui / views / control / model / impl / BaseEventInfo.java
1 /**********************************************************************
2 * Copyright (c) 2012 Ericsson
3 *
4 * All rights reserved. This program and the accompanying materials are
5 * made available under the terms of the Eclipse Public License v1.0 which
6 * accompanies this distribution, and is available at
7 * http://www.eclipse.org/legal/epl-v10.html
8 *
9 * Contributors:
10 * Bernd Hufmann - Initial API and implementation
11 **********************************************************************/
12 package org.eclipse.linuxtools.lttng.ui.views.control.model.impl;
13
14 import org.eclipse.linuxtools.lttng.ui.views.control.model.IBaseEventInfo;
15 import org.eclipse.linuxtools.lttng.ui.views.control.model.TraceEventType;
16 import org.eclipse.linuxtools.lttng.ui.views.control.model.TraceLogLevel;
17
18 /**
19 * <b><u>BaseEventInfo</u></b>
20 * <p>
21 * Implementation of the basic trace event interface (IEventInfo) to store event
22 * related data.
23 * </p>
24 */
25 public class BaseEventInfo extends TraceInfo implements IBaseEventInfo {
26
27 // ------------------------------------------------------------------------
28 // Attributes
29 // ------------------------------------------------------------------------
30 /**
31 * The trace event type.
32 */
33 private TraceEventType fEventType = TraceEventType.UNKNOWN;
34 /**
35 * The trace log level.
36 */
37 private TraceLogLevel fLogLevel = TraceLogLevel.TRACE_DEBUG;
38
39 // ------------------------------------------------------------------------
40 // Constructors
41 // ------------------------------------------------------------------------
42 /**
43 * Constructor
44 * @param name - name of base event
45 */
46 public BaseEventInfo(String name) {
47 super(name);
48 }
49
50 /**
51 * Copy constructor
52 * @param other - the instance to copy
53 */
54 public BaseEventInfo(BaseEventInfo other) {
55 super(other);
56 fEventType = other.fEventType;
57 }
58
59 // ------------------------------------------------------------------------
60 // Accessors
61 // ------------------------------------------------------------------------
62 /*
63 * (non-Javadoc)
64 * @see org.eclipse.linuxtools.lttng.ui.views.control.model.IBaseEventInfo#getEventType()
65 */
66 @Override
67 public TraceEventType getEventType() {
68 return fEventType;
69 }
70
71 /*
72 * (non-Javadoc)
73 * @see org.eclipse.linuxtools.lttng.ui.views.control.model.IBaseEventInfo#setEventType(org.eclipse.linuxtools.lttng.ui.views.control.model.TraceEventType)
74 */
75 @Override
76 public void setEventType(TraceEventType type) {
77 fEventType = type;
78 }
79
80 /*
81 * (non-Javadoc)
82 * @see org.eclipse.linuxtools.lttng.ui.views.control.model.IBaseEventInfo#setEventType(java.lang.String)
83 */
84 @Override
85 public void setEventType(String typeName) {
86 if(TraceEventType.TRACEPOINT.getInName().equals(typeName)) {
87 fEventType = TraceEventType.TRACEPOINT;
88 } else {
89 fEventType = TraceEventType.UNKNOWN;
90 }
91 }
92
93 /*
94 * (non-Javadoc)
95 * @see org.eclipse.linuxtools.lttng.ui.views.control.model.IBaseEventInfo#getLogLevel()
96 */
97 @Override
98 public TraceLogLevel getLogLevel() {
99 return fLogLevel;
100 }
101
102 /*
103 * (non-Javadoc)
104 * @see org.eclipse.linuxtools.lttng.ui.views.control.model.IBaseEventInfo#setLogLevel(org.eclipse.linuxtools.lttng.ui.views.control.model.TraceLogLevel)
105 */
106 @Override
107 public void setLogLevel(TraceLogLevel level) {
108 fLogLevel = level;
109 }
110
111 /*
112 * (non-Javadoc)
113 * @see org.eclipse.linuxtools.lttng.ui.views.control.model.IBaseEventInfo#setLogLevel(java.lang.String)
114 */
115 @Override
116 public void setLogLevel(String levelName) {
117 if(TraceLogLevel.TRACE_EMERG.getInName().equals(levelName)) {
118 fLogLevel = TraceLogLevel.TRACE_EMERG;
119 } else if(TraceLogLevel.TRACE_ALERT.getInName().equals(levelName)) {
120 fLogLevel = TraceLogLevel.TRACE_ALERT;
121 } else if(TraceLogLevel.TRACE_CRIT.getInName().equals(levelName)) {
122 fLogLevel = TraceLogLevel.TRACE_CRIT;
123 } else if(TraceLogLevel.TRACE_ERR.getInName().equals(levelName)) {
124 fLogLevel = TraceLogLevel.TRACE_ERR;
125 } else if(TraceLogLevel.TRACE_WARNING.getInName().equals(levelName)) {
126 fLogLevel = TraceLogLevel.TRACE_WARNING;
127 } else if(TraceLogLevel.TRACE_NOTICE.getInName().equals(levelName)) {
128 fLogLevel = TraceLogLevel.TRACE_NOTICE;
129 } else if(TraceLogLevel.TRACE_INFO.getInName().equals(levelName)) {
130 fLogLevel = TraceLogLevel.TRACE_INFO;
131 } else if(TraceLogLevel.TRACE_DEBUG_SYSTEM.getInName().equals(levelName)) {
132 fLogLevel = TraceLogLevel.TRACE_DEBUG_SYSTEM;
133 } else if(TraceLogLevel.TRACE_DEBUG_PROGRAM.getInName().equals(levelName)) {
134 fLogLevel = TraceLogLevel.TRACE_DEBUG_PROGRAM;
135 } else if(TraceLogLevel.TRACE_DEBUG_PROCESS.getInName().equals(levelName)) {
136 fLogLevel = TraceLogLevel.TRACE_DEBUG_PROCESS;
137 } else if(TraceLogLevel.TRACE_DEBUG_MODULE.getInName().equals(levelName)) {
138 fLogLevel = TraceLogLevel.TRACE_DEBUG_MODULE;
139 } else if(TraceLogLevel.TRACE_DEBUG_UNIT.getInName().equals(levelName)) {
140 fLogLevel = TraceLogLevel.TRACE_DEBUG_UNIT;
141 } else if(TraceLogLevel.TRACE_DEBUG_FUNCTION.getInName().equals(levelName)) {
142 fLogLevel = TraceLogLevel.TRACE_DEBUG_FUNCTION;
143 } else if(TraceLogLevel.TRACE_DEBUG_LINE.getInName().equals(levelName)) {
144 fLogLevel = TraceLogLevel.TRACE_DEBUG_LINE;
145 } else if(TraceLogLevel.TRACE_DEBUG.getInName().equals(levelName)) {
146 fLogLevel = TraceLogLevel.TRACE_DEBUG;
147 } else if(TraceLogLevel.LEVEL_UNKNOWN.getInName().equals(levelName)) {
148 fLogLevel = TraceLogLevel.LEVEL_UNKNOWN;
149 } else {
150 fLogLevel = TraceLogLevel.TRACE_DEBUG;
151 }
152 }
153
154 /*
155 * (non-Javadoc)
156 * @see org.eclipse.linuxtools.lttng.ui.views.control.model.impl.TraceInfo#hashCode()
157 */
158 @Override
159 public int hashCode() {
160 int result = 17;
161 result = 37 * result + super.hashCode();
162 result = 37 * result + fEventType.ordinal();
163 result = 37 * result + fLogLevel.ordinal();
164 return result;
165 }
166
167 /*
168 * (non-Javadoc)
169 * @see org.eclipse.linuxtools.lttng.ui.views.control.model.impl.TraceInfo#equals(java.lang.Object)
170 */
171 @Override
172 public boolean equals(Object other) {
173 if (!(other instanceof BaseEventInfo)) {
174 return false;
175 }
176
177 BaseEventInfo otherInfo = (BaseEventInfo) other;
178 if (!super.equals(otherInfo)) {
179 return false;
180 }
181
182 if (fEventType.ordinal() != otherInfo.fEventType.ordinal()) {
183 return false;
184 }
185
186 if (fLogLevel.ordinal() != otherInfo.fLogLevel.ordinal()) {
187 return false;
188 }
189 return true;
190 }
191
192 /*
193 * (non-Javadoc)
194 * @see org.eclipse.linuxtools.lttng.ui.views.control.model.impl.TraceInfo#toString()
195 */
196 @SuppressWarnings("nls")
197 @Override
198 public String toString() {
199 StringBuffer output = new StringBuffer();
200 output.append("[BaseEventInfo(");
201 output.append(super.toString());
202 output.append(",type=");
203 output.append(fEventType);
204 output.append(",level=");
205 output.append(fLogLevel);
206 output.append(")]");
207 return output.toString();
208 }
209 }
This page took 0.034466 seconds and 5 git commands to generate.