SpotBugs Bug Detector Report
The following document contains the results of SpotBugs
SpotBugs Version is 4.8.6
Threshold is medium
Effort is default
Summary
Classes |
Bugs |
Errors |
Missing Classes |
62 |
52 |
0 |
0 |
org.sim0mq.federatestarter.FederateStarter
Bug |
Category |
Details |
Line |
Priority |
Exception thrown in class org.sim0mq.federatestarter.FederateStarter at new org.sim0mq.federatestarter.FederateStarter(int, Properties, int, int, boolean) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks. |
BAD_PRACTICE |
CT_CONSTRUCTOR_THROW |
113 |
Medium |
Do not catch NullPointerException like in org.sim0mq.federatestarter.FederateStarter.main(String[]) |
STYLE |
DCN_NULLPOINTER_EXCEPTION |
566 |
Medium |
Found reliance on default encoding in org.sim0mq.federatestarter.FederateStarter.processKillFederate(String, Sim0MQMessage): String.getBytes() |
I18N |
DM_DEFAULT_ENCODING |
448 |
High |
Found reliance on default encoding in org.sim0mq.federatestarter.FederateStarter.waitForModelStarted(Object, Object, int): String.getBytes() |
I18N |
DM_DEFAULT_ENCODING |
354 |
High |
new org.sim0mq.federatestarter.FederateStarter(int, Properties, int, int, boolean) may expose internal representation by storing an externally mutable object into FederateStarter.softwareProperties |
MALICIOUS_CODE |
EI_EXPOSE_REP2 |
93 |
Medium |
Exceptional return value of java.io.File.delete() ignored in org.sim0mq.federatestarter.FederateStarter.processKillFederate(String, Sim0MQMessage) |
BAD_PRACTICE |
RV_RETURN_VALUE_IGNORED_BAD_PRACTICE |
484 |
Medium |
org.sim0mq.message.Sim0MQMessage
Bug |
Category |
Details |
Line |
Priority |
Exception thrown in class org.sim0mq.message.Sim0MQMessage at new org.sim0mq.message.Sim0MQMessage(boolean, Object, Object, Object, Object, Object, Object[]) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks. |
BAD_PRACTICE |
CT_CONSTRUCTOR_THROW |
118 |
Medium |
Exception thrown in class org.sim0mq.message.Sim0MQMessage at new org.sim0mq.message.Sim0MQMessage(Object[], int, Object) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks. |
BAD_PRACTICE |
CT_CONSTRUCTOR_THROW |
160 |
Medium |
org.sim0mq.message.Sim0MQMessage$Builder
org.sim0mq.message.Sim0MQReply
Bug |
Category |
Details |
Line |
Priority |
Exception thrown in class org.sim0mq.message.Sim0MQReply at new org.sim0mq.message.Sim0MQReply(boolean, Object, Object, Object, Object, Object, Object[]) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks. |
BAD_PRACTICE |
CT_CONSTRUCTOR_THROW |
47 |
Medium |
Exception thrown in class org.sim0mq.message.Sim0MQReply at new org.sim0mq.message.Sim0MQReply(Object[], int, Object) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks. |
BAD_PRACTICE |
CT_CONSTRUCTOR_THROW |
73 |
Medium |
org.sim0mq.message.federatestarter.FS2FederateStartedMessage
Bug |
Category |
Details |
Line |
Priority |
Exception thrown in class org.sim0mq.message.federatestarter.FS2FederateStartedMessage at new org.sim0mq.message.federatestarter.FS2FederateStartedMessage(Object, Object, Object, Object, Object, String, int, String) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks. |
BAD_PRACTICE |
CT_CONSTRUCTOR_THROW |
60 |
Medium |
Exception thrown in class org.sim0mq.message.federatestarter.FS2FederateStartedMessage at new org.sim0mq.message.federatestarter.FS2FederateStartedMessage(Object[]) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks. |
BAD_PRACTICE |
CT_CONSTRUCTOR_THROW |
74 |
Medium |
org.sim0mq.message.federatestarter.FS4FederateKilledMessage
Bug |
Category |
Details |
Line |
Priority |
Exception thrown in class org.sim0mq.message.federatestarter.FS4FederateKilledMessage at new org.sim0mq.message.federatestarter.FS4FederateKilledMessage(Object, Object, Object, Object, Object, boolean, String) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks. |
BAD_PRACTICE |
CT_CONSTRUCTOR_THROW |
53 |
Medium |
Exception thrown in class org.sim0mq.message.federatestarter.FS4FederateKilledMessage at new org.sim0mq.message.federatestarter.FS4FederateKilledMessage(Object[]) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks. |
BAD_PRACTICE |
CT_CONSTRUCTOR_THROW |
66 |
Medium |
org.sim0mq.message.federatestarter.FS5FederatesKilledMessage
Bug |
Category |
Details |
Line |
Priority |
Exception thrown in class org.sim0mq.message.federatestarter.FS5FederatesKilledMessage at new org.sim0mq.message.federatestarter.FS5FederatesKilledMessage(Object, Object, Object, Object, boolean, String) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks. |
BAD_PRACTICE |
CT_CONSTRUCTOR_THROW |
47 |
Medium |
Exception thrown in class org.sim0mq.message.federatestarter.FS5FederatesKilledMessage at new org.sim0mq.message.federatestarter.FS5FederatesKilledMessage(Object[]) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks. |
BAD_PRACTICE |
CT_CONSTRUCTOR_THROW |
59 |
Medium |
org.sim0mq.message.federationmanager.FM1StartFederateMessage
Bug |
Category |
Details |
Line |
Priority |
Exception thrown in class org.sim0mq.message.federationmanager.FM1StartFederateMessage at new org.sim0mq.message.federationmanager.FM1StartFederateMessage(Object, Object, Object, Object, String, String, String, String, String, String, String, String, String, boolean, boolean, boolean) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks. |
BAD_PRACTICE |
CT_CONSTRUCTOR_THROW |
152 |
Medium |
Exception thrown in class org.sim0mq.message.federationmanager.FM1StartFederateMessage at new org.sim0mq.message.federationmanager.FM1StartFederateMessage(Object[]) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks. |
BAD_PRACTICE |
CT_CONSTRUCTOR_THROW |
166 |
Medium |
org.sim0mq.message.federationmanager.FM2SimRunControlMessage
Bug |
Category |
Details |
Line |
Priority |
Exception thrown in class org.sim0mq.message.federationmanager.FM2SimRunControlMessage at new org.sim0mq.message.federationmanager.FM2SimRunControlMessage(Object, Object, Object, Object, Object, Object, Object, double, int, int, Map) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks. |
BAD_PRACTICE |
CT_CONSTRUCTOR_THROW |
93 |
Medium |
Exception thrown in class org.sim0mq.message.federationmanager.FM2SimRunControlMessage at new org.sim0mq.message.federationmanager.FM2SimRunControlMessage(Object[]) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks. |
BAD_PRACTICE |
CT_CONSTRUCTOR_THROW |
113 |
Medium |
org.sim0mq.message.federationmanager.FM2SimRunControlMessage.getStreamMap() may expose internal representation by returning FM2SimRunControlMessage.streamMap |
MALICIOUS_CODE |
EI_EXPOSE_REP |
244 |
Medium |
org.sim0mq.message.federationmanager.FM2SimRunControlMessage.createPayloadArray(Object, Object, Object, double, int, int, Map) makes inefficient use of keySet iterator instead of entrySet iterator |
PERFORMANCE |
WMI_WRONG_MAP_ITERATOR |
173 |
Medium |
org.sim0mq.message.federationmanager.FM2SimRunControlMessage$Builder
Bug |
Category |
Details |
Line |
Priority |
org.sim0mq.message.federationmanager.FM2SimRunControlMessage$Builder.setStreamMap(Map) may expose internal representation by storing an externally mutable object into FM2SimRunControlMessage$Builder.streamMap |
MALICIOUS_CODE |
EI_EXPOSE_REP2 |
410 |
Medium |
org.sim0mq.message.federationmanager.FM3SetParameterMessage
Bug |
Category |
Details |
Line |
Priority |
Exception thrown in class org.sim0mq.message.federationmanager.FM3SetParameterMessage at new org.sim0mq.message.federationmanager.FM3SetParameterMessage(Object, Object, Object, Object, String, Object) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks. |
BAD_PRACTICE |
CT_CONSTRUCTOR_THROW |
48 |
Medium |
Exception thrown in class org.sim0mq.message.federationmanager.FM3SetParameterMessage at new org.sim0mq.message.federationmanager.FM3SetParameterMessage(Object[]) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks. |
BAD_PRACTICE |
CT_CONSTRUCTOR_THROW |
60 |
Medium |
org.sim0mq.message.federationmanager.FM6RequestStatisticsMessage
Bug |
Category |
Details |
Line |
Priority |
Exception thrown in class org.sim0mq.message.federationmanager.FM6RequestStatisticsMessage at new org.sim0mq.message.federationmanager.FM6RequestStatisticsMessage(Object, Object, Object, Object, String) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks. |
BAD_PRACTICE |
CT_CONSTRUCTOR_THROW |
50 |
Medium |
Exception thrown in class org.sim0mq.message.federationmanager.FM6RequestStatisticsMessage at new org.sim0mq.message.federationmanager.FM6RequestStatisticsMessage(Object[]) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks. |
BAD_PRACTICE |
CT_CONSTRUCTOR_THROW |
62 |
Medium |
org.sim0mq.message.modelcontroller.MC1StatusMessage
Bug |
Category |
Details |
Line |
Priority |
Exception thrown in class org.sim0mq.message.modelcontroller.MC1StatusMessage at new org.sim0mq.message.modelcontroller.MC1StatusMessage(Object, Object, Object, Object, Object, String, String) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks. |
BAD_PRACTICE |
CT_CONSTRUCTOR_THROW |
49 |
Medium |
Exception thrown in class org.sim0mq.message.modelcontroller.MC1StatusMessage at new org.sim0mq.message.modelcontroller.MC1StatusMessage(Object[]) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks. |
BAD_PRACTICE |
CT_CONSTRUCTOR_THROW |
61 |
Medium |
org.sim0mq.message.modelcontroller.MC2AckNakMessage
Bug |
Category |
Details |
Line |
Priority |
Exception thrown in class org.sim0mq.message.modelcontroller.MC2AckNakMessage at new org.sim0mq.message.modelcontroller.MC2AckNakMessage(Object, Object, Object, Object, Object, boolean, String) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks. |
BAD_PRACTICE |
CT_CONSTRUCTOR_THROW |
50 |
Medium |
Exception thrown in class org.sim0mq.message.modelcontroller.MC2AckNakMessage at new org.sim0mq.message.modelcontroller.MC2AckNakMessage(Object[]) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks. |
BAD_PRACTICE |
CT_CONSTRUCTOR_THROW |
62 |
Medium |
org.sim0mq.message.modelcontroller.MC3StatisticsMessage
Bug |
Category |
Details |
Line |
Priority |
Exception thrown in class org.sim0mq.message.modelcontroller.MC3StatisticsMessage at new org.sim0mq.message.modelcontroller.MC3StatisticsMessage(Object, Object, Object, Object, String, Object) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks. |
BAD_PRACTICE |
CT_CONSTRUCTOR_THROW |
54 |
Medium |
Exception thrown in class org.sim0mq.message.modelcontroller.MC3StatisticsMessage at new org.sim0mq.message.modelcontroller.MC3StatisticsMessage(Object[]) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks. |
BAD_PRACTICE |
CT_CONSTRUCTOR_THROW |
66 |
Medium |
org.sim0mq.message.modelcontroller.MC4StatisticsErrorMessage
Bug |
Category |
Details |
Line |
Priority |
Exception thrown in class org.sim0mq.message.modelcontroller.MC4StatisticsErrorMessage at new org.sim0mq.message.modelcontroller.MC4StatisticsErrorMessage(Object, Object, Object, Object, String, String) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks. |
BAD_PRACTICE |
CT_CONSTRUCTOR_THROW |
48 |
Medium |
Exception thrown in class org.sim0mq.message.modelcontroller.MC4StatisticsErrorMessage at new org.sim0mq.message.modelcontroller.MC4StatisticsErrorMessage(Object[]) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks. |
BAD_PRACTICE |
CT_CONSTRUCTOR_THROW |
60 |
Medium |
org.sim0mq.message.types.NumberDuration
Bug |
Category |
Details |
Line |
Priority |
org.sim0mq.message.types.NumberDuration.getDuration() may expose internal representation by returning NumberDuration.doubleScalar |
MALICIOUS_CODE |
EI_EXPOSE_REP |
177 |
Medium |
org.sim0mq.message.types.NumberDuration.getFloatDuration() may expose internal representation by returning NumberDuration.floatScalar |
MALICIOUS_CODE |
EI_EXPOSE_REP |
205 |
Medium |
org.sim0mq.message.types.NumberDuration.getNumber() may expose internal representation by returning NumberDuration.doubleScalar |
MALICIOUS_CODE |
EI_EXPOSE_REP |
153 |
Medium |
org.sim0mq.message.types.NumberDuration.getNumber() may expose internal representation by returning NumberDuration.floatScalar |
MALICIOUS_CODE |
EI_EXPOSE_REP |
157 |
Medium |
org.sim0mq.message.types.NumberDuration.getObject() may expose internal representation by returning NumberDuration.doubleScalar |
MALICIOUS_CODE |
EI_EXPOSE_REP |
129 |
Medium |
org.sim0mq.message.types.NumberDuration.getObject() may expose internal representation by returning NumberDuration.floatScalar |
MALICIOUS_CODE |
EI_EXPOSE_REP |
133 |
Medium |
new org.sim0mq.message.types.NumberDuration(Duration) may expose internal representation by storing an externally mutable object into NumberDuration.doubleScalar |
MALICIOUS_CODE |
EI_EXPOSE_REP2 |
52 |
Medium |
new org.sim0mq.message.types.NumberDuration(FloatDuration) may expose internal representation by storing an externally mutable object into NumberDuration.floatScalar |
MALICIOUS_CODE |
EI_EXPOSE_REP2 |
64 |
Medium |
org.sim0mq.message.types.NumberTime
Bug |
Category |
Details |
Line |
Priority |
org.sim0mq.message.types.NumberTime.getFloatTime() may expose internal representation by returning NumberTime.floatScalar |
MALICIOUS_CODE |
EI_EXPOSE_REP |
205 |
Medium |
org.sim0mq.message.types.NumberTime.getNumber() may expose internal representation by returning NumberTime.doubleScalar |
MALICIOUS_CODE |
EI_EXPOSE_REP |
153 |
Medium |
org.sim0mq.message.types.NumberTime.getNumber() may expose internal representation by returning NumberTime.floatScalar |
MALICIOUS_CODE |
EI_EXPOSE_REP |
157 |
Medium |
org.sim0mq.message.types.NumberTime.getObject() may expose internal representation by returning NumberTime.doubleScalar |
MALICIOUS_CODE |
EI_EXPOSE_REP |
129 |
Medium |
org.sim0mq.message.types.NumberTime.getObject() may expose internal representation by returning NumberTime.floatScalar |
MALICIOUS_CODE |
EI_EXPOSE_REP |
133 |
Medium |
org.sim0mq.message.types.NumberTime.getTime() may expose internal representation by returning NumberTime.doubleScalar |
MALICIOUS_CODE |
EI_EXPOSE_REP |
177 |
Medium |
new org.sim0mq.message.types.NumberTime(Time) may expose internal representation by storing an externally mutable object into NumberTime.doubleScalar |
MALICIOUS_CODE |
EI_EXPOSE_REP2 |
52 |
Medium |
new org.sim0mq.message.types.NumberTime(FloatTime) may expose internal representation by storing an externally mutable object into NumberTime.floatScalar |
MALICIOUS_CODE |
EI_EXPOSE_REP2 |
64 |
Medium |