FindBugs Bug Detector Report

The following document contains the results of FindBugs Report

FindBugs Version is 1.2.0

Threshold is Low

Effort is Default

Summary

ClassesBugsErrorsMissing Classes
3919101

Files

ClassBugs
org.andromda.core.common.BasePlugin1
org.andromda.core.common.BuildInformation1
org.andromda.core.common.ClassUtils1
org.andromda.core.common.ComponentContainer2
org.andromda.core.common.ExceptionRecorder4
org.andromda.core.common.Introspector7
org.andromda.core.common.Merger1
org.andromda.core.common.ResourceFinder1
org.andromda.core.common.ResourceUtils9
org.andromda.core.common.ResourceWriter1
org.andromda.core.common.XmlObjectFactory3
org.andromda.core.configuration.Configuration5
org.andromda.core.configuration.Filter1
org.andromda.core.configuration.Filters2
org.andromda.core.configuration.Location2
org.andromda.core.configuration.Model9
org.andromda.core.configuration.Namespace1
org.andromda.core.configuration.Namespaces1
org.andromda.core.configuration.Property1
org.andromda.core.configuration.Repository2
org.andromda.core.configuration.Server1
org.andromda.core.configuration.Transformation1
org.andromda.core.engine.Engine1
org.andromda.core.engine.ModelProcessor2
org.andromda.core.engine.ModelProcessor$ValidationMessageNameComparator1
org.andromda.core.engine.ModelProcessor$ValidationMessageTypeComparator1
org.andromda.core.mapping.Mapping1
org.andromda.core.metafacade.MetafacadeCache1
org.andromda.core.metafacade.MetafacadeFactory3
org.andromda.core.metafacade.MetafacadeImpls2
org.andromda.core.metafacade.MetafacadeMappings2
org.andromda.core.metafacade.MetafacadeMappings$11
org.andromda.core.metafacade.MetafacadeMappings$21
org.andromda.core.metafacade.MetafacadeMappings$61
org.andromda.core.metafacade.MetafacadeMappings$81
org.andromda.core.metafacade.ModelValidationMessage2
org.andromda.core.namespace.Component1
org.andromda.core.namespace.NamespaceComponents1
org.andromda.core.namespace.NamespaceComponents$NamespaceRegistryComparator1
org.andromda.core.namespace.NamespaceRegistry3
org.andromda.core.profile.Profile2
org.andromda.core.transformation.XslTransformer2
org.andromda.core.translation.library.LibraryTranslation1
org.andromda.core.translation.library.Translation3

org.andromda.core.common.BasePlugin

BugCategoryDetailsLine
Method org.andromda.core.common.BasePlugin.getPropertyReferences() uses Collection.toArray() with zero-length array argumentPERFORMANCEITA_INEFFICIENT_TO_ARRAY158

org.andromda.core.common.BuildInformation

BugCategoryDetailsLine
Dead store of null to stream in org.andromda.core.common.BuildInformation.initialize()STYLEDLS_DEAD_LOCAL_STORE_OF_NULL86

org.andromda.core.common.ClassUtils

BugCategoryDetailsLine
Method org.andromda.core.common.ClassUtils.getInterfacesReversed(String) uses Collection.toArray() with zero-length array argumentPERFORMANCEITA_INEFFICIENT_TO_ARRAY267

org.andromda.core.common.ComponentContainer

BugCategoryDetailsLine
Redundant nullcheck of contents, which is known to be non-null in org.andromda.core.common.ComponentContainer.getDefaultImplementation(Class)STYLERCN_REDUNDANT_NULLCHECK_OF_NONNULL_VALUE280
Write to static field org.andromda.core.common.ComponentContainer.instance from instance method org.andromda.core.common.ComponentContainer.shutdown()STYLEST_WRITE_TO_STATIC_FROM_INSTANCE_METHOD556

org.andromda.core.common.ExceptionRecorder

BugCategoryDetailsLine
org.andromda.core.common.ExceptionRecorder.getUniqueName(String) might ignore java.lang.ExceptionBAD_PRACTICEDE_MIGHT_IGNORE224
Exception is caught when Exception is not thrown in org.andromda.core.common.ExceptionRecorder.getUniqueName(String)STYLEREC_CATCH_EXCEPTION224
Exception is caught when Exception is not thrown in org.andromda.core.common.ExceptionRecorder.record(String, Throwable, String)STYLEREC_CATCH_EXCEPTION158
org.andromda.core.common.ExceptionRecorder.getUniqueName(String) calls Thread.sleep() with a lock heldMT_CORRECTNESSSWL_SLEEP_WITH_LOCK_HELD206

