From 367e2932ca88708df2a460eabb905d5113b1636c Mon Sep 17 00:00:00 2001 From: Alexandre Montplaisir Date: Sat, 28 Nov 2015 23:45:42 -0500 Subject: [PATCH] Fix latest batch of null warnings 2f79cfb was about fixing the errors that cropped up with the new version of JDT. This latest patch fixes the related warnings. It introduces external @NonNull annotations to the following methods in Guava's Multimap: get() keySet() values() The last two follow the same reasoning as the corresponding Map methods. The first one, get(), may seem surprising. But Multimap's get() is really @NonNull, it will at most return an empty Collection if there are no values in the map matching the passed key. Change-Id: Ie8dccff9491a8c0200b503ad76fd44092eb975e2 Signed-off-by: Alexandre Montplaisir Reviewed-on: https://git.eclipse.org/r/61929 Reviewed-by: Hudson CI Reviewed-by: Marc-Andre Laperle Tested-by: Marc-Andre Laperle --- .../ui/criticalpath/view/CriticalPathView.java | 2 +- .../com/google/common/collect/Multimap.eea | 10 ++++++++++ .../eclipse/core/resources/IMarkerDelta.eea | 4 ++++ .../ctf/core/event/EventDefinition.java | 2 +- .../core/event/types/ICompositeDefinition.java | 4 +++- .../core/event/types/StructDeclaration.java | 6 +++--- .../ctf/core/event/types/StructDefinition.java | 11 +++++++---- .../types/StructDeclarationFlattener.java | 2 +- .../types/composite/EventHeaderDefinition.java | 6 +++--- .../core/tests/event/CtfTmfEventFieldTest.java | 18 +++++++++--------- .../tmf/ctf/core/event/CtfTmfEvent.java | 3 ++- .../ui/views/handlers/AssignEventHandler.java | 6 +++--- .../views/model/impl/TargetNodeComponent.java | 4 ++-- .../core/tests/backend/HistoryTreeTest.java | 9 +++++---- .../internal/statesystem/core/Attribute.java | 2 +- .../core/backend/historytree/HistoryTree.java | 4 ++-- .../tests/analysis/AnalysisManagerTest.java | 6 +++--- .../tests/trace/TmfExperimentUtilsTest.java | 5 +++-- .../TmfAnalysisModuleSourceConfigElement.java | 3 ++- .../event/aspect/TmfContentFieldAspect.java | 7 ++++--- .../core/project/model/TraceTypeHelper.java | 2 +- .../tmf/remote/core/shell/CommandInput.java | 5 ++++- .../tmf/ui/editors/TmfEventsEditor.java | 4 ++-- .../project/model/TmfCommonProjectElement.java | 3 ++- .../views/timegraph/AbstractTimeGraphView.java | 14 +++++++------- .../ui/widgets/timegraph/TimeGraphCombo.java | 10 +++++----- .../ui/widgets/timegraph/TimeGraphViewer.java | 9 +++++---- .../dialogs/ShowFilterDialogAction.java | 5 +++-- .../timegraph/widgets/TimeGraphControl.java | 11 ++++++----- 29 files changed, 104 insertions(+), 73 deletions(-) create mode 100644 common/org.eclipse.tracecompass.common.core/annotations/com/google/common/collect/Multimap.eea create mode 100644 common/org.eclipse.tracecompass.common.core/annotations/org/eclipse/core/resources/IMarkerDelta.eea diff --git a/analysis/org.eclipse.tracecompass.analysis.graph.ui/src/org/eclipse/tracecompass/internal/analysis/graph/ui/criticalpath/view/CriticalPathView.java b/analysis/org.eclipse.tracecompass.analysis.graph.ui/src/org/eclipse/tracecompass/internal/analysis/graph/ui/criticalpath/view/CriticalPathView.java index cbd7306149..8af721017e 100644 --- a/analysis/org.eclipse.tracecompass.analysis.graph.ui/src/org/eclipse/tracecompass/internal/analysis/graph/ui/criticalpath/view/CriticalPathView.java +++ b/analysis/org.eclipse.tracecompass.analysis.graph.ui/src/org/eclipse/tracecompass/internal/analysis/graph/ui/criticalpath/view/CriticalPathView.java @@ -228,7 +228,7 @@ public class CriticalPathView extends AbstractTimeGraphView { return (entries == null) ? new ITimeGraphEntry[0] : - NonNullUtils.checkNotNull(entries.toArray(new ITimeGraphEntry[entries.size()])); + entries.toArray(new @NonNull ITimeGraphEntry[entries.size()]); } private void buildEntryList(IGraphWorker worker) { diff --git a/common/org.eclipse.tracecompass.common.core/annotations/com/google/common/collect/Multimap.eea b/common/org.eclipse.tracecompass.common.core/annotations/com/google/common/collect/Multimap.eea new file mode 100644 index 0000000000..ea2fdba19e --- /dev/null +++ b/common/org.eclipse.tracecompass.common.core/annotations/com/google/common/collect/Multimap.eea @@ -0,0 +1,10 @@ +class com/google/common/collect/Multimap +get + (TK;)Ljava/util/Collection; + (TK;)L1java/util/Collection; +keySet + ()Ljava/util/Set; + ()L1java/util/Set; +values + ()Ljava/util/Collection; + ()L1java/util/Collection; diff --git a/common/org.eclipse.tracecompass.common.core/annotations/org/eclipse/core/resources/IMarkerDelta.eea b/common/org.eclipse.tracecompass.common.core/annotations/org/eclipse/core/resources/IMarkerDelta.eea new file mode 100644 index 0000000000..b41c061609 --- /dev/null +++ b/common/org.eclipse.tracecompass.common.core/annotations/org/eclipse/core/resources/IMarkerDelta.eea @@ -0,0 +1,4 @@ +class org/eclipse/core/resources/IMarkerDelta +getMarker + ()Lorg/eclipse/core/resources/IMarker; + ()L1org/eclipse/core/resources/IMarker; diff --git a/ctf/org.eclipse.tracecompass.ctf.core/src/org/eclipse/tracecompass/ctf/core/event/EventDefinition.java b/ctf/org.eclipse.tracecompass.ctf.core/src/org/eclipse/tracecompass/ctf/core/event/EventDefinition.java index 68cb58948b..2f1003cf45 100644 --- a/ctf/org.eclipse.tracecompass.ctf.core/src/org/eclipse/tracecompass/ctf/core/event/EventDefinition.java +++ b/ctf/org.eclipse.tracecompass.ctf.core/src/org/eclipse/tracecompass/ctf/core/event/EventDefinition.java @@ -208,7 +208,7 @@ public final class EventDefinition implements IDefinitionScope { List fieldValues = new ArrayList<>(); /* Add fields from the stream */ - List fieldNames = fStreamContext.getFieldNames(); + List<@NonNull String> fieldNames = fStreamContext.getFieldNames(); for (String fieldName : fieldNames) { Definition definition = fStreamContext.getDefinition(fieldName); mergedDeclaration.addField(fieldName, definition.getDeclaration()); diff --git a/ctf/org.eclipse.tracecompass.ctf.core/src/org/eclipse/tracecompass/ctf/core/event/types/ICompositeDefinition.java b/ctf/org.eclipse.tracecompass.ctf.core/src/org/eclipse/tracecompass/ctf/core/event/types/ICompositeDefinition.java index a459ac3da5..302bbda091 100644 --- a/ctf/org.eclipse.tracecompass.ctf.core/src/org/eclipse/tracecompass/ctf/core/event/types/ICompositeDefinition.java +++ b/ctf/org.eclipse.tracecompass.ctf.core/src/org/eclipse/tracecompass/ctf/core/event/types/ICompositeDefinition.java @@ -14,6 +14,8 @@ package org.eclipse.tracecompass.ctf.core.event.types; import java.util.List; +import org.eclipse.jdt.annotation.NonNull; + /** * Interface for data definitions containing heterogenous definitions * (subfields) @@ -36,6 +38,6 @@ public interface ICompositeDefinition extends IDefinition { * * @return the field names array */ - List getFieldNames(); + List<@NonNull String> getFieldNames(); } diff --git a/ctf/org.eclipse.tracecompass.ctf.core/src/org/eclipse/tracecompass/ctf/core/event/types/StructDeclaration.java b/ctf/org.eclipse.tracecompass.ctf.core/src/org/eclipse/tracecompass/ctf/core/event/types/StructDeclaration.java index d612dd77aa..1376e41079 100644 --- a/ctf/org.eclipse.tracecompass.ctf.core/src/org/eclipse/tracecompass/ctf/core/event/types/StructDeclaration.java +++ b/ctf/org.eclipse.tracecompass.ctf.core/src/org/eclipse/tracecompass/ctf/core/event/types/StructDeclaration.java @@ -47,7 +47,7 @@ public class StructDeclaration extends Declaration { // ------------------------------------------------------------------------ /** linked list of field names. So fieldName->fieldValue */ - private final @NonNull Map fFieldMap = new LinkedHashMap<>(); + private final @NonNull Map<@NonNull String, IDeclaration> fFieldMap = new LinkedHashMap<>(); /** maximum bit alignment */ private long fMaxAlign; @@ -119,7 +119,7 @@ public class StructDeclaration extends Declaration { * * @return the field list. */ - public Iterable getFieldsList() { + public @NonNull Iterable<@NonNull String> getFieldsList() { return fFieldMap.keySet(); } @@ -193,7 +193,7 @@ public class StructDeclaration extends Declaration { * @param declaration * the declaration of the field */ - public void addField(String name, IDeclaration declaration) { + public void addField(@NonNull String name, IDeclaration declaration) { fFieldMap.put(name, declaration); fMaxAlign = Math.max(fMaxAlign, declaration.getAlignment()); } diff --git a/ctf/org.eclipse.tracecompass.ctf.core/src/org/eclipse/tracecompass/ctf/core/event/types/StructDefinition.java b/ctf/org.eclipse.tracecompass.ctf.core/src/org/eclipse/tracecompass/ctf/core/event/types/StructDefinition.java index c614d00e4e..48e85e6eb0 100644 --- a/ctf/org.eclipse.tracecompass.ctf.core/src/org/eclipse/tracecompass/ctf/core/event/types/StructDefinition.java +++ b/ctf/org.eclipse.tracecompass.ctf.core/src/org/eclipse/tracecompass/ctf/core/event/types/StructDefinition.java @@ -46,7 +46,7 @@ public final class StructDefinition extends ScopedDefinition implements IComposi // Attributes // ------------------------------------------------------------------------ - private final @NonNull List fFieldNames; + private final @NonNull List<@NonNull String> fFieldNames; private final Definition[] fDefinitions; private Map fDefinitionsMap = null; @@ -98,8 +98,11 @@ public final class StructDefinition extends ScopedDefinition implements IComposi * @since 1.0 */ public StructDefinition(@NonNull StructDeclaration declaration, - IDefinitionScope definitionScope, @NonNull ILexicalScope scope, - @NonNull String structFieldName, @NonNull Iterable fieldNames, Definition[] definitions) { + IDefinitionScope definitionScope, + @NonNull ILexicalScope scope, + @NonNull String structFieldName, + @NonNull Iterable<@NonNull String> fieldNames, + Definition[] definitions) { super(declaration, definitionScope, structFieldName, scope); fFieldNames = ImmutableList.copyOf(fieldNames); fDefinitions = definitions; @@ -128,7 +131,7 @@ public final class StructDefinition extends ScopedDefinition implements IComposi } @Override - public @NonNull List getFieldNames() { + public @NonNull List<@NonNull String> getFieldNames() { return fFieldNames; } diff --git a/ctf/org.eclipse.tracecompass.ctf.core/src/org/eclipse/tracecompass/internal/ctf/core/event/types/StructDeclarationFlattener.java b/ctf/org.eclipse.tracecompass.ctf.core/src/org/eclipse/tracecompass/internal/ctf/core/event/types/StructDeclarationFlattener.java index 0981f0b8c6..aff5a7cb07 100644 --- a/ctf/org.eclipse.tracecompass.ctf.core/src/org/eclipse/tracecompass/internal/ctf/core/event/types/StructDeclarationFlattener.java +++ b/ctf/org.eclipse.tracecompass.ctf.core/src/org/eclipse/tracecompass/internal/ctf/core/event/types/StructDeclarationFlattener.java @@ -85,7 +85,7 @@ public final class StructDeclarationFlattener { return flatStruct; } - private static void depthFirstAdd(String path, StructDeclaration flatStruct, IDeclaration dec) { + private static void depthFirstAdd(@NonNull String path, StructDeclaration flatStruct, IDeclaration dec) { if (dec instanceof ISimpleDatatypeDeclaration) { flatStruct.addField(path, dec); } else if (dec instanceof ArrayDeclaration) { diff --git a/ctf/org.eclipse.tracecompass.ctf.core/src/org/eclipse/tracecompass/internal/ctf/core/event/types/composite/EventHeaderDefinition.java b/ctf/org.eclipse.tracecompass.ctf.core/src/org/eclipse/tracecompass/internal/ctf/core/event/types/composite/EventHeaderDefinition.java index f98ad6682a..ff0841353c 100644 --- a/ctf/org.eclipse.tracecompass.ctf.core/src/org/eclipse/tracecompass/internal/ctf/core/event/types/composite/EventHeaderDefinition.java +++ b/ctf/org.eclipse.tracecompass.ctf.core/src/org/eclipse/tracecompass/internal/ctf/core/event/types/composite/EventHeaderDefinition.java @@ -33,7 +33,7 @@ import com.google.common.collect.ImmutableList; */ public final class EventHeaderDefinition extends Definition implements ICompositeDefinition { - private static final @NonNull List FIELD_NAMES = ImmutableList.of( + private static final @NonNull List<@NonNull String> FIELD_NAMES = ImmutableList.of( IEventHeaderDeclaration.ID, IEventHeaderDeclaration.TIMESTAMP ); @@ -99,7 +99,7 @@ public final class EventHeaderDefinition extends Definition implements IComposit } @Override - public @NonNull List getFieldNames() { + public @NonNull List<@NonNull String> getFieldNames() { return FIELD_NAMES; } -} \ No newline at end of file +} diff --git a/ctf/org.eclipse.tracecompass.tmf.ctf.core.tests/src/org/eclipse/tracecompass/tmf/ctf/core/tests/event/CtfTmfEventFieldTest.java b/ctf/org.eclipse.tracecompass.tmf.ctf.core.tests/src/org/eclipse/tracecompass/tmf/ctf/core/tests/event/CtfTmfEventFieldTest.java index a0f77b70a1..78f34bbb30 100644 --- a/ctf/org.eclipse.tracecompass.tmf.ctf.core.tests/src/org/eclipse/tracecompass/tmf/ctf/core/tests/event/CtfTmfEventFieldTest.java +++ b/ctf/org.eclipse.tracecompass.tmf.ctf.core.tests/src/org/eclipse/tracecompass/tmf/ctf/core/tests/event/CtfTmfEventFieldTest.java @@ -49,24 +49,24 @@ import org.junit.Test; public class CtfTmfEventFieldTest { private static final @NonNull String ROOT = "root"; - private static final String SEQ = "seq"; + private static final @NonNull String SEQ = "seq"; private static final @NonNull String ARRAY_STR = "array_str"; private static final @NonNull String ARRAY_FLOAT = "array_float"; private static final @NonNull String ARRAY_INT = "array_int"; private static final @NonNull String ARRAY_STRUCT = "array_struct"; private static final @NonNull String ARRAY_VARIANT = "array_variant"; private static final @NonNull String ARRAY_ENUM = "array_enum"; - private static final String STR = "str"; - private static final String FLOAT = "float"; - private static final String LEN = "len"; - private static final String INT = "int"; + private static final @NonNull String STR = "str"; + private static final @NonNull String FLOAT = "float"; + private static final @NonNull String LEN = "len"; + private static final @NonNull String INT = "int"; private static final @NonNull String NAME = "test"; - private static final String STRUCT = "struct"; - private static final String VARIANT = "variant"; - private static final String ENUM = "enum"; + private static final @NonNull String STRUCT = "struct"; + private static final @NonNull String VARIANT = "variant"; + private static final @NonNull String ENUM = "enum"; private static final byte TEST_NUMBER = 2; - private static final String TEST_STRING = "two"; + private static final @NonNull String TEST_STRING = "two"; private static final int ARRAY_SIZE = 2; diff --git a/ctf/org.eclipse.tracecompass.tmf.ctf.core/src/org/eclipse/tracecompass/tmf/ctf/core/event/CtfTmfEvent.java b/ctf/org.eclipse.tracecompass.tmf.ctf.core/src/org/eclipse/tracecompass/tmf/ctf/core/event/CtfTmfEvent.java index 6c1688300d..a856e08358 100644 --- a/ctf/org.eclipse.tracecompass.tmf.ctf.core/src/org/eclipse/tracecompass/tmf/ctf/core/event/CtfTmfEvent.java +++ b/ctf/org.eclipse.tracecompass.tmf.ctf.core/src/org/eclipse/tracecompass/tmf/ctf/core/event/CtfTmfEvent.java @@ -20,6 +20,7 @@ import java.util.HashSet; import java.util.List; import java.util.Set; +import org.eclipse.jdt.annotation.NonNull; import org.eclipse.jdt.annotation.NonNullByDefault; import org.eclipse.jdt.annotation.Nullable; import org.eclipse.tracecompass.ctf.core.event.EventDefinition; @@ -280,7 +281,7 @@ public class CtfTmfEvent extends TmfEvent } } - return checkNotNull(fields.toArray(new CtfTmfEventField[fields.size()])); + return checkNotNull(fields.toArray(new @NonNull CtfTmfEventField[fields.size()])); } // ------------------------------------------------------------------------ diff --git a/lttng/org.eclipse.tracecompass.lttng2.control.ui/src/org/eclipse/tracecompass/internal/lttng2/control/ui/views/handlers/AssignEventHandler.java b/lttng/org.eclipse.tracecompass.lttng2.control.ui/src/org/eclipse/tracecompass/internal/lttng2/control/ui/views/handlers/AssignEventHandler.java index 45ee3264bc..baab209b15 100644 --- a/lttng/org.eclipse.tracecompass.lttng2.control.ui/src/org/eclipse/tracecompass/internal/lttng2/control/ui/views/handlers/AssignEventHandler.java +++ b/lttng/org.eclipse.tracecompass.lttng2.control.ui/src/org/eclipse/tracecompass/internal/lttng2/control/ui/views/handlers/AssignEventHandler.java @@ -139,7 +139,7 @@ public class AssignEventHandler extends BaseControlViewHandler { @Override public boolean isEnabled() { @NonNull ArrayList<@NonNull BaseEventComponent> events = new ArrayList<>(); - TraceSessionComponent[] sessions = null; + @NonNull TraceSessionComponent[] sessions = null; Boolean isKernel = null; // Get workbench page for the Control View @@ -221,7 +221,7 @@ public class AssignEventHandler extends BaseControlViewHandler { /** * The list of available sessions. */ - private final TraceSessionComponent[] fSessions; + private final @NonNull TraceSessionComponent[] fSessions; /** * Flag for indicating Kernel or UST. @@ -235,7 +235,7 @@ public class AssignEventHandler extends BaseControlViewHandler { * @param events - a lists of events to enable * @param isKernel - domain (true for kernel or UST) */ - public Parameter(TraceSessionComponent[] sessions, List events, boolean isKernel) { + public Parameter(@NonNull TraceSessionComponent[] sessions, List events, boolean isKernel) { fSessions = NonNullUtils.checkNotNull(Arrays.copyOf(sessions, sessions.length)); fEvents = new ArrayList<>(); fEvents.addAll(events); diff --git a/lttng/org.eclipse.tracecompass.lttng2.control.ui/src/org/eclipse/tracecompass/internal/lttng2/control/ui/views/model/impl/TargetNodeComponent.java b/lttng/org.eclipse.tracecompass.lttng2.control.ui/src/org/eclipse/tracecompass/internal/lttng2/control/ui/views/model/impl/TargetNodeComponent.java index f9c755d31c..b63979ccec 100644 --- a/lttng/org.eclipse.tracecompass.lttng2.control.ui/src/org/eclipse/tracecompass/internal/lttng2/control/ui/views/model/impl/TargetNodeComponent.java +++ b/lttng/org.eclipse.tracecompass.lttng2.control.ui/src/org/eclipse/tracecompass/internal/lttng2/control/ui/views/model/impl/TargetNodeComponent.java @@ -199,12 +199,12 @@ public class TargetNodeComponent extends TraceControlComponent implements IRemot /** * @return all available sessions. */ - public TraceSessionComponent[] getSessions() { + public @NonNull TraceSessionComponent[] getSessions() { List compenents = getChildren(TraceSessionGroup.class); if (compenents.size() > 0) { TraceSessionGroup group = (TraceSessionGroup)compenents.get(0); List sessions = group.getChildren(TraceSessionComponent.class); - return sessions.toArray(new TraceSessionComponent[sessions.size()]); + return sessions.toArray(new @NonNull TraceSessionComponent[sessions.size()]); } return new TraceSessionComponent[0]; } diff --git a/statesystem/org.eclipse.tracecompass.statesystem.core.tests/src/org/eclipse/tracecompass/statesystem/core/tests/backend/HistoryTreeTest.java b/statesystem/org.eclipse.tracecompass.statesystem.core.tests/src/org/eclipse/tracecompass/statesystem/core/tests/backend/HistoryTreeTest.java index 6c1ea9b717..1021f0d7bc 100644 --- a/statesystem/org.eclipse.tracecompass.statesystem.core.tests/src/org/eclipse/tracecompass/statesystem/core/tests/backend/HistoryTreeTest.java +++ b/statesystem/org.eclipse.tracecompass.statesystem.core.tests/src/org/eclipse/tracecompass/statesystem/core/tests/backend/HistoryTreeTest.java @@ -16,6 +16,7 @@ import static org.junit.Assert.fail; import java.io.File; import java.io.IOException; +import org.eclipse.jdt.annotation.NonNull; import org.eclipse.tracecompass.internal.statesystem.core.backend.historytree.HTConfig; import org.eclipse.tracecompass.internal.statesystem.core.backend.historytree.HTInterval; import org.eclipse.tracecompass.internal.statesystem.core.backend.historytree.HTNode; @@ -42,9 +43,9 @@ public class HistoryTreeTest { /* String with 23 characters, interval in file will be 25 bytes long */ private static final String TEST_STRING = "abcdefghifklmnopqrstuvw"; - private static final TmfStateValue STRING_VALUE = TmfStateValue.newValueString(TEST_STRING); - private static final TmfStateValue LONG_VALUE = TmfStateValue.newValueLong(10L); - private static final TmfStateValue INT_VALUE = TmfStateValue.newValueInt(1); + private static final @NonNull TmfStateValue STRING_VALUE = TmfStateValue.newValueString(TEST_STRING); + private static final @NonNull TmfStateValue LONG_VALUE = TmfStateValue.newValueLong(10L); + private static final @NonNull TmfStateValue INT_VALUE = TmfStateValue.newValueInt(1); private File fTempFile; @@ -88,7 +89,7 @@ public class HistoryTreeTest { return ht; } - private static long fillValues(HistoryTree ht, TmfStateValue value, int nbValues, long start) { + private static long fillValues(HistoryTree ht, @NonNull TmfStateValue value, int nbValues, long start) { for (int i = 0; i < nbValues; i++) { ht.insertInterval(new HTInterval(start + i, start + i + 1, 1, value)); } diff --git a/statesystem/org.eclipse.tracecompass.statesystem.core/src/org/eclipse/tracecompass/internal/statesystem/core/Attribute.java b/statesystem/org.eclipse.tracecompass.statesystem.core/src/org/eclipse/tracecompass/internal/statesystem/core/Attribute.java index 2ea13f74b3..0fe8418bda 100644 --- a/statesystem/org.eclipse.tracecompass.statesystem.core/src/org/eclipse/tracecompass/internal/statesystem/core/Attribute.java +++ b/statesystem/org.eclipse.tracecompass.statesystem.core/src/org/eclipse/tracecompass/internal/statesystem/core/Attribute.java @@ -208,7 +208,7 @@ public final class Attribute { curNode = curNode.parent; } - return checkNotNull(list.toArray(new String[0])); + return list.toArray(new String[0]); } /** diff --git a/statesystem/org.eclipse.tracecompass.statesystem.core/src/org/eclipse/tracecompass/internal/statesystem/core/backend/historytree/HistoryTree.java b/statesystem/org.eclipse.tracecompass.statesystem.core/src/org/eclipse/tracecompass/internal/statesystem/core/backend/historytree/HistoryTree.java index d8f25d4ded..67d6a1f1d4 100644 --- a/statesystem/org.eclipse.tracecompass.statesystem.core/src/org/eclipse/tracecompass/internal/statesystem/core/backend/historytree/HistoryTree.java +++ b/statesystem/org.eclipse.tracecompass.statesystem.core/src/org/eclipse/tracecompass/internal/statesystem/core/backend/historytree/HistoryTree.java @@ -74,7 +74,7 @@ public class HistoryTree { private int fNodeCount; /** "Cache" to keep the active nodes in memory */ - private final List<@NonNull HTNode> fLatestBranch; + private final @NonNull List<@NonNull HTNode> fLatestBranch; // ------------------------------------------------------------------------ // Constructors/"Destructors" @@ -217,7 +217,7 @@ public class HistoryTree { * start * @throws ClosedChannelException */ - private List<@NonNull HTNode> buildLatestBranch(int rootNodeSeqNb) throws ClosedChannelException { + private @NonNull List<@NonNull HTNode> buildLatestBranch(int rootNodeSeqNb) throws ClosedChannelException { List<@NonNull HTNode> list = new ArrayList<>(); HTNode nextChildNode = fTreeIO.readNode(rootNodeSeqNb); diff --git a/tmf/org.eclipse.tracecompass.tmf.core.tests/src/org/eclipse/tracecompass/tmf/core/tests/analysis/AnalysisManagerTest.java b/tmf/org.eclipse.tracecompass.tmf.core.tests/src/org/eclipse/tracecompass/tmf/core/tests/analysis/AnalysisManagerTest.java index 5c34e36883..48235bc272 100644 --- a/tmf/org.eclipse.tracecompass.tmf.core.tests/src/org/eclipse/tracecompass/tmf/core/tests/analysis/AnalysisManagerTest.java +++ b/tmf/org.eclipse.tracecompass.tmf.core.tests/src/org/eclipse/tracecompass/tmf/core/tests/analysis/AnalysisManagerTest.java @@ -95,7 +95,7 @@ public class AnalysisManagerTest { public void testListForTraces() { /* Generic TmfTrace */ ITmfTrace trace = TmfTestTrace.A_TEST_10K.getTrace(); - Class traceClass = trace.getClass(); + Class<@NonNull ? extends ITmfTrace> traceClass = trace.getClass(); assertNotNull(traceClass); Map map = TmfAnalysisManager.getAnalysisModules(traceClass); @@ -121,14 +121,14 @@ public class AnalysisManagerTest { /* Make sure that modules in the new source are not in the list already */ /* Generic TmfTrace */ ITmfTrace trace = TmfTestTrace.A_TEST_10K.getTrace(); - Class traceClass = trace.getClass(); + Class<@NonNull ? extends ITmfTrace> traceClass = trace.getClass(); assertNotNull(traceClass); Map map = TmfAnalysisManager.getAnalysisModules(traceClass); assertFalse(map.containsKey(AnalysisModuleTestHelper.moduleStubEnum.TEST.name())); /* TmfTraceStub2 class */ - Class ftraceClass = fTrace.getClass(); + Class<@NonNull ? extends ITmfTrace> ftraceClass = fTrace.getClass(); assertNotNull(ftraceClass); map = TmfAnalysisManager.getAnalysisModules(ftraceClass); diff --git a/tmf/org.eclipse.tracecompass.tmf.core.tests/src/org/eclipse/tracecompass/tmf/core/tests/trace/TmfExperimentUtilsTest.java b/tmf/org.eclipse.tracecompass.tmf.core.tests/src/org/eclipse/tracecompass/tmf/core/tests/trace/TmfExperimentUtilsTest.java index ac880fba71..cd803601dc 100644 --- a/tmf/org.eclipse.tracecompass.tmf.core.tests/src/org/eclipse/tracecompass/tmf/core/tests/trace/TmfExperimentUtilsTest.java +++ b/tmf/org.eclipse.tracecompass.tmf.core.tests/src/org/eclipse/tracecompass/tmf/core/tests/trace/TmfExperimentUtilsTest.java @@ -16,6 +16,7 @@ import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertNotNull; import static org.junit.Assert.assertNull; +import org.eclipse.jdt.annotation.NonNull; import org.eclipse.tracecompass.tmf.core.analysis.IAnalysisModule; import org.eclipse.tracecompass.tmf.core.signal.TmfSignalManager; import org.eclipse.tracecompass.tmf.core.signal.TmfTraceOpenedSignal; @@ -116,8 +117,8 @@ public class TmfExperimentUtilsTest { */ @Test public void testGetModuleByClass() { - Class commonClass = TestAnalysis.class; - Class notCommonClass = TestAnalysis2.class; + Class<@NonNull TestAnalysis> commonClass = TestAnalysis.class; + Class<@NonNull TestAnalysis2> notCommonClass = TestAnalysis2.class; String host1 = TmfTestTrace.A_TEST_10K.getPath(); String host2 = TmfTestTrace.A_TEST_10K2.getPath(); TmfExperiment experiment = fExperiment; diff --git a/tmf/org.eclipse.tracecompass.tmf.core/src/org/eclipse/tracecompass/internal/tmf/core/analysis/TmfAnalysisModuleSourceConfigElement.java b/tmf/org.eclipse.tracecompass.tmf.core/src/org/eclipse/tracecompass/internal/tmf/core/analysis/TmfAnalysisModuleSourceConfigElement.java index 52a10b64c3..5bde392e8c 100644 --- a/tmf/org.eclipse.tracecompass.tmf.core/src/org/eclipse/tracecompass/internal/tmf/core/analysis/TmfAnalysisModuleSourceConfigElement.java +++ b/tmf/org.eclipse.tracecompass.tmf.core/src/org/eclipse/tracecompass/internal/tmf/core/analysis/TmfAnalysisModuleSourceConfigElement.java @@ -20,6 +20,7 @@ import java.util.List; import org.eclipse.core.runtime.IConfigurationElement; import org.eclipse.core.runtime.Platform; +import org.eclipse.jdt.annotation.NonNull; import org.eclipse.tracecompass.tmf.core.analysis.IAnalysisModuleHelper; import org.eclipse.tracecompass.tmf.core.analysis.IAnalysisModuleSource; import org.eclipse.tracecompass.tmf.core.analysis.TmfAnalysisModuleHelperConfigElement; @@ -91,7 +92,7 @@ public final class TmfAnalysisModuleSourceConfigElement implements IAnalysisModu typeElements.add(element); } } - return checkNotNull(typeElements.toArray(new IConfigurationElement[typeElements.size()])); + return checkNotNull(typeElements.toArray(new @NonNull IConfigurationElement[typeElements.size()])); } /** diff --git a/tmf/org.eclipse.tracecompass.tmf.core/src/org/eclipse/tracecompass/tmf/core/event/aspect/TmfContentFieldAspect.java b/tmf/org.eclipse.tracecompass.tmf.core/src/org/eclipse/tracecompass/tmf/core/event/aspect/TmfContentFieldAspect.java index 991112c308..7f5b7a1194 100644 --- a/tmf/org.eclipse.tracecompass.tmf.core/src/org/eclipse/tracecompass/tmf/core/event/aspect/TmfContentFieldAspect.java +++ b/tmf/org.eclipse.tracecompass.tmf.core/src/org/eclipse/tracecompass/tmf/core/event/aspect/TmfContentFieldAspect.java @@ -17,6 +17,7 @@ import static org.eclipse.tracecompass.common.core.NonNullUtils.checkNotNull; import java.util.Arrays; +import org.eclipse.jdt.annotation.NonNull; import org.eclipse.jdt.annotation.Nullable; import org.eclipse.tracecompass.tmf.core.event.ITmfEvent; import org.eclipse.tracecompass.tmf.core.event.ITmfEventField; @@ -41,11 +42,11 @@ public class TmfContentFieldAspect implements ITmfEventAspect { * The field name or absolute field path array to look for in the * event content. Should *not* be localized! */ - public TmfContentFieldAspect(String aspectName, String... fieldPath) { + public TmfContentFieldAspect(String aspectName, @NonNull String... fieldPath) { this(aspectName, EMPTY_STRING, fieldPath); } - private TmfContentFieldAspect(String aspectName, String helpText, String... fieldPath) { + private TmfContentFieldAspect(String aspectName, String helpText, @NonNull String... fieldPath) { fAspectName = aspectName; fFieldPath = checkNotNull(Arrays.copyOf(fieldPath, fieldPath.length)); fHelpText = helpText; @@ -65,7 +66,7 @@ public class TmfContentFieldAspect implements ITmfEventAspect { * @return the new aspect * @since 1.0 */ - public static TmfContentFieldAspect create(String aspectName, String helpText, String... fieldPath) { + public static TmfContentFieldAspect create(String aspectName, String helpText, @NonNull String... fieldPath) { return new TmfContentFieldAspect(aspectName, helpText, fieldPath); } diff --git a/tmf/org.eclipse.tracecompass.tmf.core/src/org/eclipse/tracecompass/tmf/core/project/model/TraceTypeHelper.java b/tmf/org.eclipse.tracecompass.tmf.core/src/org/eclipse/tracecompass/tmf/core/project/model/TraceTypeHelper.java index ed57af4f13..2a8d088503 100644 --- a/tmf/org.eclipse.tracecompass.tmf.core/src/org/eclipse/tracecompass/tmf/core/project/model/TraceTypeHelper.java +++ b/tmf/org.eclipse.tracecompass.tmf.core/src/org/eclipse/tracecompass/tmf/core/project/model/TraceTypeHelper.java @@ -157,7 +157,7 @@ public class TraceTypeHelper { * * @return The trace class */ - public Class getTraceClass() { + public Class<@NonNull ? extends ITmfTrace> getTraceClass() { return fTrace.getClass(); } diff --git a/tmf/org.eclipse.tracecompass.tmf.remote.core/src/org/eclipse/tracecompass/internal/tmf/remote/core/shell/CommandInput.java b/tmf/org.eclipse.tracecompass.tmf.remote.core/src/org/eclipse/tracecompass/internal/tmf/remote/core/shell/CommandInput.java index baac253212..7902bb585b 100644 --- a/tmf/org.eclipse.tracecompass.tmf.remote.core/src/org/eclipse/tracecompass/internal/tmf/remote/core/shell/CommandInput.java +++ b/tmf/org.eclipse.tracecompass.tmf.remote.core/src/org/eclipse/tracecompass/internal/tmf/remote/core/shell/CommandInput.java @@ -17,6 +17,7 @@ import static org.eclipse.tracecompass.common.core.NonNullUtils.nullToEmptyStrin import java.util.ArrayList; import java.util.List; +import org.eclipse.jdt.annotation.NonNull; import org.eclipse.jdt.annotation.Nullable; import org.eclipse.tracecompass.tmf.remote.core.shell.ICommandInput; @@ -32,8 +33,9 @@ public class CommandInput implements ICommandInput { // ------------------------------------------------------------------------ // Attributes // ------------------------------------------------------------------------ + /** The input as list of Strings. */ - private final List fInput = new ArrayList<>(); + private final @NonNull List<@NonNull String> fInput = new ArrayList<>(); // ------------------------------------------------------------------------ // Accessors @@ -47,6 +49,7 @@ public class CommandInput implements ICommandInput { // ------------------------------------------------------------------------ // Operations // ------------------------------------------------------------------------ + @Override public void add(@Nullable String segment) { if (segment != null) { diff --git a/tmf/org.eclipse.tracecompass.tmf.ui/src/org/eclipse/tracecompass/tmf/ui/editors/TmfEventsEditor.java b/tmf/org.eclipse.tracecompass.tmf.ui/src/org/eclipse/tracecompass/tmf/ui/editors/TmfEventsEditor.java index 29950f5e26..0a662bbd08 100644 --- a/tmf/org.eclipse.tracecompass.tmf.ui/src/org/eclipse/tracecompass/tmf/ui/editors/TmfEventsEditor.java +++ b/tmf/org.eclipse.tracecompass.tmf.ui/src/org/eclipse/tracecompass/tmf/ui/editors/TmfEventsEditor.java @@ -448,8 +448,8 @@ public class TmfEventsEditor extends TmfEditor implements ITmfTraceEditor, IReus @Override public void resourceChanged(final IResourceChangeEvent event) { - final Set added = new HashSet<>(); - final Set removed = new HashSet<>(); + final Set<@NonNull IMarker> added = new HashSet<>(); + final Set<@NonNull IMarker> removed = new HashSet<>(); boolean deltaFound = false; for (final IMarkerDelta delta : event.findMarkerDeltas(IMarker.BOOKMARK, false)) { if (delta.getResource().equals(fFile)) { diff --git a/tmf/org.eclipse.tracecompass.tmf.ui/src/org/eclipse/tracecompass/tmf/ui/project/model/TmfCommonProjectElement.java b/tmf/org.eclipse.tracecompass.tmf.ui/src/org/eclipse/tracecompass/tmf/ui/project/model/TmfCommonProjectElement.java index 1e7403324c..f6982820ba 100644 --- a/tmf/org.eclipse.tracecompass.tmf.ui/src/org/eclipse/tracecompass/tmf/ui/project/model/TmfCommonProjectElement.java +++ b/tmf/org.eclipse.tracecompass.tmf.ui/src/org/eclipse/tracecompass/tmf/ui/project/model/TmfCommonProjectElement.java @@ -32,6 +32,7 @@ import org.eclipse.core.runtime.CoreException; import org.eclipse.core.runtime.IPath; import org.eclipse.core.runtime.NullProgressMonitor; import org.eclipse.core.runtime.Path; +import org.eclipse.jdt.annotation.NonNull; import org.eclipse.osgi.util.NLS; import org.eclipse.tracecompass.internal.tmf.ui.Activator; import org.eclipse.tracecompass.internal.tmf.ui.editors.ITmfEventsEditorConstants; @@ -106,7 +107,7 @@ public abstract class TmfCommonProjectElement extends TmfProjectModelElement { TraceTypeHelper helper = TmfTraceType.getTraceType(getTraceType()); - Class traceClass = null; + Class<@NonNull ? extends ITmfTrace> traceClass = null; if (helper != null) { traceClass = helper.getTraceClass(); diff --git a/tmf/org.eclipse.tracecompass.tmf.ui/src/org/eclipse/tracecompass/tmf/ui/views/timegraph/AbstractTimeGraphView.java b/tmf/org.eclipse.tracecompass.tmf.ui/src/org/eclipse/tracecompass/tmf/ui/views/timegraph/AbstractTimeGraphView.java index 7eef81ef99..204a184c84 100644 --- a/tmf/org.eclipse.tracecompass.tmf.ui/src/org/eclipse/tracecompass/tmf/ui/views/timegraph/AbstractTimeGraphView.java +++ b/tmf/org.eclipse.tracecompass.tmf.ui/src/org/eclipse/tracecompass/tmf/ui/views/timegraph/AbstractTimeGraphView.java @@ -150,7 +150,7 @@ public abstract class AbstractTimeGraphView extends TmfView implements ITmfTimeA private final Map> fEntryListMap = new HashMap<>(); /** The trace to filters hash map */ - private final Map fFiltersMap = new HashMap<>(); + private final Map fFiltersMap = new HashMap<>(); /** The trace to marker event sources hash map */ private final Map> fMarkerEventSourcesMap = new HashMap<>(); @@ -243,9 +243,9 @@ public abstract class AbstractTimeGraphView extends TmfView implements ITmfTimeA Object getInput(); - void setFilters(ViewerFilter[] filters); + void setFilters(@NonNull ViewerFilter[] filters); - ViewerFilter[] getFilters(); + @NonNull ViewerFilter[] getFilters(); void redraw(); @@ -336,12 +336,12 @@ public abstract class AbstractTimeGraphView extends TmfView implements ITmfTimeA } @Override - public void setFilters(ViewerFilter[] filters) { + public void setFilters(@NonNull ViewerFilter[] filters) { viewer.setFilters(filters); } @Override - public ViewerFilter[] getFilters() { + public @NonNull ViewerFilter[] getFilters() { return viewer.getFilters(); } @@ -454,12 +454,12 @@ public abstract class AbstractTimeGraphView extends TmfView implements ITmfTimeA } @Override - public void setFilters(ViewerFilter[] filters) { + public void setFilters(@NonNull ViewerFilter[] filters) { combo.setFilters(filters); } @Override - public ViewerFilter[] getFilters() { + public @NonNull ViewerFilter[] getFilters() { return combo.getFilters(); } diff --git a/tmf/org.eclipse.tracecompass.tmf.ui/src/org/eclipse/tracecompass/tmf/ui/widgets/timegraph/TimeGraphCombo.java b/tmf/org.eclipse.tracecompass.tmf.ui/src/org/eclipse/tracecompass/tmf/ui/widgets/timegraph/TimeGraphCombo.java index 3af99530f3..7d855d3251 100644 --- a/tmf/org.eclipse.tracecompass.tmf.ui/src/org/eclipse/tracecompass/tmf/ui/widgets/timegraph/TimeGraphCombo.java +++ b/tmf/org.eclipse.tracecompass.tmf.ui/src/org/eclipse/tracecompass/tmf/ui/widgets/timegraph/TimeGraphCombo.java @@ -105,7 +105,7 @@ public class TimeGraphCombo extends Composite { private final Map fSelectionListenerMap = new HashMap<>(); /** The map of viewer filters to viewer filter wrappers */ - private final Map fViewerFilterMap = new HashMap<>(); + private final Map<@NonNull ViewerFilter, @NonNull ViewerFilter> fViewerFilterMap = new HashMap<>(); /** * Flag to block the tree selection changed listener when triggered by the @@ -863,7 +863,7 @@ public class TimeGraphCombo extends Composite { /** * @param filter The filter object to be attached to the view */ - public void addFilter(ViewerFilter filter) { + public void addFilter(@NonNull ViewerFilter filter) { fInhibitTreeSelection = true; ViewerFilter wrapper = new ViewerFilterWrapper(filter); fTreeViewer.addFilter(wrapper); @@ -876,7 +876,7 @@ public class TimeGraphCombo extends Composite { /** * @param filter The filter object to be removed from the view */ - public void removeFilter(ViewerFilter filter) { + public void removeFilter(@NonNull ViewerFilter filter) { fInhibitTreeSelection = true; ViewerFilter wrapper = fViewerFilterMap.get(filter); fTreeViewer.removeFilter(wrapper); @@ -892,7 +892,7 @@ public class TimeGraphCombo extends Composite { * @return an array of viewer filters * @since 2.0 */ - public ViewerFilter[] getFilters() { + public @NonNull ViewerFilter[] getFilters() { return fTimeGraphViewer.getFilters(); } @@ -904,7 +904,7 @@ public class TimeGraphCombo extends Composite { * an array of viewer filters, or null * @since 2.0 */ - public void setFilters(ViewerFilter[] filters) { + public void setFilters(@NonNull ViewerFilter[] filters) { fInhibitTreeSelection = true; fViewerFilterMap.clear(); if (filters == null) { diff --git a/tmf/org.eclipse.tracecompass.tmf.ui/src/org/eclipse/tracecompass/tmf/ui/widgets/timegraph/TimeGraphViewer.java b/tmf/org.eclipse.tracecompass.tmf.ui/src/org/eclipse/tracecompass/tmf/ui/widgets/timegraph/TimeGraphViewer.java index 7a84a05c6c..5bdb90dd1c 100644 --- a/tmf/org.eclipse.tracecompass.tmf.ui/src/org/eclipse/tracecompass/tmf/ui/widgets/timegraph/TimeGraphViewer.java +++ b/tmf/org.eclipse.tracecompass.tmf.ui/src/org/eclipse/tracecompass/tmf/ui/widgets/timegraph/TimeGraphViewer.java @@ -23,6 +23,7 @@ import java.util.HashSet; import java.util.List; import java.util.Set; +import org.eclipse.jdt.annotation.NonNull; import org.eclipse.jface.action.Action; import org.eclipse.jface.action.ActionContributionItem; import org.eclipse.jface.action.IAction; @@ -2443,7 +2444,7 @@ public class TimeGraphViewer implements ITimeDataProvider, SelectionListener { * @param filter * The filter object to be attached to the view */ - public void addFilter(ViewerFilter filter) { + public void addFilter(@NonNull ViewerFilter filter) { fTimeGraphCtrl.addFilter(filter); refresh(); } @@ -2452,7 +2453,7 @@ public class TimeGraphViewer implements ITimeDataProvider, SelectionListener { * @param filter * The filter object to be attached to the view */ - public void removeFilter(ViewerFilter filter) { + public void removeFilter(@NonNull ViewerFilter filter) { fTimeGraphCtrl.removeFilter(filter); refresh(); } @@ -2463,7 +2464,7 @@ public class TimeGraphViewer implements ITimeDataProvider, SelectionListener { * @return an array of viewer filters * @since 2.0 */ - public ViewerFilter[] getFilters() { + public @NonNull ViewerFilter[] getFilters() { return fTimeGraphCtrl.getFilters(); } @@ -2475,7 +2476,7 @@ public class TimeGraphViewer implements ITimeDataProvider, SelectionListener { * an array of viewer filters, or null * @since 2.0 */ - public void setFilters(ViewerFilter[] filters) { + public void setFilters(@NonNull ViewerFilter[] filters) { fTimeGraphCtrl.setFilters(filters); refresh(); } diff --git a/tmf/org.eclipse.tracecompass.tmf.ui/src/org/eclipse/tracecompass/tmf/ui/widgets/timegraph/dialogs/ShowFilterDialogAction.java b/tmf/org.eclipse.tracecompass.tmf.ui/src/org/eclipse/tracecompass/tmf/ui/widgets/timegraph/dialogs/ShowFilterDialogAction.java index 72c21df20e..140e7e4d48 100644 --- a/tmf/org.eclipse.tracecompass.tmf.ui/src/org/eclipse/tracecompass/tmf/ui/widgets/timegraph/dialogs/ShowFilterDialogAction.java +++ b/tmf/org.eclipse.tracecompass.tmf.ui/src/org/eclipse/tracecompass/tmf/ui/widgets/timegraph/dialogs/ShowFilterDialogAction.java @@ -16,6 +16,7 @@ import java.util.ArrayList; import java.util.Arrays; import java.util.List; +import org.eclipse.jdt.annotation.NonNull; import org.eclipse.jface.action.Action; import org.eclipse.jface.viewers.Viewer; import org.eclipse.jface.viewers.ViewerFilter; @@ -140,7 +141,7 @@ public class ShowFilterDialogAction extends Action { * @param filter * The filter object to be added to the viewer */ - protected void addFilter(ViewerFilter filter) { + protected void addFilter(@NonNull ViewerFilter filter) { fTimeGraphViewer.addFilter(filter); } @@ -150,7 +151,7 @@ public class ShowFilterDialogAction extends Action { * @param filter * The filter object to be removed from the viewer */ - protected void removeFilter(ViewerFilter filter) { + protected void removeFilter(@NonNull ViewerFilter filter) { fTimeGraphViewer.removeFilter(filter); } diff --git a/tmf/org.eclipse.tracecompass.tmf.ui/src/org/eclipse/tracecompass/tmf/ui/widgets/timegraph/widgets/TimeGraphControl.java b/tmf/org.eclipse.tracecompass.tmf.ui/src/org/eclipse/tracecompass/tmf/ui/widgets/timegraph/widgets/TimeGraphControl.java index 681f842cfe..5a1e37d1da 100644 --- a/tmf/org.eclipse.tracecompass.tmf.ui/src/org/eclipse/tracecompass/tmf/ui/widgets/timegraph/widgets/TimeGraphControl.java +++ b/tmf/org.eclipse.tracecompass.tmf.ui/src/org/eclipse/tracecompass/tmf/ui/widgets/timegraph/widgets/TimeGraphControl.java @@ -28,6 +28,7 @@ import java.util.LinkedHashMap; import java.util.List; import java.util.Map; +import org.eclipse.jdt.annotation.NonNull; import org.eclipse.jface.action.IStatusLineManager; import org.eclipse.jface.resource.JFaceResources; import org.eclipse.jface.resource.LocalResourceManager; @@ -158,7 +159,7 @@ public class TimeGraphControl extends TimeGraphBaseControl private final Cursor fResizeCursor = Display.getDefault().getSystemCursor(SWT.CURSOR_IBEAM); private final Cursor fWaitCursor = Display.getDefault().getSystemCursor(SWT.CURSOR_WAIT); private final Cursor fZoomCursor = Display.getDefault().getSystemCursor(SWT.CURSOR_SIZEWE); - private final List fFilters = new ArrayList<>(); + private final List<@NonNull ViewerFilter> fFilters = new ArrayList<>(); private MenuDetectEvent fPendingMenuDetectEvent = null; private boolean fGridLinesVisible = true; private Color fGridLineColor = Display.getDefault().getSystemColor(SWT.COLOR_GRAY); @@ -2741,7 +2742,7 @@ public class TimeGraphControl extends TimeGraphBaseControl /** * @param filter The filter object to be attached to the view */ - public void addFilter(ViewerFilter filter) { + public void addFilter(@NonNull ViewerFilter filter) { if (!fFilters.contains(filter)) { fFilters.add(filter); } @@ -2750,7 +2751,7 @@ public class TimeGraphControl extends TimeGraphBaseControl /** * @param filter The filter object to be attached to the view */ - public void removeFilter(ViewerFilter filter) { + public void removeFilter(@NonNull ViewerFilter filter) { fFilters.remove(filter); } @@ -2760,7 +2761,7 @@ public class TimeGraphControl extends TimeGraphBaseControl * @return an array of viewer filters * @since 2.0 */ - public ViewerFilter[] getFilters() { + public @NonNull ViewerFilter[] getFilters() { return Iterables.toArray(fFilters, ViewerFilter.class); } @@ -2771,7 +2772,7 @@ public class TimeGraphControl extends TimeGraphBaseControl * an array of viewer filters, or null * @since 2.0 */ - public void setFilters(ViewerFilter[] filters) { + public void setFilters(@NonNull ViewerFilter[] filters) { fFilters.clear(); if (filters != null) { fFilters.addAll(Arrays.asList(filters)); -- 2.34.1