The following document contains the results of SpotBugs
SpotBugs Version is 4.1.4
Threshold is medium
Effort is default
| Classes | Bugs | Errors | Missing Classes | 
|---|---|---|---|
| 104 | 10 | 0 | 0 | 
| Class | Bugs | 
|---|---|
| org.djutils.event.EventProducerImpl | 2 | 
| org.djutils.quadtree.QuadTree$SubTree | 2 | 
| org.djutils.reflection.MethodSignature | 1 | 
| org.djutils.traceverifier.TraceVerifier | 5 | 
| Bug | Category | Details | Line | Priority | 
|---|---|---|---|---|
| Inconsistent synchronization of org.djutils.event.EventProducerImpl.listeners; locked 87% of time | MT_CORRECTNESS | IS2_INCONSISTENT_SYNC | 604 | Medium | 
| org.djutils.event.EventProducerImpl.removeAllListeners(Class) makes inefficient use of keySet iterator instead of entrySet iterator | PERFORMANCE | WMI_WRONG_MAP_ITERATOR | 533 | Medium | 
| Bug | Category | Details | Line | Priority | 
|---|---|---|---|---|
| Invocation of toString on QuadTree$SubTree.children in org.djutils.quadtree.QuadTree$SubTree.toString() | CORRECTNESS | DMI_INVOKING_TOSTRING_ON_ARRAY | 533 | High | 
| org.djutils.quadtree.QuadTree$SubTree is serializable and an inner class | BAD_PRACTICE | SE_INNER_CLASS | 275-602 | Medium | 
| Bug | Category | Details | Line | Priority | 
|---|---|---|---|---|
| org.djutils.reflection.MethodSignature.getParameterTypes(String) concatenates strings using + in a loop | PERFORMANCE | SBSC_USE_STRINGBUFFER_CONCATENATION | 146 | Medium | 
| Bug | Category | Details | Line | Priority | 
|---|---|---|---|---|
| Found reliance on default encoding in new org.djutils.traceverifier.TraceVerifier(String): new java.io.FileReader(String) | I18N | DM_DEFAULT_ENCODING | 47 | High | 
| Found reliance on default encoding in new org.djutils.traceverifier.TraceVerifier(String): new java.io.FileWriter(String) | I18N | DM_DEFAULT_ENCODING | 54 | High | 
| Found reliance on default encoding in org.djutils.traceverifier.TraceVerifier.sample(String, String): new java.io.FileWriter(String, boolean) | I18N | DM_DEFAULT_ENCODING | 89 | High | 
| Dereference of the result of readLine() without nullcheck in org.djutils.traceverifier.TraceVerifier.sample(String, String) | STYLE | NP_DEREFERENCE_OF_READLINE_VALUE | 73 | Medium | 
| Format string should use %n rather than \n in org.djutils.traceverifier.TraceVerifier.sample(String, String) | BAD_PRACTICE | VA_FORMAT_STRING_USES_NEWLINE | 84 | Medium |