~ubuntu-branches/ubuntu/trusty/eclipse-linuxtools/trusty

« back to all changes in this revision

Viewing changes to lttng/org.eclipse.linuxtools.lttng2.core/src/org/eclipse/linuxtools/internal/lttng2/core/control/model/impl/EventInfo.java

  • Committer: Package Import Robot
  • Author(s): Jakub Adam
  • Date: 2012-06-29 12:07:30 UTC
  • Revision ID: package-import@ubuntu.com-20120629120730-bfri1xys1i71dpn6
Tags: upstream-1.0.0
ImportĀ upstreamĀ versionĀ 1.0.0

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
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.IEventInfo;
 
15
import org.eclipse.linuxtools.internal.lttng2.core.control.model.TraceEnablement;
 
16
 
 
17
/**
 
18
* <p>
 
19
* Implementation of the trace event interface (IEventInfo) to store event
 
20
* related data. 
 
21
* </p>
 
22
 
23
* @author Bernd Hufmann
 
24
*/
 
25
public class EventInfo extends BaseEventInfo implements IEventInfo {
 
26
 
 
27
    // ------------------------------------------------------------------------
 
28
    // Attributes
 
29
    // ------------------------------------------------------------------------
 
30
    /**
 
31
     * The enable state of the event.
 
32
     */
 
33
    private TraceEnablement fState = TraceEnablement.DISABLED;
 
34
    
 
35
    // ------------------------------------------------------------------------
 
36
    // Constructors
 
37
    // ------------------------------------------------------------------------
 
38
    /**
 
39
     * Constructor
 
40
     * @param name - name of event
 
41
     */
 
42
    public EventInfo(String name) {
 
43
        super(name);
 
44
    }
 
45
    
 
46
    /**
 
47
     * Copy constructor
 
48
     * @param other - the instance to copy
 
49
     */
 
50
    public EventInfo(EventInfo other) {
 
51
        super(other);
 
52
        fState = other.fState;
 
53
    }
 
54
    
 
55
    // ------------------------------------------------------------------------
 
56
    // Accessors
 
57
    // ------------------------------------------------------------------------
 
58
    /*
 
59
     * (non-Javadoc)
 
60
     * @see org.eclipse.linuxtools.internal.lttng2.ui.views.control.model.IEventInfo#getState()
 
61
     */
 
62
    @Override
 
63
    public TraceEnablement getState() {
 
64
        return fState;
 
65
    }
 
66
 
 
67
    /*
 
68
     * (non-Javadoc)
 
69
     * @see org.eclipse.linuxtools.internal.lttng2.ui.views.control.model.IEventInfo#setState(org.eclipse.linuxtools.internal.lttng2.ui.views.control.model.TraceEnablement)
 
70
     */
 
71
    @Override
 
72
    public void setState(TraceEnablement state) {
 
73
        fState = state;
 
74
    }
 
75
 
 
76
    /*
 
77
     * (non-Javadoc)
 
78
     * @see org.eclipse.linuxtools.internal.lttng2.ui.views.control.model.IEventInfo#setState(java.lang.String)
 
79
     */
 
80
    @Override
 
81
    public void setState(String stateName) {
 
82
        fState = TraceEnablement.DISABLED;
 
83
        if (TraceEnablement.DISABLED.getInName().equals(stateName)) {
 
84
            fState = TraceEnablement.DISABLED;
 
85
        } else if (TraceEnablement.ENABLED.getInName().equals(stateName)) {
 
86
            fState = TraceEnablement.ENABLED;
 
87
        }
 
88
    }
 
89
 
 
90
    /*
 
91
     * (non-Javadoc)
 
92
     * @see org.eclipse.linuxtools.internal.lttng2.ui.views.control.model.impl.BaseEventInfo#hashCode()
 
93
     */
 
94
    @Override
 
95
    public int hashCode() {
 
96
        final int prime = 31;
 
97
        int result = super.hashCode();
 
98
        result = prime * result + ((fState == null) ? 0 : (fState.ordinal() + 1));
 
99
        return result;
 
100
    }
 
101
 
 
102
    /*
 
103
     * (non-Javadoc)
 
104
     * @see org.eclipse.linuxtools.internal.lttng2.ui.views.control.model.impl.BaseEventInfo#equals(java.lang.Object)
 
105
     */
 
106
    @Override
 
107
    public boolean equals(Object obj) {
 
108
        if (this == obj) {
 
109
            return true;
 
110
        }
 
111
        if (!super.equals(obj)) {
 
112
            return false;
 
113
        }
 
114
        if (getClass() != obj.getClass()) {
 
115
            return false;
 
116
        }
 
117
        EventInfo other = (EventInfo) obj;
 
118
        if (fState != other.fState) {
 
119
            return false;
 
120
        }
 
121
        return true;
 
122
    }
 
123
 
 
124
    /*
 
125
     * (non-Javadoc)
 
126
     * @see org.eclipse.linuxtools.internal.lttng2.ui.views.control.model.impl.BaseEventInfo#toString()
 
127
     */
 
128
    @SuppressWarnings("nls")
 
129
    @Override
 
130
    public String toString() {
 
131
        StringBuffer output = new StringBuffer();
 
132
            output.append("[EventInfo(");
 
133
            output.append(super.toString());
 
134
            output.append(",State=");
 
135
            output.append(fState);
 
136
            output.append(")]");
 
137
            return output.toString();
 
138
    }
 
139
}