The API tool is a bit peculiar as to when it decides to run...
It's possible that some more annotations are needed.
Change-Id: If49b70cf359055f5531533b3f167981a0b15dffe
Signed-off-by: Alexandre Montplaisir <alexmonthy@voxpopuli.im>
Reviewed-on: https://git.eclipse.org/r/43119
Reviewed-by: Hudson CI
* occurred.
*
* @author Geneviève Bastien
+ * @since 1.0
*/
public abstract class LinuxTidAspect implements ITmfEventAspect {
import org.eclipse.jdt.annotation.Nullable;
import org.eclipse.osgi.util.NLS;
+/**
+ * @since 1.0
+ */
@SuppressWarnings("javadoc")
public class Messages extends NLS {
static final String PPID = "PPID";
//static final String STATUS = "Status"
static final String EXEC_NAME = "Exec_name";
+
+ /** @since 1.0 */
static final String PRIO = "Prio";
static final String SYSTEM_CALL = "System_call";
* @param ts
* The timestamp at which to get the priority
* @return The priority of this thread, or {@code null} if not found
+ * @since 1.0
*/
public static @Nullable Integer getThreadPrio(KernelAnalysis module, Integer threadId, long ts) {
Integer execPrio = null;
* {@link KernelAnalysis}.
*
* @author Geneviève Bastien
+ * @since 1.0
*/
public final class KernelTidAspect extends LinuxTidAspect {
* threads by adding the host ID it belongs to.
*
* @author Geneviève Bastien
+ * @since 1.0
*/
public class HostThread {
* Due to historical reasons, the definitions are the same as LTTng event names.
*
* @author Alexandre Montplaisir
+ * @since 1.0
*/
public class DefaultEventLayout implements IKernelAnalysisEventLayout{
return SCHED_SWITCH;
}
+ /**
+ * @since 1.0
+ */
@Override
public String eventSchedPiSetprio() {
return SCHED_PI_SETPRIO;
return CHILD_TID;
}
+ /**
+ * @since 1.0
+ */
@Override
public String fieldPrio() {
return PRIO;
}
+ /**
+ * @since 1.0
+ */
@Override
public String fieldNewPrio() {
return NEW_PRIO;
}
+ /**
+ * @since 1.0
+ */
@Override
public String fieldNextPrio() {
return NEXT_PRIO;
String eventSoftIrqExit();
String eventSoftIrqRaise();
String eventSchedSwitch();
+
+ /** @since 1.0 */
String eventSchedPiSetprio();
+
Collection<String> eventsSchedWakeup();
String eventSchedProcessFork();
String eventSchedProcessExit();
String fieldChildComm();
String fieldParentTid();
String fieldChildTid();
+
+ /** @since 1.0 */
String fieldPrio();
+
+ /** @since 1.0 */
String fieldNewPrio();
+
+ /** @since 1.0 */
String fieldNextPrio();
}
* Timstamp format of BTF timescale as per v2.1 of the spec
*
* @author Matthew Khouzam
+ * @since 1.0
*/
public enum BtfTimestampFormat {
/**
* @param o2
* the second object to compare
* @return true if o1.equals(o2) or o1 == o2
+ * @since 1.0
*/
public static boolean equalsNullable(final @Nullable Object o1, final @Nullable Object o2) {
if (o1 == o2) {
* CTF trace reader.
*
* @author Alexandre Montplaisir
+ * @since 1.0
*/
public class CTFReaderException extends Exception {
return false;
}
+ /**
+ * @since 1.0
+ */
@Override
public Direction getDirection(ITmfEvent event) {
String evname = event.getType().getName();
return !traceEvents.isEmpty();
}
+ /**
+ * @since 1.0
+ */
@Override
public Direction getDirection(ITmfEvent event) {
String evname = event.getType().getName();
* @param backend
* Back-end plugin to use
* @return The new state system
+ * @since 1.0
*/
public static ITmfStateSystemBuilder newStateSystem(IStateHistoryBackend backend) {
return new StateSystem(backend);
* @return The new state system
* @throws IOException
* If there was a problem creating the new history file
+ * @since 1.0
*/
public static ITmfStateSystemBuilder newStateSystem(IStateHistoryBackend backend,
boolean newFile) throws IOException {
* Get the ID of the state system that populates this backend.
*
* @return The state system's ID.
+ * @since 1.0
*/
@NonNull String getSSID();
* The state system's ID
* @param startTime
* The start time of this interval store
+ * @since 1.0
*/
public InMemoryBackend(@NonNull String ssid, long startTime) {
this.ssid = ssid;
this.intervals = new TreeSet<>(END_COMPARATOR);
}
+ /**
+ * @since 1.0
+ */
@Override
public String getSSID() {
return ssid;
*
* @param ssid
* The state system's id
+ * @since 1.0
*/
public NullBackend(@NonNull String ssid) {
this.ssid = ssid;
}
+ /**
+ * @since 1.0
+ */
@Override
public String getSSID() {
return ssid;
* Indicates if the history tree construction is done
*
* @return if the history tree construction is done
+ * @since 1.0
*/
protected boolean isFinishedBuilding() {
return fFinishedBuilding;
*
* @param isFinishedBuilding
* is the history tree finished building
+ * @since 1.0
*/
protected void setFinishedBuilding(boolean isFinishedBuilding) {
this.fFinishedBuilding = isFinishedBuilding;
* The earliest time stamp that will be stored in the history
* @throws IOException
* Thrown if we can't create the file for some reason
+ * @since 1.0
*/
public HistoryTreeBackend(@NonNull String ssid, File newStateFile, int blockSize,
int maxChildren, int providerVersion, long startTime) throws IOException {
* The earliest time stamp that will be stored in the history
* @throws IOException
* Thrown if we can't create the file for some reason
+ * @since 1.0
*/
public HistoryTreeBackend(@NonNull String ssid, File newStateFile, int providerVersion, long startTime)
throws IOException {
* If we can't read the file, if it doesn't exist, is not
* recognized, or if the version of the file does not match the
* expected providerVersion.
+ * @since 1.0
*/
public HistoryTreeBackend(@NonNull String ssid, File existingStateFile, int providerVersion)
throws IOException {
return sht;
}
+ /**
+ * @since 1.0
+ */
@Override
public String getSSID() {
return ssid;
* works well
* @throws IOException
* If there was a problem opening the history file for writing
+ * @since 1.0
*/
public ThreadedHistoryTreeBackend(@NonNull String ssid, File newStateFile, int blockSize,
int maxChildren, long startTime, int providerVersion, int queueSize)
* works well
* @throws IOException
* If there was a problem opening the history file for writing
+ * @since 1.0
*/
public ThreadedHistoryTreeBackend(@NonNull String ssid, File newStateFile, long startTime,
int providerVersion, int queueSize) throws IOException {
* This map is read-only
*
* @return The map of available {@link IAnalysisModuleHelper}
+ * @since 1.0
*/
public static synchronized Multimap<String, IAnalysisModuleHelper> getAnalysisModules() {
if (fAnalysisModules.isEmpty()) {
* The field name or absolute field path array to look for in the
* event content. Should *not* be localized!
* @return the new aspect
+ * @since 1.0
*/
public static TmfContentFieldAspect create(String aspectName, String helpText, String... fieldPath) {
return new TmfContentFieldAspect(aspectName, helpText, fieldPath);
* @param event
* The event to check
* @return The direction of this event, null if uninteresting event
+ * @since 1.0
*/
Direction getDirection(ITmfEvent event);
* Externalized strings for this plugin
*
* @author Geneviève Bastien
+ * @since 1.0
*/
@SuppressWarnings("javadoc")
public class Messages extends NLS {
/**
* Enum for cause and effect types of event
+ * @since 1.0
*/
public enum Direction {
/**
*
* @param traces
* The set of traces for which to match events
+ * @since 1.0
*/
public TmfEventMatching(Collection<ITmfTrace> traces) {
this(traces, new TmfEventMatches());
* The trace to which this event belongs
* @param monitor
* The monitor for the synchronization job
+ * @since 1.0
*/
protected void matchEvent(ITmfEvent event, ITmfTrace trace, @NonNull IProgressMonitor monitor) {
ITmfMatchEventDefinition def = null;
*
* @param initialCapacity
* the initial capacity of the field list
+ * @since 1.0
*/
public TextTraceEventContent(int initialCapacity) {
fName = ITmfEventField.ROOT_FIELD_ID;
* a subfield name
* @param value
* the subfield value
+ * @since 1.0
*/
public void addField(@NonNull String name, Object value) {
TextTraceEventContent field = new TextTraceEventContent(name);
/**
* Event aspects available for all CTF traces
+ * @since 1.0
*/
protected static final @NonNull Collection<ITmfEventAspect> CTF_ASPECTS =
checkNotNull(ImmutableList.of(
* Parent of the analysis
* @param module
* The analysis module helper
+ * @since 1.0
*/
protected TmfAnalysisElement(String name, IResource resource, ITmfProjectModelElement parent, @NonNull IAnalysisModuleHelper module) {
super(name, resource, parent);