Merge branch 'master' into lttng_2_0_control_dev
[deliverable/tracecompass.git] / org.eclipse.linuxtools.lttng.ui / src / org / eclipse / linuxtools / lttng / ui / views / control / model / impl / BaseEventInfo.java
CommitLineData
eb1bab5b
BH
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 **********************************************************************/
12package org.eclipse.linuxtools.lttng.ui.views.control.model.impl;
13
14import org.eclipse.linuxtools.lttng.ui.views.control.model.IBaseEventInfo;
15import org.eclipse.linuxtools.lttng.ui.views.control.model.TraceEventType;
16import 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*/
25public 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 */
4775bcbf 37 private TraceLogLevel fLogLevel = TraceLogLevel.TRACE_DEBUG;
eb1bab5b
BH
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;
3e91c9c0
BH
88 } else if(TraceEventType.SYSCALL.getInName().equals(typeName)) {
89 fEventType = TraceEventType.SYSCALL;
ccc66d01
BH
90 } else if (TraceEventType.PROBE.getInName().equals(typeName)) {
91 fEventType = TraceEventType.PROBE;
92 } else {
eb1bab5b
BH
93 fEventType = TraceEventType.UNKNOWN;
94 }
95 }
96
97 /*
98 * (non-Javadoc)
99 * @see org.eclipse.linuxtools.lttng.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.lttng.ui.views.control.model.IBaseEventInfo#setLogLevel(org.eclipse.linuxtools.lttng.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.lttng.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;
4775bcbf
BH
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;
eb1bab5b
BH
149 } else if(TraceLogLevel.TRACE_DEBUG.getInName().equals(levelName)) {
150 fLogLevel = TraceLogLevel.TRACE_DEBUG;
4775bcbf
BH
151 } else if(TraceLogLevel.LEVEL_UNKNOWN.getInName().equals(levelName)) {
152 fLogLevel = TraceLogLevel.LEVEL_UNKNOWN;
eb1bab5b 153 } else {
4775bcbf 154 fLogLevel = TraceLogLevel.TRACE_DEBUG;
eb1bab5b
BH
155 }
156 }
157
158 /*
159 * (non-Javadoc)
160 * @see org.eclipse.linuxtools.lttng.ui.views.control.model.impl.TraceInfo#hashCode()
161 */
162 @Override
163 public int hashCode() {
164 int result = 17;
165 result = 37 * result + super.hashCode();
166 result = 37 * result + fEventType.ordinal();
167 result = 37 * result + fLogLevel.ordinal();
168 return result;
169 }
170
171 /*
172 * (non-Javadoc)
173 * @see org.eclipse.linuxtools.lttng.ui.views.control.model.impl.TraceInfo#equals(java.lang.Object)
174 */
175 @Override
176 public boolean equals(Object other) {
177 if (!(other instanceof BaseEventInfo)) {
178 return false;
179 }
180
181 BaseEventInfo otherInfo = (BaseEventInfo) other;
182 if (!super.equals(otherInfo)) {
183 return false;
184 }
185
186 if (fEventType.ordinal() != otherInfo.fEventType.ordinal()) {
187 return false;
188 }
189
190 if (fLogLevel.ordinal() != otherInfo.fLogLevel.ordinal()) {
191 return false;
192 }
193 return true;
194 }
195
196 /*
197 * (non-Javadoc)
198 * @see org.eclipse.linuxtools.lttng.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}
This page took 0.032669 seconds and 5 git commands to generate.