FindBugs Bug Detector Report
The following document contains the results of FindBugs Report
FindBugs Version is 2.0.2
Threshold is experimental
Effort is max
Summary
Classes |
Bugs |
Errors |
Missing Classes |
9 |
16 |
0 |
0 |
net.sf.mbus4j.devices.GenericDevice
Bug |
Category |
Details |
Line |
Priority |
net.sf.mbus4j.devices.GenericDevice.getStatus() may expose internal representation by returning GenericDevice.status |
MALICIOUS_CODE |
EI_EXPOSE_REP |
135 |
Medium |
net.sf.mbus4j.devices.GenericDevice.setStatus(UserDataResponse$StatusCode[]) may expose internal representation by storing an externally mutable object into GenericDevice.status |
MALICIOUS_CODE |
EI_EXPOSE_REP2 |
140 |
Medium |
Confusing to have methods net.sf.mbus4j.devices.GenericDevice.getIdentNumber() and net.sf.mbus4j.master.ValueRequestPointLocator.getIdentnumber() |
BAD_PRACTICE |
NM_CONFUSING |
120 |
Low |
Confusing to have methods net.sf.mbus4j.devices.GenericDevice.setIdentNumber(int) and net.sf.mbus4j.master.ValueRequestPointLocator.setIdentnumber(int) |
BAD_PRACTICE |
NM_CONFUSING |
75-76 |
Low |
Class net.sf.mbus4j.devices.GenericDevice defines non-transient non-serializable instance field responseFrameContainers |
BAD_PRACTICE |
SE_BAD_FIELD |
Not available |
Medium |
net.sf.mbus4j.devices.GenericDevice is Serializable; consider declaring a serialVersionUID |
BAD_PRACTICE |
SE_NO_SERIALVERSIONID |
57-313 |
Low |
net.sf.mbus4j.master.MBusMaster
Bug |
Category |
Details |
Line |
Priority |
Dead store to fi in net.sf.mbus4j.master.MBusMaster.readResponse(byte) |
STYLE |
DLS_DEAD_LOCAL_STORE |
614 |
Medium |
Synchronization performed on java.util.concurrent.ConcurrentLinkedQueue in net.sf.mbus4j.master.MBusMaster.clearFrameQueue() |
MT_CORRECTNESS |
JLM_JSR166_UTILCONCURRENT_MONITORENTER |
291 |
Medium |
Synchronization performed on java.util.concurrent.ConcurrentLinkedQueue in net.sf.mbus4j.master.MBusMaster.pollFrameOrWaitUntil(long) |
MT_CORRECTNESS |
JLM_JSR166_UTILCONCURRENT_MONITORENTER |
523 |
Medium |
Useless control flow in net.sf.mbus4j.master.MBusMaster.sendRequestUserData(Map) |
STYLE |
UCF_USELESS_CONTROL_FLOW |
470 |
Low |
Private method net.sf.mbus4j.master.MBusMaster.removeFrame() is never called |
PERFORMANCE |
UPM_UNCALLED_PRIVATE_METHOD |
367 |
Low |
Format string should use %n rather than \n in net.sf.mbus4j.master.MBusMaster.sendSlaveSelect(int, short, byte, byte, int) |
BAD_PRACTICE |
VA_FORMAT_STRING_USES_NEWLINE |
502 |
Medium |
net.sf.mbus4j.master.MBusMaster.sendRequestUserData(Map) makes inefficient use of keySet iterator instead of entrySet iterator |
PERFORMANCE |
WMI_WRONG_MAP_ITERATOR |
462 |
Medium |
net.sf.mbus4j.master.MBusMaster$StreamListener
Bug |
Category |
Details |
Line |
Priority |
Synchronization performed on java.util.concurrent.ConcurrentLinkedQueue in net.sf.mbus4j.master.MBusMaster$StreamListener.success(Frame) |
MT_CORRECTNESS |
JLM_JSR166_UTILCONCURRENT_MONITORENTER |
216 |
Medium |
net.sf.mbus4j.master.ValueRequestPointLocator
Bug |
Category |
Details |
Line |
Priority |
net.sf.mbus4j.master.ValueRequestPointLocator.getVifes() may expose internal representation by returning ValueRequestPointLocator.vifes |
MALICIOUS_CODE |
EI_EXPOSE_REP |
251 |
Medium |
net.sf.mbus4j.master.ValueRequestPointLocator.setVifes(Vife[]) may expose internal representation by storing an externally mutable object into ValueRequestPointLocator.vifes |
MALICIOUS_CODE |
EI_EXPOSE_REP2 |
258 |
Medium |