Suppress issues found by FindBugs: EI_EXPOSE_REP and EI_EXPOSE_REP2
http://findbugs.sourceforge.net/bugDescriptions.html#EI_EXPOSE_REP
http://findbugs.sourceforge.net/bugDescriptions.html#EI_EXPOSE_REP2
A proper fix for EI_EXPOSE_REP would require eventually to return a copy of an
internal object.
A proper fix for EI_EXPOSE_REP2 would require eventually to store a copy of the
provided object-argument.
However, the performance implication of creating the extra copies is not clear,
hence for the time being all those issues are suppressed by using the following
statements:
@SuppressFBWarnings(value = "EI_EXPOSE_REP",
justification = "TODO: Return a copy of the object?")
@SuppressFBWarnings(value = "EI_EXPOSE_REP2",
justification = "TODO: Store a copy of the object?")
Those suppressed warnings should be re-evaluated and addressed on case-by-case, e.g.
create object copies as appropriate.
Change-Id: I2df00242876e6c185d9fc098b15217138a324a8d
diff --git a/src/main/java/net/onrc/onos/core/packet/LLDPTLV.java b/src/main/java/net/onrc/onos/core/packet/LLDPTLV.java
index 402a508..7acef72 100644
--- a/src/main/java/net/onrc/onos/core/packet/LLDPTLV.java
+++ b/src/main/java/net/onrc/onos/core/packet/LLDPTLV.java
@@ -20,6 +20,8 @@
import java.nio.ByteBuffer;
import java.util.Arrays;
+import edu.umd.cs.findbugs.annotations.SuppressFBWarnings;
+
/**
* @author David Erickson (daviderickson@cs.stanford.edu)
*/
@@ -61,6 +63,8 @@
/**
* @return the value
*/
+ @SuppressFBWarnings(value = "EI_EXPOSE_REP",
+ justification = "TODO: Return a copy of the object?")
public byte[] getValue() {
return value;
}
@@ -68,6 +72,8 @@
/**
* @param value the value to set
*/
+ @SuppressFBWarnings(value = "EI_EXPOSE_REP2",
+ justification = "TODO: Store a copy of the object?")
public LLDPTLV setValue(byte[] value) {
this.value = value;
return this;