org.andromda.core.common.Introspector

BugCategoryDetailsLine
Null pointer dereference of name in org.andromda.core.common.Introspector.internalGetProperty(Object, String)CORRECTNESSNP_ALWAYS_NULL483
Null pointer dereference of name in org.andromda.core.common.Introspector.internalSetProperty(Object, String, Object)CORRECTNESSNP_ALWAYS_NULL523
Load of known null value in org.andromda.core.common.Introspector.internalGetProperty(Object, String)STYLENP_LOAD_OF_KNOWN_NULL_VALUE483
Load of known null value in org.andromda.core.common.Introspector.internalSetProperty(Object, String, Object)STYLENP_LOAD_OF_KNOWN_NULL_VALUE523
Method call in org.andromda.core.common.Introspector.internalGetProperty(Object, String) passes null for unconditionally dereferenced parameter of getReadMethod(Object, String)CORRECTNESSNP_NULL_PARAM_DEREF485
Method call in org.andromda.core.common.Introspector.internalSetProperty(Object, String, Object) passes null for unconditionally dereferenced parameter of getWriteMethod(Object, String)CORRECTNESSNP_NULL_PARAM_DEREF541
Write to static field org.andromda.core.common.Introspector.instance from instance method org.andromda.core.common.Introspector.shutdown()STYLEST_WRITE_TO_STATIC_FROM_INSTANCE_METHOD572

org.andromda.core.common.Merger

BugCategoryDetailsLine
Dead store of null to inputReader in org.andromda.core.common.Merger.getMergedString(InputStream, String)STYLEDLS_DEAD_LOCAL_STORE_OF_NULL130

org.andromda.core.common.ResourceFinder

BugCategoryDetailsLine
Method org.andromda.core.common.ResourceFinder.findResources(String) uses Collection.toArray() with zero-length array argumentPERFORMANCEITA_INEFFICIENT_TO_ARRAY35

org.andromda.core.common.ResourceUtils

BugCategoryDetailsLine
Dead store to delimiter in org.andromda.core.common.ResourceUtils.getDirectoryContents(URL, boolean, String[])STYLEDLS_DEAD_LOCAL_STORE758
Dead store of null to resourceInput in org.andromda.core.common.ResourceUtils.getContents(Reader)STYLEDLS_DEAD_LOCAL_STORE_OF_NULL112
Dead store of null to uriConnection in org.andromda.core.common.ResourceUtils.getLastModifiedTime(URL)STYLEDLS_DEAD_LOCAL_STORE_OF_NULL443
Dead store of null to stream in org.andromda.core.common.ResourceUtils.writeUrlToFile(URL, String, String)STYLEDLS_DEAD_LOCAL_STORE_OF_NULL663
org.andromda.core.common.ResourceUtils.getLastModifiedTime(URL) forces garbage collection; extremely dubious except in benchmarking codePERFORMANCEDM_GC444
org.andromda.core.common.ResourceUtils.writeUrlToFile(URL, String, String) may fail to close stream on exceptionBAD_PRACTICEOS_OPEN_STREAM_EXCEPTION_PATH653
org.andromda.core.common.ResourceUtils.writeUrlToFile(URL, String, String) may fail to close stream on exceptionBAD_PRACTICEOS_OPEN_STREAM_EXCEPTION_PATH638
org.andromda.core.common.ResourceUtils.writeUrlToFile(URL, String, String) may fail to close stream on exceptionBAD_PRACTICEOS_OPEN_STREAM_EXCEPTION_PATH641
Exception is caught when Exception is not thrown in org.andromda.core.common.ResourceUtils.getLastModifiedTime(URL)STYLEREC_CATCH_EXCEPTION447

org.andromda.core.common.ResourceWriter

BugCategoryDetailsLine
org.andromda.core.common.ResourceWriter.writeStringToFile(String, String, String, boolean) may fail to close stream on exceptionBAD_PRACTICEOS_OPEN_STREAM_EXCEPTION_PATH177

org.andromda.core.common.XmlObjectFactory

BugCategoryDetailsLine
Dead store of null to stream in org.andromda.core.common.XmlObjectFactory.setValidating(boolean)STYLEDLS_DEAD_LOCAL_STORE_OF_NULL184
Load of known null value in org.andromda.core.common.XmlObjectFactory.getObject(String, URL)STYLENP_LOAD_OF_KNOWN_NULL_VALUE294
Exception is caught when Exception is not thrown in org.andromda.core.common.XmlObjectFactory.setValidating(boolean)STYLEREC_CATCH_EXCEPTION213

org.andromda.core.configuration.Configuration

