*
* Contributors:
* Bernd Hufmann - Initial API and implementation
+ * Simon Delisle - Updated for support of LTTng Tools 2.2
**********************************************************************/
package org.eclipse.linuxtools.internal.lttng2.core.control.model.impl;
* The events information of the channel.
*/
private final List<IEventInfo> fEvents = new ArrayList<IEventInfo>();
+ /**
+ * The maximum size of trace files
+ */
+ private int fMaxSizeTraceFiles;
+ /**
+ * The maximum number of trace files
+ */
+ private int fMaxNumberTraceFiles;
+ /**
+ * The value of buffer type
+ */
+ private BufferType fBufferType = BufferType.BUFFER_TYPE_UNKNOWN;
// ------------------------------------------------------------------------
fNumberOfSubBuffers = other.fNumberOfSubBuffers;
fSwitchTimer = other.fSwitchTimer;
fReadTimer = other.fReadTimer;
+ fMaxSizeTraceFiles = other.fMaxSizeTraceFiles;
+ fMaxNumberTraceFiles = other.fMaxNumberTraceFiles;
+ fBufferType = other.fBufferType;
fOutputType = (other.fOutputType == null ? null : String.valueOf(other.fOutputType));
fState = other.fState;
for (Iterator<IEventInfo> iterator = other.fEvents.iterator(); iterator.hasNext();) {
// ------------------------------------------------------------------------
// Accessors
// ------------------------------------------------------------------------
- /*
- * (non-Javadoc)
- * @see org.eclipse.linuxtools.internal.lttng2.ui.views.control.model.IChannelInfo#getOverwriteMode()
- */
+
@Override
public boolean isOverwriteMode() {
return fOverwriteMode;
}
- /*
- * (non-Javadoc)
- * @see org.eclipse.linuxtools.internal.lttng2.ui.views.control.model.IChannelInfo#setOverwriteMode(boolean)
- */
@Override
public void setOverwriteMode(boolean mode) {
fOverwriteMode = mode;
}
- /*
- * (non-Javadoc)
- * @see org.eclipse.linuxtools.internal.lttng2.ui.views.control.model.IChannelInfo#getSubBufferSize()
- */
@Override
public long getSubBufferSize() {
return fSubBufferSize;
}
- /*
- * (non-Javadoc)
- * @see org.eclipse.linuxtools.internal.lttng2.ui.views.control.model.IChannelInfo#setSubBufferSize(long)
- */
@Override
public void setSubBufferSize(long bufferSize) {
fSubBufferSize = bufferSize;
-
}
- /*
- * (non-Javadoc)
- * @see org.eclipse.linuxtools.internal.lttng2.ui.views.control.model.IChannelInfo#getNumberOfSubBuffers()
- */
@Override
public int getNumberOfSubBuffers() {
return fNumberOfSubBuffers;
}
- /*
- * (non-Javadoc)
- * @see org.eclipse.linuxtools.internal.lttng2.ui.views.control.model.IChannelInfo#setNumberOfSubBuffers(int)
- */
@Override
public void setNumberOfSubBuffers(int numberOfSubBuffers) {
fNumberOfSubBuffers = numberOfSubBuffers;
}
- /*
- * (non-Javadoc)
- * @see org.eclipse.linuxtools.internal.lttng2.ui.views.control.model.IChannelInfo#getSwitchTimer()
- */
@Override
public long getSwitchTimer() {
return fSwitchTimer;
}
- /*
- * (non-Javadoc)
- * @see org.eclipse.linuxtools.internal.lttng2.ui.views.control.model.IChannelInfo#setSwitchTimer(long)
- */
@Override
public void setSwitchTimer(long timer) {
fSwitchTimer = timer;
}
- /*
- * (non-Javadoc)
- * @see org.eclipse.linuxtools.internal.lttng2.ui.views.control.model.IChannelInfo#getReadTimer()
- */
@Override
public long getReadTimer() {
return fReadTimer;
}
- /*
- * (non-Javadoc)
- * @see org.eclipse.linuxtools.internal.lttng2.ui.views.control.model.IChannelInfo#setReadTimer(long)
- */
@Override
public void setReadTimer(long timer) {
fReadTimer = timer;
}
- /*
- * (non-Javadoc)
- * @see org.eclipse.linuxtools.internal.lttng2.ui.views.control.model.IChannelInfo#getOutputType()
- */
@Override
public String getOutputType() {
return fOutputType;
}
- /*
- * (non-Javadoc)
- * @see org.eclipse.linuxtools.internal.lttng2.ui.views.control.model.IChannelInfo#setOutputType(java.lang.String)
- */
@Override
public void setOutputType(String type) {
fOutputType = type;
}
- /*
- * (non-Javadoc)
- * @see org.eclipse.linuxtools.internal.lttng2.ui.views.control.model.IChannelInfo#getState()
- */
@Override
public TraceEnablement getState() {
return fState;
}
- /*
- * (non-Javadoc)
- * @see org.eclipse.linuxtools.internal.lttng2.ui.views.control.model.IChannelInfo#setState(org.eclipse.linuxtools.internal.lttng2.ui.views.control.model.TraceEnablement)
- */
@Override
public void setState(TraceEnablement state) {
fState = state;
}
- /*
- * (non-Javadoc)
- * @see org.eclipse.linuxtools.internal.lttng2.ui.views.control.model.IChannelInfo#setState(java.lang.String)
- */
@Override
public void setState(String stateName) {
fState = TraceEnablement.ENABLED;
}
}
- /*
- * (non-Javadoc)
- * @see org.eclipse.linuxtools.internal.lttng2.ui.views.control.model.IChannelInfo#getEvents()
- */
@Override
public IEventInfo[] getEvents() {
return fEvents.toArray(new IEventInfo[fEvents.size()]);
}
- /*
- * (non-Javadoc)
- * @see org.eclipse.linuxtools.internal.lttng2.ui.views.control.model.IChannelInfo#setEvents(java.util.List)
- */
@Override
public void setEvents(List<IEventInfo> events) {
+ fEvents.clear();
for (Iterator<IEventInfo> iterator = events.iterator(); iterator.hasNext();) {
IEventInfo eventInfo = iterator.next();
fEvents.add(eventInfo);
}
}
- /*
- * (non-Javadoc)
- * @see org.eclipse.linuxtools.internal.lttng2.ui.views.control.model.IChannelInfo#addEvent(org.eclipse.linuxtools.internal.lttng2.ui.views.control.model.IEventInfo)
- */
@Override
public void addEvent(IEventInfo channel) {
fEvents.add(channel);
}
- /*
- * (non-Javadoc)
- * @see org.eclipse.linuxtools.internal.lttng2.ui.views.control.model.impl.TraceInfo#hashCode()
- */
@Override
public int hashCode() {
final int prime = 31;
result = prime * result + ((fState == null) ? 0 : (fState.ordinal() + 1));
result = prime * result + (int) (fSubBufferSize ^ (fSubBufferSize >>> 32));
result = prime * result + (int) (fSwitchTimer ^ (fSwitchTimer >>> 32));
+ result = prime * result + ((fBufferType == null) ? 0 : (fBufferType.ordinal() + 1));
return result;
}
- /*
- * (non-Javadoc)
- * @see org.eclipse.linuxtools.internal.lttng2.ui.views.control.model.impl.TraceInfo#equals(java.lang.Object)
- */
@Override
public boolean equals(Object obj) {
if (this == obj) {
if (fSwitchTimer != other.fSwitchTimer) {
return false;
}
+ if (fBufferType != other.fBufferType) {
+ return false;
+ }
return true;
}
- /*
- * (non-Javadoc)
- * @see org.eclipse.linuxtools.internal.lttng2.ui.views.control.model.impl.TraceInfo#toString()
- */
@SuppressWarnings("nls")
@Override
public String toString() {
output.append(fReadTimer);
output.append(",output=");
output.append(fOutputType);
+ if ((fBufferType != null) && !fBufferType.equals(BufferType.BUFFER_TYPE_UNKNOWN) && !fBufferType.equals(BufferType.BUFFER_SHARED)) {
+ output.append(",BufferType=");
+ output.append(fBufferType);
+ }
output.append(",Events=");
if (fEvents.isEmpty()) {
output.append("None");
return output.toString();
}
+ @Override
+ public void setMaxSizeTraceFiles(int maxSizeTraceFiles) {
+ fMaxSizeTraceFiles = maxSizeTraceFiles;
+ }
+
+ @Override
+ public void setMaxNumberTraceFiles(int maxNumberTraceFiles) {
+ fMaxNumberTraceFiles = maxNumberTraceFiles;
+ }
+
+ @Override
+ public int getMaxSizeTraceFiles() {
+ return fMaxSizeTraceFiles;
+ }
+
+ @Override
+ public int getMaxNumberTraceFiles() {
+ return fMaxNumberTraceFiles;
+ }
+
+ @Override
+ public void setBufferType(BufferType bufferType) {
+ fBufferType = bufferType;
+ }
-}
\ No newline at end of file
+ @Override
+ public BufferType getBufferType() {
+ return fBufferType;
+ }
+}