The following document contains the results of FindBugs Report
FindBugs Version is 1.2.1
Threshold is Low
Effort is Default
| Classes | Bugs | Errors | Missing Classes | 
|---|---|---|---|
| 319 | 55 | 0 | 0 | 
| Bug | Category | Details | Line | 
|---|---|---|---|
| Unread field: pl.edu.agh.cast.converter.PrefixConverter.prefix | PERFORMANCE | URF_UNREAD_FIELD | 43 | 
| Bug | Category | Details | Line | 
|---|---|---|---|
| pl.edu.agh.cast.model.ModelColumn.getParameters() may expose internal representation by returning ModelColumn.parameters | MALICIOUS_CODE | EI_EXPOSE_REP | 187 | 
| pl.edu.agh.cast.model.ModelColumn.setParameters(ModelColumnParameter[]) may expose internal representation by storing an externally mutable object into ModelColumn.parameters | MALICIOUS_CODE | EI_EXPOSE_REP2 | 159 | 
| Bug | Category | Details | Line | 
|---|---|---|---|
| pl.edu.agh.cast.model.ModelColumnComparator implements Comparator but not Serializable | BAD_PRACTICE | SE_COMPARATOR_SHOULD_BE_SERIALIZABLE | 28-36 | 
| Bug | Category | Details | Line | 
|---|---|---|---|
| pl.edu.agh.cast.model.ModelInfo defines compareTo(ModelInfo) and uses Object.equals() | BAD_PRACTICE | EQ_COMPARETO_USE_OBJECT_EQUALS | 69-75 | 
| Bug | Category | Details | Line | 
|---|---|---|---|
| Possible null pointer dereference of columns in pl.edu.agh.cast.model.ModelUtil.getColumnDefaultValue(String, String) | CORRECTNESS | NP_NULL_ON_SOME_PATH | 245 | 
| Should pl.edu.agh.cast.model.ModelUtil.getColumnParameters(IConfigurationElement) return a zero length array rather than null? | STYLE | PZLA_PREFER_ZERO_LENGTH_ARRAYS | 172 | 
| Bug | Category | Details | Line | 
|---|---|---|---|
| Write to static field pl.edu.agh.cast.model.base.BasePlugin.plugin from instance method pl.edu.agh.cast.model.base.BasePlugin.start(BundleContext) | STYLE | ST_WRITE_TO_STATIC_FROM_INSTANCE_METHOD | 215 | 
| Write to static field pl.edu.agh.cast.model.base.BasePlugin.plugin from instance method pl.edu.agh.cast.model.base.BasePlugin.stop(BundleContext) | STYLE | ST_WRITE_TO_STATIC_FROM_INSTANCE_METHOD | 226 | 
| Bug | Category | Details | Line | 
|---|---|---|---|
| Call to method of static java.text.DateFormat in pl.edu.agh.cast.model.base.DataImporter.getName(String) | MT_CORRECTNESS | STCAL_INVOKE_ON_STATIC_DATE_FORMAT_INSTANCE | 210 | 
| Found static field of type java.text.DateFormat in pl.edu.agh.cast.model.base.DataImporter.DATA_SET_DATE_FORMAT | MT_CORRECTNESS | STCAL_STATIC_SIMPLE_DATA_FORMAT_INSTANCE | Not available | 
| Bug | Category | Details | Line | 
|---|---|---|---|
| pl.edu.agh.cast.model.base.TimedRelation.getDate() may expose internal representation by returning TimedRelation.date | MALICIOUS_CODE | EI_EXPOSE_REP | 71 | 
| pl.edu.agh.cast.model.base.TimedRelation.TimedRelation(IEntity, IEntity, Date) may expose internal representation by storing an externally mutable object into TimedRelation.date | MALICIOUS_CODE | EI_EXPOSE_REP2 | 59 | 
| pl.edu.agh.cast.model.base.TimedRelation.setDate(Date) may expose internal representation by storing an externally mutable object into TimedRelation.date | MALICIOUS_CODE | EI_EXPOSE_REP2 | 81 | 
| Bug | Category | Details | Line | 
|---|---|---|---|
| pl.edu.agh.cast.model.base.util.Messages.AbstractModelDataLoader_0 isn't final but should be | MALICIOUS_CODE | MS_SHOULD_BE_FINAL | 61 | 
| pl.edu.agh.cast.model.base.util.Messages.AbstractModelDataLoader_1 isn't final but should be | MALICIOUS_CODE | MS_SHOULD_BE_FINAL | 61 | 
| Bug | Category | Details | Line | 
|---|---|---|---|
| Method pl.edu.agh.cast.model.mapper.AbstractMappable.getAttributeNames() uses Collection.toArray() with zero-length array argument | PERFORMANCE | ITA_INEFFICIENT_TO_ARRAY | 152 | 
| Exception is caught when Exception is not thrown in pl.edu.agh.cast.model.mapper.AbstractMappable.getAttribute(String) | STYLE | REC_CATCH_EXCEPTION | 105 | 
| Exception is caught when Exception is not thrown in pl.edu.agh.cast.model.mapper.AbstractMappable.setAttribute(String, Object) | STYLE | REC_CATCH_EXCEPTION | 125 | 
| Bug | Category | Details | Line | 
|---|---|---|---|
| Method pl.edu.agh.cast.model.mapper.JRubyIntegration.stringifyKeys(Map) makes inefficient use of keySet iterator instead of entrySet iterator | PERFORMANCE | WMI_WRONG_MAP_ITERATOR | 35 | 
| Bug | Category | Details | Line | 
|---|---|---|---|
| Result of integer multiplication cast to long in pl.edu.agh.cast.model.mapper.Link.hashCode() | STYLE | ICAST_INTEGER_MULTIPLY_CAST_TO_LONG | 627 | 
| A prepared statement is generated from a nonconstant String at pl.edu.agh.cast.model.mapper.Link.<static initializer>() | BAD_PRACTICE | SQL_PREPARED_STATEMENT_GENERATED_FROM_NONCONSTANT_STRING | 197 | 
| Bug | Category | Details | Line | 
|---|---|---|---|
| pl.edu.agh.cast.model.mapper.Mapper.finalize() is public; should be protected | MALICIOUS_CODE | FI_PUBLIC_SHOULD_BE_PROTECTED | 194-205 | 
| Bug | Category | Details | Line | 
|---|---|---|---|
| pl.edu.agh.cast.model.mapper.Node.setValue(boolean) invokes inefficient Boolean constructor; use Boolean.valueOf(...) instead | PERFORMANCE | DM_BOOLEAN_CTOR | 209 | 
| Use of non-localized String.toUpperCase() or String.toLowerCase | I18N | DM_CONVERT_CASE | 837 | 
| Method pl.edu.agh.cast.model.mapper.Node.loadValues(Integer, Float, String, Timestamp, Boolean) invokes inefficient Double(double) constructor; use Double.valueOf(double) instead | PERFORMANCE | DM_FP_NUMBER_CTOR | 976 | 
| Method pl.edu.agh.cast.model.mapper.Node.setValue(double) invokes inefficient Double(double) constructor; use Double.valueOf(double) instead | PERFORMANCE | DM_FP_NUMBER_CTOR | 187 | 
| Method pl.edu.agh.cast.model.mapper.Node.getLongValue() invokes inefficient Long(long) constructor; use Long.valueOf(long) instead | PERFORMANCE | DM_NUMBER_CTOR | 175 | 
| Method pl.edu.agh.cast.model.mapper.Node.loadValues(Integer, Float, String, Timestamp, Boolean) invokes inefficient Long(long) constructor; use Long.valueOf(long) instead | PERFORMANCE | DM_NUMBER_CTOR | 970 | 
| Method pl.edu.agh.cast.model.mapper.Node.setValue(int) invokes inefficient Long(long) constructor; use Long.valueOf(long) instead | PERFORMANCE | DM_NUMBER_CTOR | 162 | 
| Method pl.edu.agh.cast.model.mapper.Node.setValue(long) invokes inefficient Long(long) constructor; use Long.valueOf(long) instead | PERFORMANCE | DM_NUMBER_CTOR | 158 | 
| Method pl.edu.agh.cast.model.mapper.Node.find(String, SortedMap) passes a nonconstant String to an execute method on an SQL statement | BAD_PRACTICE | SQL_NONCONSTANT_STRING_PASSED_TO_EXECUTE | 793 | 
| A prepared statement is generated from a nonconstant String at pl.edu.agh.cast.model.mapper.Node.<static initializer>() | BAD_PRACTICE | SQL_PREPARED_STATEMENT_GENERATED_FROM_NONCONSTANT_STRING | 579 | 
| A prepared statement is generated from a nonconstant String at pl.edu.agh.cast.model.mapper.Node.<static initializer>() | BAD_PRACTICE | SQL_PREPARED_STATEMENT_GENERATED_FROM_NONCONSTANT_STRING | 585 | 
| Call to method of static java.text.DateFormat in pl.edu.agh.cast.model.mapper.Node.subquery(SortedMap, StringBuilder) | MT_CORRECTNESS | STCAL_INVOKE_ON_STATIC_DATE_FORMAT_INSTANCE | 857 | 
| Found static field of type java.text.DateFormat in pl.edu.agh.cast.model.mapper.Node.SIMPLE_DATE_FORMAT | MT_CORRECTNESS | STCAL_STATIC_SIMPLE_DATA_FORMAT_INSTANCE | Not available | 
| Unread field: pl.edu.agh.cast.model.mapper.Node.findAttributeByIdStmt | PERFORMANCE | URF_UNREAD_FIELD | 521 | 
| Bug | Category | Details | Line | 
|---|---|---|---|
| pl.edu.agh.cast.model.mapper.internal.AbstractLoader.log isn't final but should be | MALICIOUS_CODE | MS_SHOULD_BE_FINAL | 62 | 
| Bug | Category | Details | Line | 
|---|---|---|---|
| pl.edu.agh.cast.model.mapper.internal.AbstractRemover.log isn't final but should be | MALICIOUS_CODE | MS_SHOULD_BE_FINAL | 40 | 
| Bug | Category | Details | Line | 
|---|---|---|---|
| pl.edu.agh.cast.model.mapper.internal.AbstractSaver.log isn't final but should be | MALICIOUS_CODE | MS_SHOULD_BE_FINAL | 44 | 
| Bug | Category | Details | Line | 
|---|---|---|---|
| Method pl.edu.agh.cast.model.mapper.internal.Helper.mappedAttributeMethods(Class) uses Collection.toArray() with zero-length array argument | PERFORMANCE | ITA_INEFFICIENT_TO_ARRAY | 200 | 
| Method pl.edu.agh.cast.model.mapper.internal.Helper.mappedLinkMethods(Class) uses Collection.toArray() with zero-length array argument | PERFORMANCE | ITA_INEFFICIENT_TO_ARRAY | 218 | 
| Bug | Category | Details | Line | 
|---|---|---|---|
| pl.edu.agh.cast.model.mapper.internal.ModelParser.endElement(String, String, String) invokes inefficient Boolean constructor; use Boolean.valueOf(...) instead | PERFORMANCE | DM_BOOLEAN_CTOR | 201 | 
| Exception is caught when Exception is not thrown in pl.edu.agh.cast.model.mapper.internal.ModelParser.startElement(String, String, String, Attributes) | STYLE | REC_CATCH_EXCEPTION | 150 | 
| Exception is caught when Exception is not thrown in pl.edu.agh.cast.model.mapper.internal.ModelParser.endElement(String, String, String) | STYLE | REC_CATCH_EXCEPTION | 208 | 
| Call to method of static java.text.DateFormat in pl.edu.agh.cast.model.mapper.internal.ModelParser.endElement(String, String, String) | MT_CORRECTNESS | STCAL_INVOKE_ON_STATIC_DATE_FORMAT_INSTANCE | 198 | 
| ModelParser.dataSet not initialized in constructor | STYLE | UWF_FIELD_NOT_INITIALIZED_IN_CONSTRUCTOR | Not available | 
| Bug | Category | Details | Line | 
|---|---|---|---|
| pl.edu.agh.cast.model.mapper.internal.XMLLoader.loadModel() may fail to close stream on exception | BAD_PRACTICE | OS_OPEN_STREAM_EXCEPTION_PATH | 125 | 
| Bug | Category | Details | Line | 
|---|---|---|---|
| The class pl.edu.agh.cast.model.mapper.internal.XMLLoader$1 could be refactored into a named _static_ inner class | PERFORMANCE | SIC_INNER_SHOULD_BE_STATIC_ANON | 108-113 | 
| Bug | Category | Details | Line | 
|---|---|---|---|
| pl.edu.agh.cast.model.mapper.internal.XMLSaver.saveModelProps(IModel) may fail to close stream on exception | BAD_PRACTICE | OS_OPEN_STREAM_EXCEPTION_PATH | 190 | 
| Call to method of static java.text.DateFormat in pl.edu.agh.cast.model.mapper.internal.XMLSaver.appendAttributesXML(Mappable, Class) | MT_CORRECTNESS | STCAL_INVOKE_ON_STATIC_DATE_FORMAT_INSTANCE | 382 | 
| Found static field of type java.text.DateFormat in pl.edu.agh.cast.model.mapper.internal.XMLSaver.DATE_FORMAT | MT_CORRECTNESS | STCAL_STATIC_SIMPLE_DATA_FORMAT_INSTANCE | Not available | 
| Bug | Category | Details | Line | 
|---|---|---|---|
| Method pl.edu.agh.cast.rawdata.stat.BrokenDataInfo.removeBrokenRowInfo(BrokenRowInfo, boolean) invokes inefficient Integer(int) constructor; use Integer.valueOf(int) instead | PERFORMANCE | DM_NUMBER_CTOR | 179 | 
| Method pl.edu.agh.cast.rawdata.stat.BrokenDataInfo.restoreDataRow(int) invokes inefficient Integer(int) constructor; use Integer.valueOf(int) instead | PERFORMANCE | DM_NUMBER_CTOR | 194 | 
| Bug | Category | Details | Line | 
|---|---|---|---|
| pl.edu.agh.cast.rawdata.stat.ErrorInfo.ErrorInfo(ErrorType, String[]) may expose internal representation by storing an externally mutable object into ErrorInfo.params | MALICIOUS_CODE | EI_EXPOSE_REP2 | 59 |