BugCategoryDetailsLine
Method org.andromda.core.configuration.Configuration.getMappingsSearchLocations() uses Collection.toArray() with zero-length array argumentPERFORMANCEITA_INEFFICIENT_TO_ARRAY226
Method org.andromda.core.configuration.Configuration.getNamespaces() uses Collection.toArray() with zero-length array argumentPERFORMANCEITA_INEFFICIENT_TO_ARRAY126
Method org.andromda.core.configuration.Configuration.getProperties() uses Collection.toArray() with zero-length array argumentPERFORMANCEITA_INEFFICIENT_TO_ARRAY152
Method org.andromda.core.configuration.Configuration.getRepositories() uses Collection.toArray() with zero-length array argumentPERFORMANCEITA_INEFFICIENT_TO_ARRAY101
org.andromda.core.configuration.Configuration is Serializable; consider declaring a serialVersionUIDBAD_PRACTICESE_NO_SERIALVERSIONIDNot available

org.andromda.core.configuration.Filter

BugCategoryDetailsLine
org.andromda.core.configuration.Filter is Serializable; consider declaring a serialVersionUIDBAD_PRACTICESE_NO_SERIALVERSIONIDNot available

org.andromda.core.configuration.Filters

BugCategoryDetailsLine
Method org.andromda.core.configuration.Filters.getFilters() uses Collection.toArray() with zero-length array argumentPERFORMANCEITA_INEFFICIENT_TO_ARRAY75
org.andromda.core.configuration.Filters is Serializable; consider declaring a serialVersionUIDBAD_PRACTICESE_NO_SERIALVERSIONIDNot available

org.andromda.core.configuration.Location

BugCategoryDetailsLine
Method org.andromda.core.configuration.Location.getResources() uses Collection.toArray() with zero-length array argumentPERFORMANCEITA_INEFFICIENT_TO_ARRAY107
org.andromda.core.configuration.Location is Serializable; consider declaring a serialVersionUIDBAD_PRACTICESE_NO_SERIALVERSIONIDNot available

org.andromda.core.configuration.Model

BugCategoryDetailsLine
org.andromda.core.configuration.Model.isChanged() is or uses a map or set of URLs, which can be a performance hogPERFORMANCEDMI_COLLECTION_OF_URLS475
org.andromda.core.configuration.Model.getModuleSearchLocationPaths() may expose internal representation by returning Model.moduleSearchLocationPathsMALICIOUS_CODEEI_EXPOSE_REP316
org.andromda.core.configuration.Model.getModuleSearchLocationResources() may expose internal representation by returning Model.moduleSearchLocationResourcesMALICIOUS_CODEEI_EXPOSE_REP348
org.andromda.core.configuration.Model.getUris() may expose internal representation by returning Model.urisAsStringsMALICIOUS_CODEEI_EXPOSE_REP155
Method org.andromda.core.configuration.Model.getModuleSearchLocationPaths() uses Collection.toArray() with zero-length array argumentPERFORMANCEITA_INEFFICIENT_TO_ARRAY314
Method org.andromda.core.configuration.Model.getModuleSearchLocationResources() uses Collection.toArray() with zero-length array argumentPERFORMANCEITA_INEFFICIENT_TO_ARRAY346
Method org.andromda.core.configuration.Model.getModuleSearchLocations() uses Collection.toArray() with zero-length array argumentPERFORMANCEITA_INEFFICIENT_TO_ARRAY284
Method org.andromda.core.configuration.Model.getTransformations() uses Collection.toArray() with zero-length array argumentPERFORMANCEITA_INEFFICIENT_TO_ARRAY212
org.andromda.core.configuration.Model is Serializable; consider declaring a serialVersionUIDBAD_PRACTICESE_NO_SERIALVERSIONIDNot available

org.andromda.core.configuration.Namespace

BugCategoryDetailsLine
org.andromda.core.configuration.Namespace is Serializable; consider declaring a serialVersionUIDBAD_PRACTICESE_NO_SERIALVERSIONIDNot available

org.andromda.core.configuration.Namespaces

BugCategoryDetailsLine
org.andromda.core.configuration.Namespaces is Serializable; consider declaring a serialVersionUIDBAD_PRACTICESE_NO_SERIALVERSIONIDNot available

org.andromda.core.configuration.Property

BugCategoryDetailsLine
org.andromda.core.configuration.Property is Serializable; consider declaring a serialVersionUIDBAD_PRACTICESE_NO_SERIALVERSIONIDNot available

org.andromda.core.configuration.Repository

