6dbb8ec2b76cb702c6f38e18a1a7ddc6d0215703
[deliverable/tracecompass.git] / org.eclipse.linuxtools.lttng2.core / src / org / eclipse / linuxtools / internal / lttng2 / core / 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.internal.lttng2.core.control.model.impl;
13
14 import org.eclipse.linuxtools.internal.lttng2.core.control.model.IBaseEventInfo;
15 import org.eclipse.linuxtools.internal.lttng2.core.control.model.TraceEventType;
16 import org.eclipse.linuxtools.internal.lttng2.core.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.internal.lttng2.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.internal.lttng2.ui.views.control.model.IBaseEventInfo#setEventType(org.eclipse.linuxtools.internal.lttng2.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.internal.lttng2.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 if(TraceEventType.SYSCALL.getInName().equals(typeName)) {
89 fEventType = TraceEventType.SYSCALL;
90 } else if (TraceEventType.PROBE.getInName().equals(typeName)) {
91 fEventType = TraceEventType.PROBE;
92 } else {
93 fEventType = TraceEventType.UNKNOWN;
94 }
95 }
96
97 /*
98 * (non-Javadoc)
99 * @see org.eclipse.linuxtools.internal.lttng2.ui.views.control.model.IBaseEventInfo#getLogLevel()
100 */
101 @Override
102 public TraceLogLevel getLogLevel() {
103 return fLogLevel;
104 }
105
106 /*
107 * (non-Javadoc)
108 * @see org.eclipse.linuxtools.internal.lttng2.ui.views.control.model.IBaseEventInfo#setLogLevel(org.eclipse.linuxtools.internal.lttng2.ui.views.control.model.TraceLogLevel)
109 */
110 @Override
111 public void setLogLevel(TraceLogLevel level) {
112 fLogLevel = level;
113 }
114
115 /*
116 * (non-Javadoc)
117 * @see org.eclipse.linuxtools.internal.lttng2.ui.views.control.model.IBaseEventInfo#setLogLevel(java.lang.String)
118 */
119 @Override
120 public void setLogLevel(String levelName) {
121 if(TraceLogLevel.TRACE_EMERG.getInName().equals(levelName)) {
122 fLogLevel = TraceLogLevel.TRACE_EMERG;
123 } else if(TraceLogLevel.TRACE_ALERT.getInName().equals(levelName)) {
124 fLogLevel = TraceLogLevel.TRACE_ALERT;
125 } else if(TraceLogLevel.TRACE_CRIT.getInName().equals(levelName)) {
126 fLogLevel = TraceLogLevel.TRACE_CRIT;
127 } else if(TraceLogLevel.TRACE_ERR.getInName().equals(levelName)) {
128 fLogLevel = TraceLogLevel.TRACE_ERR;
129 } else if(TraceLogLevel.TRACE_WARNING.getInName().equals(levelName)) {
130 fLogLevel = TraceLogLevel.TRACE_WARNING;
131 } else if(TraceLogLevel.TRACE_NOTICE.getInName().equals(levelName)) {
132 fLogLevel = TraceLogLevel.TRACE_NOTICE;
133 } else if(TraceLogLevel.TRACE_INFO.getInName().equals(levelName)) {
134 fLogLevel = TraceLogLevel.TRACE_INFO;
135 } else if(TraceLogLevel.TRACE_DEBUG_SYSTEM.getInName().equals(levelName)) {
136 fLogLevel = TraceLogLevel.TRACE_DEBUG_SYSTEM;
137 } else if(TraceLogLevel.TRACE_DEBUG_PROGRAM.getInName().equals(levelName)) {
138 fLogLevel = TraceLogLevel.TRACE_DEBUG_PROGRAM;
139 } else if(TraceLogLevel.TRACE_DEBUG_PROCESS.getInName().equals(levelName)) {
140 fLogLevel = TraceLogLevel.TRACE_DEBUG_PROCESS;
141 } else if(TraceLogLevel.TRACE_DEBUG_MODULE.getInName().equals(levelName)) {
142 fLogLevel = TraceLogLevel.TRACE_DEBUG_MODULE;
143 } else if(TraceLogLevel.TRACE_DEBUG_UNIT.getInName().equals(levelName)) {
144 fLogLevel = TraceLogLevel.TRACE_DEBUG_UNIT;
145 } else if(TraceLogLevel.TRACE_DEBUG_FUNCTION.getInName().equals(levelName)) {
146 fLogLevel = TraceLogLevel.TRACE_DEBUG_FUNCTION;
147 } else if(TraceLogLevel.TRACE_DEBUG_LINE.getInName().equals(levelName)) {
148 fLogLevel = TraceLogLevel.TRACE_DEBUG_LINE;
149 } else if(TraceLogLevel.TRACE_DEBUG.getInName().equals(levelName)) {
150 fLogLevel = TraceLogLevel.TRACE_DEBUG;
151 } else if(TraceLogLevel.LEVEL_UNKNOWN.getInName().equals(levelName)) {
152 fLogLevel = TraceLogLevel.LEVEL_UNKNOWN;
153 } else {
154 fLogLevel = TraceLogLevel.TRACE_DEBUG;
155 }
156 }
157
158 /*
159 * (non-Javadoc)
160 * @see org.eclipse.linuxtools.internal.lttng2.ui.views.control.model.impl.TraceInfo#hashCode()
161 */
162 @Override
163 public int hashCode() {
164 final int prime = 31;
165 int result = super.hashCode();
166 result = prime * result + ((fEventType == null) ? 0 : (fEventType.ordinal() + 1));
167 result = prime * result + ((fLogLevel == null) ? 0 : (fLogLevel.ordinal() + 1));
168 return result;
169 }
170
171 /*
172 * (non-Javadoc)
173 * @see org.eclipse.linuxtools.internal.lttng2.ui.views.control.model.impl.TraceInfo#equals(java.lang.Object)
174 */
175 @Override
176 public boolean equals(Object obj) {
177 if (this == obj) {
178 return true;
179 }
180 if (!super.equals(obj)) {
181 return false;
182 }
183 if (getClass() != obj.getClass()) {
184 return false;
185 }
186 BaseEventInfo other = (BaseEventInfo) obj;
187 if (fEventType != other.fEventType) {
188 return false;
189 }
190 if (fLogLevel != other.fLogLevel) {
191 return false;
192 }
193 return true;
194 }
195
196 /*
197 * (non-Javadoc)
198 * @see org.eclipse.linuxtools.internal.lttng2.ui.views.control.model.impl.TraceInfo#toString()
199 */
200 @SuppressWarnings("nls")
201 @Override
202 public String toString() {
203 StringBuffer output = new StringBuffer();
204 output.append("[BaseEventInfo(");
205 output.append(super.toString());
206 output.append(",type=");
207 output.append(fEventType);
208 output.append(",level=");
209 output.append(fLogLevel);
210 output.append(")]");
211 return output.toString();
212 }
213
214
215
216
217 }
This page took 0.036268 seconds and 4 git commands to generate.