SpotBugs Bug Detector Report
The following document contains the results of SpotBugs
SpotBugs Version is 4.5.0
Threshold is low
Effort is max
Summary
Classes |
Bugs |
Errors |
Missing Classes |
110 |
18 |
0 |
0 |
it.tidalwave.role.impl.AsDelegate
it.tidalwave.role.impl.DefaultContextManager
Bug |
Category |
Details |
Line |
Priority |
it.tidalwave.util.ReflectionUtils
Bug |
Category |
Details |
Line |
Priority |
Invocation of reflect.Field.setAccessible(boolean), which should be invoked from within a doPrivileged block, in it.tidalwave.util.ReflectionUtils.injectDependencies(Object, Map) |
MALICIOUS_CODE |
DP_DO_INSIDE_DO_PRIVILEGED |
179 |
Low |
Possible null pointer dereference in it.tidalwave.util.ReflectionUtils.getTypeArguments(Class, Class) due to return value of called method |
STYLE |
NP_NULL_ON_SOME_PATH_FROM_RETURN_VALUE |
77 |
Medium |
it.tidalwave.util.ShortNames
Bug |
Category |
Details |
Line |
Priority |
Exception is caught when Exception is not thrown in it.tidalwave.util.ShortNames.shortId(Object) |
STYLE |
REC_CATCH_EXCEPTION |
155 |
Medium |
it.tidalwave.util.impl.DefaultPreferencesHandler
Bug |
Category |
Details |
Line |
Priority |
Use of non-localized String.toUpperCase() or String.toLowerCase() in new it.tidalwave.util.impl.DefaultPreferencesHandler() |
I18N |
DM_CONVERT_CASE |
67 |
Low |
it.tidalwave.util.impl.finder.MappingFinder
Bug |
Category |
Details |
Line |
Priority |
The field it.tidalwave.util.impl.finder.MappingFinder.delegate is transient but isn't set by deserialization |
BAD_PRACTICE |
SE_TRANSIENT_FIELD_NOT_RESTORED |
|
Medium |
The field it.tidalwave.util.impl.finder.MappingFinder.decorator is transient but isn't set by deserialization |
BAD_PRACTICE |
SE_TRANSIENT_FIELD_NOT_RESTORED |
|
Low |
it.tidalwave.util.impl.finder.ProviderFinder
Bug |
Category |
Details |
Line |
Priority |
Class it.tidalwave.util.impl.finder.ProviderFinder defines non-transient non-serializable instance field supplier |
BAD_PRACTICE |
SE_BAD_FIELD |
|
Medium |
it.tidalwave.util.impl.finder.SupplierFinder
Bug |
Category |
Details |
Line |
Priority |
Class it.tidalwave.util.impl.finder.SupplierFinder defines non-transient non-serializable instance field supplier |
BAD_PRACTICE |
SE_BAD_FIELD |
|
Medium |
it.tidalwave.util.spi.DefaultProcessExecutor
Bug |
Category |
Details |
Line |
Priority |
Use of non-localized String.toUpperCase() or String.toLowerCase() in it.tidalwave.util.spi.DefaultProcessExecutor.isWindows() |
I18N |
DM_CONVERT_CASE |
483 |
Low |
Found reliance on default encoding in it.tidalwave.util.spi.DefaultProcessExecutor.start(): new java.io.PrintWriter(OutputStream, boolean) |
I18N |
DM_DEFAULT_ENCODING |
428 |
High |
Useless control flow in it.tidalwave.util.spi.DefaultProcessExecutor.waitForCompletion() |
STYLE |
UCF_USELESS_CONTROL_FLOW |
455 |
Low |
it.tidalwave.util.spi.DefaultProcessExecutor$DefaultConsoleOutput
Bug |
Category |
Details |
Line |
Priority |
Found reliance on default encoding in it.tidalwave.util.spi.DefaultProcessExecutor$DefaultConsoleOutput.read(): new java.io.InputStreamReader(InputStream) |
I18N |
DM_DEFAULT_ENCODING |
279 |
High |
Naked notify in it.tidalwave.util.spi.DefaultProcessExecutor$DefaultConsoleOutput.read() |
MT_CORRECTNESS |
NN_NAKED_NOTIFY |
319 |
Medium |
Exceptional return value of java.util.concurrent.ExecutorService.submit(Runnable) ignored in it.tidalwave.util.spi.DefaultProcessExecutor$DefaultConsoleOutput.start() |
BAD_PRACTICE |
RV_RETURN_VALUE_IGNORED_BAD_PRACTICE |
157 |
Low |
Unconditional wait in it.tidalwave.util.spi.DefaultProcessExecutor$DefaultConsoleOutput.waitFor(String) |
MT_CORRECTNESS |
UW_UNCOND_WAIT |
252 |
Low |