BugCategoryDetailsLine
Method org.andromda.core.configuration.Repository.getModels() uses Collection.toArray() with zero-length array argumentPERFORMANCEITA_INEFFICIENT_TO_ARRAY66
org.andromda.core.configuration.Repository is Serializable; consider declaring a serialVersionUIDBAD_PRACTICESE_NO_SERIALVERSIONIDNot available

org.andromda.core.configuration.Server

BugCategoryDetailsLine
org.andromda.core.configuration.Server is Serializable; consider declaring a serialVersionUIDBAD_PRACTICESE_NO_SERIALVERSIONIDNot available

org.andromda.core.configuration.Transformation

BugCategoryDetailsLine
org.andromda.core.configuration.Transformation is Serializable; consider declaring a serialVersionUIDBAD_PRACTICESE_NO_SERIALVERSIONIDNot available

org.andromda.core.engine.Engine

BugCategoryDetailsLine
Method org.andromda.core.engine.Engine.loadModelsIfNecessary(Configuration) uses Collection.toArray() with zero-length array argumentPERFORMANCEITA_INEFFICIENT_TO_ARRAY62

org.andromda.core.engine.ModelProcessor

BugCategoryDetailsLine
Method org.andromda.core.engine.ModelProcessor.filterInvalidModels(Model[]) uses Collection.toArray() with zero-length array argumentPERFORMANCEITA_INEFFICIENT_TO_ARRAY712
Method org.andromda.core.engine.ModelProcessor.process(Configuration) uses Collection.toArray() with zero-length array argumentPERFORMANCEITA_INEFFICIENT_TO_ARRAY83

org.andromda.core.engine.ModelProcessor$ValidationMessageNameComparator

BugCategoryDetailsLine
org.andromda.core.engine.ModelProcessor$ValidationMessageNameComparator implements Comparator but not SerializableBAD_PRACTICESE_COMPARATOR_SHOULD_BE_SERIALIZABLENot available

org.andromda.core.engine.ModelProcessor$ValidationMessageTypeComparator

BugCategoryDetailsLine
org.andromda.core.engine.ModelProcessor$ValidationMessageTypeComparator implements Comparator but not SerializableBAD_PRACTICESE_COMPARATOR_SHOULD_BE_SERIALIZABLENot available

org.andromda.core.mapping.Mapping

BugCategoryDetailsLine
Mapping.mappings not initialized in constructorSTYLEUWF_FIELD_NOT_INITIALIZED_IN_CONSTRUCTORNot available

org.andromda.core.metafacade.MetafacadeCache

BugCategoryDetailsLine
org.andromda.core.metafacade.MetafacadeCache is Serializable; consider declaring a serialVersionUIDBAD_PRACTICESE_NO_SERIALVERSIONIDNot available

org.andromda.core.metafacade.MetafacadeFactory

BugCategoryDetailsLine
Class org.andromda.core.metafacade.MetafacadeFactory defines non-transient non-serializable instance field modelBAD_PRACTICESE_BAD_FIELDNot available
org.andromda.core.metafacade.MetafacadeFactory is Serializable; consider declaring a serialVersionUIDBAD_PRACTICESE_NO_SERIALVERSIONIDNot available
Write to static field org.andromda.core.metafacade.MetafacadeFactory.instance from instance method org.andromda.core.metafacade.MetafacadeFactory.shutdown()STYLEST_WRITE_TO_STATIC_FROM_INSTANCE_METHOD788

org.andromda.core.metafacade.MetafacadeImpls

BugCategoryDetailsLine
org.andromda.core.metafacade.MetafacadeImpls.registerMetafacadeClasses(MetafacadeImpls$MetafacadeClasses, Namespaces, NamespaceRegistry) might ignore java.lang.ExceptionBAD_PRACTICEDE_MIGHT_IGNORE181
org.andromda.core.metafacade.MetafacadeImpls is Serializable; consider declaring a serialVersionUIDBAD_PRACTICESE_NO_SERIALVERSIONIDNot available

org.andromda.core.metafacade.MetafacadeMappings

BugCategoryDetailsLine
Method org.andromda.core.metafacade.MetafacadeMappings.initialize() uses Collection.toArray() with zero-length array argumentPERFORMANCEITA_INEFFICIENT_TO_ARRAY840
org.andromda.core.metafacade.MetafacadeMappings is Serializable; consider declaring a serialVersionUIDBAD_PRACTICESE_NO_SERIALVERSIONIDNot available

org.andromda.core.metafacade.MetafacadeMappings$1

BugCategoryDetailsLine
The class org.andromda.core.metafacade.MetafacadeMappings$1 could be refactored into a named _static_ inner classPERFORMANCESIC_INNER_SHOULD_BE_STATIC_ANONNot available

