lttng: Move plugins to the Trace Compass namespace
[deliverable/tracecompass.git] / org.eclipse.tracecompass.lttng2.control.core / src / org / eclipse / linuxtools / internal / lttng2 / control / core / model / ISessionInfo.java
CommitLineData
eb1bab5b 1/**********************************************************************
ba3a9bd2 2 * Copyright (c) 2012, 2013 Ericsson
b0318660 3 *
eb1bab5b
BH
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
b0318660
AM
8 *
9 * Contributors:
eb1bab5b 10 * Bernd Hufmann - Initial API and implementation
ba3a9bd2 11 * Bernd Hufmann - Updated for support of LTTng Tools 2.1
81d5dc3a 12 * Marc-Andre Laperle - Support for creating a live session
eb1bab5b 13 **********************************************************************/
8e8c0226 14package org.eclipse.linuxtools.internal.lttng2.control.core.model;
eb1bab5b
BH
15
16import java.util.List;
17
18/**
eb1bab5b
BH
19 * <p>
20 * Interface for retrieval of trace session information.
21 * </p>
b0318660 22 *
dbd4432d 23 * @author Bernd Hufmann
eb1bab5b
BH
24 */
25public interface ISessionInfo extends ITraceInfo {
26
27 /**
28 * @return the session state state (active or inactive).
29 */
a6e6f7b4 30 TraceSessionState getSessionState();
eb1bab5b
BH
31 /**
32 * Sets the session state to the given value.
33 * @param state - state to set.
34 */
a6e6f7b4 35 void setSessionState(TraceSessionState state);
b0318660 36
eb1bab5b
BH
37 /**
38 * Sets the event state to the value specified by the given name.
39 * @param stateName - state to set.
40 */
a6e6f7b4 41 void setSessionState(String stateName);
b0318660 42
eb1bab5b
BH
43 /**
44 * @return path string where session is located.
45 */
a6e6f7b4 46 String getSessionPath();
b0318660 47
eb1bab5b
BH
48 /**
49 * Sets the path string (where session is located) to the given value.
50 * @param path - session path to set.
51 */
a6e6f7b4 52 void setSessionPath(String path);
b0318660 53
eb1bab5b
BH
54 /**
55 * @return all domain information as array.
56 */
a6e6f7b4 57 IDomainInfo[] getDomains();
b0318660 58
eb1bab5b
BH
59 /**
60 * Sets all domain information specified by given list.
61 * @param domains - all domain information to set.
62 */
a6e6f7b4 63 void setDomains(List<IDomainInfo> domains);
b0318660 64
eb1bab5b
BH
65 /**
66 * Adds a single domain information.
b0318660 67 * @param domainInfo domain information to add.
eb1bab5b 68 */
a6e6f7b4 69 void addDomain(IDomainInfo domainInfo);
f3b33d40
BH
70
71 /**
72 * Returns if session is streamed over network
73 * @return <code>true</code> if streamed over network else <code>false</code>
74 */
a6e6f7b4 75 boolean isStreamedTrace();
f3b33d40
BH
76
77 /**
78 * Sets whether the trace is streamed or not
79 * @param isStreamedTrace <code>true</code> if streamed over network else <code>false</code>
80 */
a6e6f7b4 81 void setStreamedTrace(boolean isStreamedTrace);
589d0d33
BH
82
83 /**
84 * Returns whether the session is snapshot session or not
85 * @return <code>true</code> if it is snapshot session else <code>false</code>
86 */
87 boolean isSnapshotSession();
88
f7d4d450
MAL
89 /**
90 * Set whether or not the session should be in snapshot mode
91 *
92 * @param isSnapshot
93 * true for snapshot mode, false otherwise
94 */
95 void setSnapshot(boolean isSnapshot);
96
589d0d33
BH
97 /**
98 * Gets the snapshot information the session or null if it is not a
99 * snapshot session.
100 * @return snapshot information
101 */
102 ISnapshotInfo getSnapshotInfo();
103
104 /**
105 * Sets the snapshot information of the session
106 * @param setSnapshotInfo - the snapshot data to set.
107 */
108 void setSnapshotInfo(ISnapshotInfo setSnapshotInfo);
f7d4d450 109
81d5dc3a
MAL
110 /**
111 * Get whether or not the session should be in Live mode
112 *
113 * @return <code>true</code> if is a live session else <code>false</code>
114 */
115 public boolean isLive();
116
117 /**
118 * Set whether or not the session should be in Live mode
119 *
120 * @param isLive
121 * true for Live mode, false otherwise
122 */
123 public void setLive(boolean isLive);
124
125 /**
126 * Get the live delay which is the delay in micro seconds before the data is
127 * flushed and streamed.
128 *
129 * @return the live delay or -1 if the default value should be used
130 */
131 public int getLiveDelay();
132
133 /**
134 * Set the live delay which is the delay in micro seconds before the data is
135 * flushed and streamed.
136 *
137 * @param liveDelay
138 * the live delay
139 */
140 public void setLiveDelay(int liveDelay);
141
f7d4d450
MAL
142 /**
143 * Get the network URL in case control and data is configured together
144 * otherwise null If it returns a non-null value, getControlUrl() and
145 * getDataUrl() have to return null.
146 *
147 * @return The network URL or null.
148 */
149 String getNetworkUrl();
150
151 /**
152 * Set the network URL
153 *
154 * @param networkUrl
155 * the network URL
156 */
157 void setNetworkUrl(String networkUrl);
158
159 /**
160 * Get the control URL in case control and data is configured separately. If
161 * it returns a non-null value, getDataUrl() has to return a valid value too
162 * and getNetworkUrl() has to return null.
163 *
164 * @return The control URL or null.
165 */
166 String getControlUrl();
167
168 /**
169 * Set the control URL
170 *
171 * @param controlUrl
172 * the control URL
173 */
174 void setControlUrl(String controlUrl);
175
176 /**
177 * Get the data URL in case control and data is configured separately. If it
178 * returns a non-null value, getControlUrl() has to return a valid value too
179 * and getNetworkUrl() has to return null.
180 *
181 * @return The data URL or null.
182 */
183 String getDataUrl();
184
185 /**
186 * Set the data URL
187 *
188 * @param datalUrl
189 * the data URL
190 */
191 void setDataUrl(String datalUrl);
6fd3c6e9
MAL
192
193 /**
194 * Get the live URL.
195 *
196 * @return the live URL
197 */
198 String getLiveUrl();
199
200 /**
201 * Set the live URL.
202 *
203 * @param liveUrl
204 * the live URL
205 */
206 void setLiveUrl(String liveUrl);
207
208 /**
209 * Get the live port.
210 *
211 * @return the live port
212 */
213 Integer getLivePort();
214
215 /**
216 * Set the live port.
217 *
218 * @param livePort
219 * the live port
220 */
221 void setLivePort(Integer livePort);
eb1bab5b 222}
This page took 0.066707 seconds and 5 git commands to generate.