Afferent Couplings | Efferent Couplings | Abstractness | Instability | Distance |
---|---|---|---|---|
4 | 2 | 100.0% | 33.0% | 33.0% |
Abstract Classes | Concrete Classes | Used by Packages | Uses Packages |
---|---|---|---|
org.jadira.bindings.core.annotation.BindingScope org.jadira.bindings.core.annotation.Convert org.jadira.bindings.core.annotation.DefaultBinding org.jadira.bindings.core.annotation.From org.jadira.bindings.core.annotation.To |
None | org.jadira.bindings.core.binder org.jadira.bindings.core.loader org.jadira.bindings.core.provider org.jadira.bindings.core.spring |
java.lang java.lang.annotation |
Afferent Couplings | Efferent Couplings | Abstractness | Instability | Distance |
---|---|---|---|---|
0 | 2 | 100.0% | 100.0% | 100.0% |
Abstract Classes | Concrete Classes | Used by Packages | Uses Packages |
---|---|---|---|
org.jadira.bindings.core.annotation.typesafe.FromString org.jadira.bindings.core.annotation.typesafe.ToString |
None | None | java.lang java.lang.annotation |
Afferent Couplings | Efferent Couplings | Abstractness | Instability | Distance |
---|---|---|---|---|
8 | 1 | 80.0% | 11.0% | 9.0% |
Abstract Classes | Concrete Classes | Used by Packages | Uses Packages |
---|---|---|---|
org.jadira.bindings.core.api.Binding org.jadira.bindings.core.api.Converter org.jadira.bindings.core.api.FromUnmarshaller org.jadira.bindings.core.api.ToMarshaller |
org.jadira.bindings.core.api.BindingException |
org.jadira.bindings.core.binder org.jadira.bindings.core.cdi org.jadira.bindings.core.general.adapter org.jadira.bindings.core.general.binding org.jadira.bindings.core.general.converter org.jadira.bindings.core.general.marshaller org.jadira.bindings.core.general.unmarshaller org.jadira.bindings.core.jdk |
java.lang |
Afferent Couplings | Efferent Couplings | Abstractness | Instability | Distance |
---|---|---|---|---|
4 | 20 | 62.0% | 83.0% | 46.0% |
Abstract Classes | Concrete Classes | Used by Packages | Uses Packages |
---|---|---|---|
org.jadira.bindings.core.binder.Binder org.jadira.bindings.core.binder.ConversionBinder org.jadira.bindings.core.binder.RegisterableBinder org.jadira.bindings.core.binder.SearchableBinder org.jadira.bindings.core.binder.StringBinder |
org.jadira.bindings.core.binder.BasicBinder org.jadira.bindings.core.binder.ConverterKey org.jadira.bindings.core.binder.NoConverterFoundException |
org.jadira.bindings.core.binder.adapter org.jadira.bindings.core.cdi org.jadira.bindings.core.provider org.jadira.bindings.core.spring |
java.io java.lang java.lang.annotation java.lang.reflect java.math java.net java.util java.util.concurrent java.util.concurrent.atomic org.jadira.bindings.core.annotation org.jadira.bindings.core.api org.jadira.bindings.core.general.binding org.jadira.bindings.core.general.converter org.jadira.bindings.core.general.marshaller org.jadira.bindings.core.general.unmarshaller org.jadira.bindings.core.jdk org.jadira.bindings.core.loader org.jadira.bindings.core.spi org.jadira.bindings.core.utils.lang org.jadira.bindings.core.utils.reflection |
Afferent Couplings | Efferent Couplings | Abstractness | Instability | Distance |
---|---|---|---|---|
0 | 2 | 0.0% | 100.0% | 0.0% |
Abstract Classes | Concrete Classes | Used by Packages | Uses Packages |
---|---|---|---|
None | org.jadira.bindings.core.binder.adapter.StringBinderAdapter |
None | java.lang org.jadira.bindings.core.binder |
Afferent Couplings | Efferent Couplings | Abstractness | Instability | Distance |
---|---|---|---|---|
0 | 5 | 0.0% | 100.0% | 0.0% |
Abstract Classes | Concrete Classes | Used by Packages | Uses Packages |
---|---|---|---|
None | org.jadira.bindings.core.cdi.BinderExtension |
None | java.lang java.net javax.enterprise.inject.spi org.jadira.bindings.core.api org.jadira.bindings.core.binder |
Afferent Couplings | Efferent Couplings | Abstractness | Instability | Distance |
---|---|---|---|---|
0 | 2 | 0.0% | 100.0% | 0.0% |
Abstract Classes | Concrete Classes | Used by Packages | Uses Packages |
---|---|---|---|
None | org.jadira.bindings.core.general.adapter.MarshallerToUnmarshaller org.jadira.bindings.core.general.adapter.UnmarshallerToMarshaller |
None | java.lang org.jadira.bindings.core.api |
Afferent Couplings | Efferent Couplings | Abstractness | Instability | Distance |
---|---|---|---|---|
1 | 6 | 0.0% | 86.0% | 14.0% |
Abstract Classes | Concrete Classes | Used by Packages | Uses Packages |
---|---|---|---|
None | org.jadira.bindings.core.general.binding.CompositeBinding org.jadira.bindings.core.general.binding.FromBinding org.jadira.bindings.core.general.binding.InverseCompositeBinding org.jadira.bindings.core.general.binding.JodaConvertStringBinding org.jadira.bindings.core.general.binding.MethodConstructorBinding org.jadira.bindings.core.general.binding.MethodsBinding org.jadira.bindings.core.general.binding.ToBinding |
org.jadira.bindings.core.binder |
java.lang java.lang.invoke java.lang.reflect org.jadira.bindings.core.api org.jadira.bindings.core.general.marshaller org.joda.convert |
Afferent Couplings | Efferent Couplings | Abstractness | Instability | Distance |
---|---|---|---|---|
1 | 2 | 0.0% | 67.0% | 33.0% |
Abstract Classes | Concrete Classes | Used by Packages | Uses Packages |
---|---|---|---|
None | org.jadira.bindings.core.general.converter.FromUnmarshallerConverter org.jadira.bindings.core.general.converter.ToMarshallerConverter |
org.jadira.bindings.core.binder |
java.lang org.jadira.bindings.core.api |
Afferent Couplings | Efferent Couplings | Abstractness | Instability | Distance |
---|---|---|---|---|
2 | 4 | 0.0% | 67.0% | 33.0% |
Abstract Classes | Concrete Classes | Used by Packages | Uses Packages |
---|---|---|---|
None | org.jadira.bindings.core.general.marshaller.ConverterToMarshaller org.jadira.bindings.core.general.marshaller.MethodToMarshaller |
org.jadira.bindings.core.binder org.jadira.bindings.core.general.binding |
java.lang java.lang.invoke java.lang.reflect org.jadira.bindings.core.api |
Afferent Couplings | Efferent Couplings | Abstractness | Instability | Distance |
---|---|---|---|---|
1 | 4 | 0.0% | 80.0% | 20.0% |
Abstract Classes | Concrete Classes | Used by Packages | Uses Packages |
---|---|---|---|
None | org.jadira.bindings.core.general.unmarshaller.ConstructorFromUnmarshaller org.jadira.bindings.core.general.unmarshaller.ConverterFromUnmarshaller org.jadira.bindings.core.general.unmarshaller.MethodFromUnmarshaller |
org.jadira.bindings.core.binder |
java.lang java.lang.invoke java.lang.reflect org.jadira.bindings.core.api |
Afferent Couplings | Efferent Couplings | Abstractness | Instability | Distance |
---|---|---|---|---|
2 | 9 | 3.0% | 82.0% | 15.000001% |
Abstract Classes | Concrete Classes | Used by Packages | Uses Packages |
---|---|---|---|
org.jadira.bindings.core.jdk.AbstractStringBinding |
org.jadira.bindings.core.jdk.AtomicBooleanStringBinding org.jadira.bindings.core.jdk.AtomicIntegerStringBinding org.jadira.bindings.core.jdk.AtomicLongStringBinding org.jadira.bindings.core.jdk.BigDecimalStringBinding org.jadira.bindings.core.jdk.BigIntegerStringBinding org.jadira.bindings.core.jdk.BooleanStringBinding org.jadira.bindings.core.jdk.ByteStringBinding org.jadira.bindings.core.jdk.CalendarStringBinding org.jadira.bindings.core.jdk.CalendarStringBinding$1 org.jadira.bindings.core.jdk.CharSequenceStringBinding org.jadira.bindings.core.jdk.CharacterStringBinding org.jadira.bindings.core.jdk.ClassStringBinding org.jadira.bindings.core.jdk.CurrencyStringBinding org.jadira.bindings.core.jdk.DateStringBinding org.jadira.bindings.core.jdk.DateStringBinding$1 org.jadira.bindings.core.jdk.DoubleStringBinding org.jadira.bindings.core.jdk.FileStringBinding org.jadira.bindings.core.jdk.FloatStringBinding org.jadira.bindings.core.jdk.InetAddressStringBinding org.jadira.bindings.core.jdk.IntegerStringBinding org.jadira.bindings.core.jdk.LocaleStringBinding org.jadira.bindings.core.jdk.LongStringBinding org.jadira.bindings.core.jdk.PackageStringBinding org.jadira.bindings.core.jdk.ShortStringBinding org.jadira.bindings.core.jdk.StringBufferStringBinding org.jadira.bindings.core.jdk.StringBuilderStringBinding org.jadira.bindings.core.jdk.StringStringBinding org.jadira.bindings.core.jdk.TimeZoneStringBinding org.jadira.bindings.core.jdk.URIStringBinding org.jadira.bindings.core.jdk.URLStringBinding org.jadira.bindings.core.jdk.UUIDStringBinding |
org.jadira.bindings.core.binder org.jadira.bindings.core.utils.reflection |
java.io java.lang java.math java.net java.text java.util java.util.concurrent.atomic org.jadira.bindings.core.api org.jadira.bindings.core.utils.reflection |
Afferent Couplings | Efferent Couplings | Abstractness | Instability | Distance |
---|---|---|---|---|
1 | 12 | 0.0% | 92.0% | 8.0% |
Abstract Classes | Concrete Classes | Used by Packages | Uses Packages |
---|---|---|---|
None | org.jadira.bindings.core.loader.BindingConfiguration org.jadira.bindings.core.loader.BindingConfigurationEntry org.jadira.bindings.core.loader.BindingXmlEntityResolver org.jadira.bindings.core.loader.BindingXmlLoader org.jadira.bindings.core.loader.BindingXmlLoader$BindingXmlErrorHandler org.jadira.bindings.core.loader.Extension org.jadira.bindings.core.loader.Provider |
org.jadira.bindings.core.binder |
java.io java.lang java.lang.reflect java.net java.util javax.xml.parsers org.jadira.bindings.core.annotation org.jadira.bindings.core.spi org.jadira.bindings.core.utils.lang org.jadira.bindings.core.utils.reflection org.w3c.dom org.xml.sax |
Afferent Couplings | Efferent Couplings | Abstractness | Instability | Distance |
---|---|---|---|---|
0 | 8 | 0.0% | 100.0% | 0.0% |
Abstract Classes | Concrete Classes | Used by Packages | Uses Packages |
---|---|---|---|
None | org.jadira.bindings.core.provider.AbstractAnnotationMatchingConverterProvider org.jadira.bindings.core.provider.JodaConvertConverterProvider org.jadira.bindings.core.provider.StandardConverterProvider org.jadira.bindings.core.provider.StringConverterProvider |
None | java.lang java.lang.annotation java.lang.reflect java.util org.jadira.bindings.core.annotation org.jadira.bindings.core.binder org.jadira.bindings.core.spi org.jadira.bindings.core.utils.reflection |
Afferent Couplings | Efferent Couplings | Abstractness | Instability | Distance |
---|---|---|---|---|
3 | 2 | 100.0% | 40.0% | 40.0% |
Abstract Classes | Concrete Classes | Used by Packages | Uses Packages |
---|---|---|---|
org.jadira.bindings.core.spi.ConverterProvider |
None | org.jadira.bindings.core.binder org.jadira.bindings.core.loader org.jadira.bindings.core.provider |
java.lang java.util |
Afferent Couplings | Efferent Couplings | Abstractness | Instability | Distance |
---|---|---|---|---|
0 | 7 | 0.0% | 100.0% | 0.0% |
Abstract Classes | Concrete Classes | Used by Packages | Uses Packages |
---|---|---|---|
None | org.jadira.bindings.core.spring.BindingConverter |
None | java.lang java.lang.annotation java.util org.jadira.bindings.core.annotation org.jadira.bindings.core.binder org.springframework.core.convert org.springframework.core.convert.converter |
Afferent Couplings | Efferent Couplings | Abstractness | Instability | Distance |
---|---|---|---|---|
2 | 3 | 0.0% | 60.000004% | 40.0% |
Abstract Classes | Concrete Classes | Used by Packages | Uses Packages |
---|---|---|---|
None | org.jadira.bindings.core.utils.lang.IterableEnumeration org.jadira.bindings.core.utils.lang.IterableEnumeration$1 org.jadira.bindings.core.utils.lang.IterableNodeList org.jadira.bindings.core.utils.lang.IterableNodeList$1 |
org.jadira.bindings.core.binder org.jadira.bindings.core.loader |
java.lang java.util org.w3c.dom |
Afferent Couplings | Efferent Couplings | Abstractness | Instability | Distance |
---|---|---|---|---|
4 | 5 | 0.0% | 56.0% | 44.0% |
Abstract Classes | Concrete Classes | Used by Packages | Uses Packages |
---|---|---|---|
None | org.jadira.bindings.core.utils.reflection.ClassLoaderUtils org.jadira.bindings.core.utils.reflection.ClassUtils org.jadira.bindings.core.utils.reflection.TypeHelper |
org.jadira.bindings.core.binder org.jadira.bindings.core.jdk org.jadira.bindings.core.loader org.jadira.bindings.core.provider |
java.lang java.lang.reflect java.util org.jadira.bindings.core.jdk org.jadira.bindings.core.utils.string |
Afferent Couplings | Efferent Couplings | Abstractness | Instability | Distance |
---|---|---|---|---|
1 | 1 | 0.0% | 50.0% | 50.0% |
Abstract Classes | Concrete Classes | Used by Packages | Uses Packages |
---|---|---|---|
None | org.jadira.bindings.core.utils.string.StringUtils |
org.jadira.bindings.core.utils.reflection |
java.lang |
Package | Package Dependencies |
---|---|
org.jadira.bindings.core.binder | org.jadira.bindings.core.utils.reflection org.jadira.bindings.core.jdk org.jadira.bindings.core.utils.reflection |
org.jadira.bindings.core.binder.adapter | org.jadira.bindings.core.binder org.jadira.bindings.core.utils.reflection org.jadira.bindings.core.jdk org.jadira.bindings.core.utils.reflection |
org.jadira.bindings.core.cdi | org.jadira.bindings.core.binder org.jadira.bindings.core.utils.reflection org.jadira.bindings.core.jdk org.jadira.bindings.core.utils.reflection |
org.jadira.bindings.core.jdk | org.jadira.bindings.core.utils.reflection org.jadira.bindings.core.jdk |
org.jadira.bindings.core.loader | org.jadira.bindings.core.utils.reflection org.jadira.bindings.core.jdk org.jadira.bindings.core.utils.reflection |
org.jadira.bindings.core.provider | org.jadira.bindings.core.utils.reflection org.jadira.bindings.core.jdk org.jadira.bindings.core.utils.reflection |
org.jadira.bindings.core.spring | org.jadira.bindings.core.binder org.jadira.bindings.core.utils.reflection org.jadira.bindings.core.jdk org.jadira.bindings.core.utils.reflection |
org.jadira.bindings.core.utils.reflection | org.jadira.bindings.core.jdk org.jadira.bindings.core.utils.reflection |
Term | Description |
---|---|
Number of Classes | The number of concrete and abstract classes (and interfaces) in the package is an indicator of the extensibility of the package. |
Afferent Couplings | The number of other packages that depend upon classes within the package is an indicator of the package's responsibility. |
Efferent Couplings | The number of other packages that the classes in the package depend upon is an indicator of the package's independence. |
Abstractness | The ratio of the number of abstract classes (and interfaces) in the analyzed package to the total number of classes in the analyzed package. The range for this metric is 0 to 1, with A=0 indicating a completely concrete package and A=1 indicating a completely abstract package. |
Instability | The ratio of efferent coupling (Ce) to total coupling (Ce / (Ce + Ca)). This metric is an indicator of the package's resilience to change. The range for this metric is 0 to 1, with I=0 indicating a completely stable package and I=1 indicating a completely instable package. |
Distance | The perpendicular distance of a package from the idealized line A + I = 1. This metric is an indicator of the package's balance between abstractness and stability. A package squarely on the main sequence is optimally balanced with respect to its abstractness and stability. Ideal packages are either completely abstract and stable (x=0, y=1) or completely concrete and instable (x=1, y=0). The range for this metric is 0 to 1, with D=0 indicating a package that is coincident with the main sequence and D=1 indicating a package that is as far from the main sequence as possible. |
Cycles | Packages participating in a package dependency cycle are in a deadly embrace with respect to reusability and their release cycle. Package dependency cycles can be easily identified by reviewing the textual reports of dependency cycles. Once these dependency cycles have been identified with JDepend, they can be broken by employing various object-oriented techniques. |