org.andromda.core.metafacade.MetafacadeMappings$2

BugCategoryDetailsLine
The class org.andromda.core.metafacade.MetafacadeMappings$2 could be refactored into a named _static_ inner classPERFORMANCESIC_INNER_SHOULD_BE_STATIC_ANONNot available

org.andromda.core.metafacade.MetafacadeMappings$6

BugCategoryDetailsLine
The class org.andromda.core.metafacade.MetafacadeMappings$6 could be refactored into a named _static_ inner classPERFORMANCESIC_INNER_SHOULD_BE_STATIC_ANONNot available

org.andromda.core.metafacade.MetafacadeMappings$8

BugCategoryDetailsLine
The class org.andromda.core.metafacade.MetafacadeMappings$8 could be refactored into a named _static_ inner classPERFORMANCESIC_INNER_SHOULD_BE_STATIC_ANONNot available

org.andromda.core.metafacade.ModelValidationMessage

BugCategoryDetailsLine
Class org.andromda.core.metafacade.ModelValidationMessage defines non-transient non-serializable instance field metafacadeBAD_PRACTICESE_BAD_FIELDNot available
org.andromda.core.metafacade.ModelValidationMessage is Serializable; consider declaring a serialVersionUIDBAD_PRACTICESE_NO_SERIALVERSIONIDNot available

org.andromda.core.namespace.Component

BugCategoryDetailsLine
Method org.andromda.core.namespace.Component.getPaths() uses Collection.toArray() with zero-length array argumentPERFORMANCEITA_INEFFICIENT_TO_ARRAY55

org.andromda.core.namespace.NamespaceComponents

BugCategoryDetailsLine
Write to static field org.andromda.core.namespace.NamespaceComponents.instance from instance method org.andromda.core.namespace.NamespaceComponents.shutdown()STYLEST_WRITE_TO_STATIC_FROM_INSTANCE_METHOD357

org.andromda.core.namespace.NamespaceComponents$NamespaceRegistryComparator

BugCategoryDetailsLine
org.andromda.core.namespace.NamespaceComponents$NamespaceRegistryComparator implements Comparator but not SerializableBAD_PRACTICESE_COMPARATOR_SHOULD_BE_SERIALIZABLENot available

org.andromda.core.namespace.NamespaceRegistry

BugCategoryDetailsLine
Method org.andromda.core.namespace.NamespaceRegistry.getPropertyDefinitions() uses Collection.toArray() with zero-length array argumentPERFORMANCEITA_INEFFICIENT_TO_ARRAY169
Method org.andromda.core.namespace.NamespaceRegistry.getRegisteredComponents() uses Collection.toArray() with zero-length array argumentPERFORMANCEITA_INEFFICIENT_TO_ARRAY99
Method org.andromda.core.namespace.NamespaceRegistry.getResourceRoots() uses Collection.toArray() with zero-length array argumentPERFORMANCEITA_INEFFICIENT_TO_ARRAY199

org.andromda.core.profile.Profile

BugCategoryDetailsLine
org.andromda.core.profile.Profile is Serializable; consider declaring a serialVersionUIDBAD_PRACTICESE_NO_SERIALVERSIONIDNot available
Write to static field org.andromda.core.profile.Profile.instance from instance method org.andromda.core.profile.Profile.shutdown()STYLEST_WRITE_TO_STATIC_FROM_INSTANCE_METHOD213

org.andromda.core.transformation.XslTransformer

BugCategoryDetailsLine
org.andromda.core.transformation.XslTransformer.transform(String, Transformation[]) may fail to close stream on exceptionBAD_PRACTICEOS_OPEN_STREAM_EXCEPTION_PATH88
Exception is caught when Exception is not thrown in org.andromda.core.transformation.XslTransformer.transform(String, Transformation[])STYLEREC_CATCH_EXCEPTION109

org.andromda.core.translation.library.LibraryTranslation

BugCategoryDetailsLine
LibraryTranslation.library not initialized in constructorSTYLEUWF_FIELD_NOT_INITIALIZED_IN_CONSTRUCTORNot available

org.andromda.core.translation.library.Translation

BugCategoryDetailsLine
Read of unwritten field validatePatterns in org.andromda.core.translation.library.Translation.addValidatePattern(String)CORRECTNESSNP_UNWRITTEN_FIELD148
Useless control flow in org.andromda.core.translation.library.Translation.getFragment(String)STYLEUCF_USELESS_CONTROL_FLOW83
Unwritten field: org.andromda.core.translation.library.Translation.validatePatternsCORRECTNESSUWF_UNWRITTEN_FIELD148