1 /*******************************************************************************
2 * Copyright (c) 2012, 2013 Ericsson
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
10 * Bernd Hufmann - Initial API and implementation
11 *******************************************************************************/
13 package org
.eclipse
.linuxtools
.lttng2
.core
.tests
.control
.model
.impl
;
15 import org
.eclipse
.linuxtools
.internal
.lttng2
.core
.control
.model
.IBaseEventInfo
;
16 import org
.eclipse
.linuxtools
.internal
.lttng2
.core
.control
.model
.IChannelInfo
;
17 import org
.eclipse
.linuxtools
.internal
.lttng2
.core
.control
.model
.IDomainInfo
;
18 import org
.eclipse
.linuxtools
.internal
.lttng2
.core
.control
.model
.IEventInfo
;
19 import org
.eclipse
.linuxtools
.internal
.lttng2
.core
.control
.model
.IFieldInfo
;
20 import org
.eclipse
.linuxtools
.internal
.lttng2
.core
.control
.model
.IProbeEventInfo
;
21 import org
.eclipse
.linuxtools
.internal
.lttng2
.core
.control
.model
.ISessionInfo
;
22 import org
.eclipse
.linuxtools
.internal
.lttng2
.core
.control
.model
.ISnapshotInfo
;
23 import org
.eclipse
.linuxtools
.internal
.lttng2
.core
.control
.model
.IUstProviderInfo
;
24 import org
.eclipse
.linuxtools
.internal
.lttng2
.core
.control
.model
.TraceEnablement
;
25 import org
.eclipse
.linuxtools
.internal
.lttng2
.core
.control
.model
.TraceEventType
;
26 import org
.eclipse
.linuxtools
.internal
.lttng2
.core
.control
.model
.TraceLogLevel
;
27 import org
.eclipse
.linuxtools
.internal
.lttng2
.core
.control
.model
.TraceSessionState
;
28 import org
.eclipse
.linuxtools
.internal
.lttng2
.core
.control
.model
.impl
.BaseEventInfo
;
29 import org
.eclipse
.linuxtools
.internal
.lttng2
.core
.control
.model
.impl
.ChannelInfo
;
30 import org
.eclipse
.linuxtools
.internal
.lttng2
.core
.control
.model
.impl
.DomainInfo
;
31 import org
.eclipse
.linuxtools
.internal
.lttng2
.core
.control
.model
.impl
.EventInfo
;
32 import org
.eclipse
.linuxtools
.internal
.lttng2
.core
.control
.model
.impl
.FieldInfo
;
33 import org
.eclipse
.linuxtools
.internal
.lttng2
.core
.control
.model
.impl
.ProbeEventInfo
;
34 import org
.eclipse
.linuxtools
.internal
.lttng2
.core
.control
.model
.impl
.SessionInfo
;
35 import org
.eclipse
.linuxtools
.internal
.lttng2
.core
.control
.model
.impl
.SnapshotInfo
;
36 import org
.eclipse
.linuxtools
.internal
.lttng2
.core
.control
.model
.impl
.UstProviderInfo
;
39 * Test facility to constants across test case
41 @SuppressWarnings("javadoc")
42 public class ModelImplFactory
{
44 private ISessionInfo fSessionInfo1
= null;
45 private ISessionInfo fSessionInfo2
= null;
46 private IDomainInfo fDomainInfo1
= null;
47 private IDomainInfo fDomainInfo2
= null;
48 private IChannelInfo fChannelInfo1
= null;
49 private IChannelInfo fChannelInfo2
= null;
50 private IEventInfo fEventInfo1
= null;
51 private IEventInfo fEventInfo2
= null;
52 private IEventInfo fEventInfo3
= null;
53 private IFieldInfo fFieldInfo1
= null;
54 private IFieldInfo fFieldInfo2
= null;
55 private IBaseEventInfo fBaseEventInfo1
= null;
56 private IBaseEventInfo fBaseEventInfo2
= null;
57 private IUstProviderInfo fUstProviderInfo1
= null;
58 private IUstProviderInfo fUstProviderInfo2
= null;
59 private IProbeEventInfo fProbeEventInfo1
= null;
60 private IProbeEventInfo fProbeEventInfo2
= null;
61 private ISnapshotInfo fSnapshotInfo1
= null;
62 private ISnapshotInfo fSnapshotInfo2
= null;
64 public ModelImplFactory() {
66 fFieldInfo1
= new FieldInfo("intfield");
67 fFieldInfo1
.setFieldType("int");
68 fFieldInfo2
= new FieldInfo("stringfield");
69 fFieldInfo2
.setFieldType("string");
71 fBaseEventInfo1
= new BaseEventInfo("event1");
72 fBaseEventInfo1
.setEventType(TraceEventType
.UNKNOWN
);
73 fBaseEventInfo1
.setLogLevel(TraceLogLevel
.TRACE_ERR
);
74 fBaseEventInfo1
.addField(fFieldInfo1
);
75 fBaseEventInfo1
.addField(fFieldInfo2
);
76 fBaseEventInfo1
.setFilterExpression("intField==10");
78 fBaseEventInfo2
= new BaseEventInfo("event2");
79 fBaseEventInfo2
.setEventType(TraceEventType
.TRACEPOINT
);
80 fBaseEventInfo1
.setLogLevel(TraceLogLevel
.TRACE_DEBUG
);
82 fEventInfo1
= new EventInfo("event1");
83 fEventInfo1
.setEventType(TraceEventType
.TRACEPOINT
);
84 fEventInfo1
.setState(TraceEnablement
.ENABLED
);
86 fEventInfo2
= new EventInfo("event2");
87 fEventInfo2
.setEventType(TraceEventType
.UNKNOWN
);
88 fEventInfo2
.setState(TraceEnablement
.DISABLED
);
90 fEventInfo3
= new EventInfo("event3");
91 fEventInfo3
.setEventType(TraceEventType
.TRACEPOINT
);
92 fEventInfo3
.setState(TraceEnablement
.DISABLED
);
94 fUstProviderInfo1
= new UstProviderInfo("myUST1");
95 fUstProviderInfo1
.setPid(1234);
96 fUstProviderInfo1
.addEvent(fBaseEventInfo1
);
98 fUstProviderInfo2
= new UstProviderInfo("myUST2");
99 fUstProviderInfo2
.setPid(2345);
100 fUstProviderInfo2
.addEvent(fBaseEventInfo1
);
101 fUstProviderInfo2
.addEvent(fBaseEventInfo2
);
103 fChannelInfo1
= new ChannelInfo("channel1");
104 fChannelInfo1
.setSwitchTimer(10L);
105 fChannelInfo1
.setOverwriteMode(true);
106 fChannelInfo1
.setReadTimer(11L);
107 fChannelInfo1
.setState(TraceEnablement
.DISABLED
);
108 fChannelInfo1
.setNumberOfSubBuffers(12);
109 fChannelInfo1
.setOutputType("splice()");
110 fChannelInfo1
.setSubBufferSize(13L);
111 fChannelInfo1
.addEvent(fEventInfo1
);
113 fChannelInfo2
= new ChannelInfo("channel2");
114 fChannelInfo2
.setSwitchTimer(1L);
115 fChannelInfo2
.setOverwriteMode(false);
116 fChannelInfo2
.setReadTimer(2L);
117 fChannelInfo2
.setState(TraceEnablement
.ENABLED
);
118 fChannelInfo2
.setNumberOfSubBuffers(3);
119 fChannelInfo2
.setOutputType("mmap()");
120 fChannelInfo2
.setSubBufferSize(4L);
121 fChannelInfo2
.addEvent(fEventInfo2
);
122 fChannelInfo2
.addEvent(fEventInfo3
);
124 fDomainInfo1
= new DomainInfo("test1");
125 fDomainInfo1
.addChannel(fChannelInfo1
);
127 fDomainInfo2
= new DomainInfo("test2");
128 fDomainInfo2
.addChannel(fChannelInfo1
);
129 fDomainInfo2
.addChannel(fChannelInfo2
);
131 fSessionInfo1
= new SessionInfo("session1");
132 fSessionInfo1
.setSessionPath("/home/user");
133 fSessionInfo1
.setSessionState(TraceSessionState
.ACTIVE
);
134 fSessionInfo1
.addDomain(fDomainInfo1
);
136 fSessionInfo2
= new SessionInfo("session2");
137 fSessionInfo2
.setSessionPath("/home/user1");
138 fSessionInfo2
.setSessionState(TraceSessionState
.INACTIVE
);
139 fSessionInfo2
.addDomain(fDomainInfo1
);
140 fSessionInfo2
.addDomain(fDomainInfo2
);
141 fSessionInfo2
.setStreamedTrace(true);
143 fProbeEventInfo1
= new ProbeEventInfo("probeEvent1");
144 fProbeEventInfo1
.setEventType(TraceEventType
.TRACEPOINT
);
145 fProbeEventInfo1
.setState(TraceEnablement
.ENABLED
);
146 fProbeEventInfo1
.setAddress("0xc1231234");
148 fProbeEventInfo2
= new ProbeEventInfo("probeEvent2");
149 fProbeEventInfo2
.setEventType(TraceEventType
.UNKNOWN
);
150 fProbeEventInfo2
.setState(TraceEnablement
.DISABLED
);
151 fProbeEventInfo2
.setOffset("0x100");
152 fProbeEventInfo2
.setSymbol("init_post");
154 fSnapshotInfo1
= new SnapshotInfo("snapshot-1");
155 fSnapshotInfo1
.setId(1);
156 fSnapshotInfo1
.setSnapshotPath("/home/user/lttng-trace/mysession/");
157 fSnapshotInfo2
= new SnapshotInfo("other-snapshot");
158 fSnapshotInfo2
.setId(1);
159 fSnapshotInfo2
.setSnapshotPath("net4://172.0.0.1:1234/");
160 fSnapshotInfo2
.setStreamedSnapshot(true);
162 fSessionInfo1
.setSnapshotInfo(fSnapshotInfo1
);
165 public ISessionInfo
getSessionInfo1() {
166 return fSessionInfo1
;
169 public ISessionInfo
getSessionInfo2() {
170 return fSessionInfo2
;
173 public IDomainInfo
getDomainInfo1() {
177 public IDomainInfo
getDomainInfo2() {
181 public IChannelInfo
getChannel1() {
182 return fChannelInfo1
;
185 public IChannelInfo
getChannel2() {
186 return fChannelInfo2
;
189 public IEventInfo
getEventInfo1() {
193 public IEventInfo
getEventInfo2() {
197 public IEventInfo
getEventInfo3() {
201 public IBaseEventInfo
getBaseEventInfo1() {
202 return fBaseEventInfo1
;
205 public IBaseEventInfo
getBaseEventInfo2() {
206 return fBaseEventInfo2
;
209 public IUstProviderInfo
getUstProviderInfo1() {
210 return fUstProviderInfo1
;
213 public IUstProviderInfo
getUstProviderInfo2() {
214 return fUstProviderInfo2
;
217 public IProbeEventInfo
getProbeEventInfo1() {
218 return fProbeEventInfo1
;
221 public IProbeEventInfo
getProbeEventInfo2() {
222 return fProbeEventInfo2
;
225 public IFieldInfo
getFieldInfo1() {
229 public IFieldInfo
getFieldInfo2() {
233 public ISnapshotInfo
getSnapshotInfo1() {
234 return fSnapshotInfo1
;
237 public ISnapshotInfo
getSnapshotInfo2() {
238 return fSnapshotInfo2
;