Fork me on GitHub

Metric Results

[ summary ] [ packages ] [ cycles ] [ explanations ]

The following document contains the results of a JDepend metric analysis. The various metrics are defined at the bottom of this document.

Summary

[ summary ] [ packages ] [ cycles ] [ explanations ]

Package TC CC AC Ca Ce A I D V
fr.paris.lutece.plugins.genericattributes.business 27 19 8 5 24 30.000002% 83.0% 12.0% 1
fr.paris.lutece.plugins.genericattributes.service 3 3 0 1 15 0.0% 94.0% 6.0% 1
fr.paris.lutece.plugins.genericattributes.service.anonymization 19 14 5 0 16 26.0% 100.0% 26.0% 1
fr.paris.lutece.plugins.genericattributes.service.entrytype 23 2 21 3 42 91.0% 93.0% 85.0% 1
fr.paris.lutece.plugins.genericattributes.service.file 2 2 0 4 4 0.0% 50.0% 50.0% 1
fr.paris.lutece.plugins.genericattributes.util 3 3 0 2 10 0.0% 83.0% 17.0% 1
fr.paris.lutece.plugins.genericattributes.web.admin 1 1 0 0 8 0.0% 100.0% 0.0% 1

Packages

[ summary ] [ packages ] [ cycles ] [ explanations ]

fr.paris.lutece.plugins.genericattributes.business

Afferent Couplings Efferent Couplings Abstractness Instability Distance
5 24 30.000002% 83.0% 12.0%
Abstract Classes Concrete Classes Used by Packages Uses Packages
fr.paris.lutece.plugins.genericattributes.business.ICartoProvider
fr.paris.lutece.plugins.genericattributes.business.IEntryDAO
fr.paris.lutece.plugins.genericattributes.business.IEntryTypeDAO
fr.paris.lutece.plugins.genericattributes.business.IFieldDAO
fr.paris.lutece.plugins.genericattributes.business.IMapProvider
fr.paris.lutece.plugins.genericattributes.business.IOcrProvider
fr.paris.lutece.plugins.genericattributes.business.IReferenceItemFieldDao
fr.paris.lutece.plugins.genericattributes.business.IResponseDAO
fr.paris.lutece.plugins.genericattributes.business.CartoProviderManager
fr.paris.lutece.plugins.genericattributes.business.EntryFilter
fr.paris.lutece.plugins.genericattributes.business.EntryHome
fr.paris.lutece.plugins.genericattributes.business.EntryType
fr.paris.lutece.plugins.genericattributes.business.EntryTypeDAO
fr.paris.lutece.plugins.genericattributes.business.EntryTypeHome
fr.paris.lutece.plugins.genericattributes.business.Field
fr.paris.lutece.plugins.genericattributes.business.FieldHome
fr.paris.lutece.plugins.genericattributes.business.GenAttFileItem
fr.paris.lutece.plugins.genericattributes.business.GenericAttributeError
fr.paris.lutece.plugins.genericattributes.business.MandatoryError
fr.paris.lutece.plugins.genericattributes.business.MapProviderManager
fr.paris.lutece.plugins.genericattributes.business.OcrProviderManager
fr.paris.lutece.plugins.genericattributes.business.ReferenceItemFieldDao
fr.paris.lutece.plugins.genericattributes.business.ReferenceItemFieldHome
fr.paris.lutece.plugins.genericattributes.business.Response
fr.paris.lutece.plugins.genericattributes.business.ResponseFilter
fr.paris.lutece.plugins.genericattributes.business.ResponseHome
fr.paris.lutece.plugins.genericattributes.business.StatisticEntrySubmit
fr.paris.lutece.plugins.genericattributes.service
fr.paris.lutece.plugins.genericattributes.service.anonymization
fr.paris.lutece.plugins.genericattributes.service.entrytype
fr.paris.lutece.plugins.genericattributes.util
fr.paris.lutece.plugins.genericattributes.web.admin
fr.paris.lutece.plugins.genericattributes.service.entrytype
fr.paris.lutece.plugins.genericattributes.service.file
fr.paris.lutece.plugins.genericattributes.util
fr.paris.lutece.plugins.referencelist.business
fr.paris.lutece.portal.business.event
fr.paris.lutece.portal.business.file
fr.paris.lutece.portal.business.physicalfile
fr.paris.lutece.portal.business.regularexpression
fr.paris.lutece.portal.service.event
fr.paris.lutece.portal.service.i18n
fr.paris.lutece.portal.service.plugin
fr.paris.lutece.portal.service.regularexpression
fr.paris.lutece.portal.service.spring
fr.paris.lutece.portal.service.util
fr.paris.lutece.util
fr.paris.lutece.util.filesystem
fr.paris.lutece.util.sql
java.io
java.lang
java.util
org.apache.commons.collections
org.apache.commons.fileupload
org.apache.commons.lang3
org.apache.commons.lang3.math

fr.paris.lutece.plugins.genericattributes.service

Afferent Couplings Efferent Couplings Abstractness Instability Distance
1 15 0.0% 94.0% 6.0%
Abstract Classes Concrete Classes Used by Packages Uses Packages
None fr.paris.lutece.plugins.genericattributes.service.GenericAttributesPlugin
fr.paris.lutece.plugins.genericattributes.service.GenericAttributesSessionListener
fr.paris.lutece.plugins.genericattributes.service.ResponseImageResourceProvider
fr.paris.lutece.plugins.genericattributes.util
fr.paris.lutece.plugins.genericattributes.business
fr.paris.lutece.plugins.genericattributes.service.file
fr.paris.lutece.plugins.genericattributes.service.upload
fr.paris.lutece.portal.business.file
fr.paris.lutece.portal.business.physicalfile
fr.paris.lutece.portal.service.fileimage
fr.paris.lutece.portal.service.image
fr.paris.lutece.portal.service.plugin
fr.paris.lutece.portal.service.spring
fr.paris.lutece.portal.service.util
fr.paris.lutece.util.file
fr.paris.lutece.util.url
java.lang
java.util
javax.servlet.http

fr.paris.lutece.plugins.genericattributes.service.anonymization

Afferent Couplings Efferent Couplings Abstractness Instability Distance
0 16 26.0% 100.0% 26.0%
Abstract Classes Concrete Classes Used by Packages Uses Packages
fr.paris.lutece.plugins.genericattributes.service.anonymization.AbstractAnonymizationService
fr.paris.lutece.plugins.genericattributes.service.anonymization.AbstractDateAnonymizationService
fr.paris.lutece.plugins.genericattributes.service.anonymization.AbstractTextAnonymizationService
fr.paris.lutece.plugins.genericattributes.service.anonymization.IEntryAnonymizationType
fr.paris.lutece.plugins.genericattributes.service.anonymization.IEntryTypeAnonymisationService
fr.paris.lutece.plugins.genericattributes.service.anonymization.Date0AnonymizationService
fr.paris.lutece.plugins.genericattributes.service.anonymization.DateDefaultAnonymizationService
fr.paris.lutece.plugins.genericattributes.service.anonymization.DateEmptyAnonymizationService
fr.paris.lutece.plugins.genericattributes.service.anonymization.DefaultValueAnonymizationService
fr.paris.lutece.plugins.genericattributes.service.anonymization.EntryAnonymizationType
fr.paris.lutece.plugins.genericattributes.service.anonymization.EntryCodeAnonymizationService
fr.paris.lutece.plugins.genericattributes.service.anonymization.EntryIdAnonymizationService
fr.paris.lutece.plugins.genericattributes.service.anonymization.FileDeleteAnonymizationService
fr.paris.lutece.plugins.genericattributes.service.anonymization.FileReplaceAnonymizationService
fr.paris.lutece.plugins.genericattributes.service.anonymization.GeolocDefaultAnonymizationService
fr.paris.lutece.plugins.genericattributes.service.anonymization.RandomGuidAnonymizationService
fr.paris.lutece.plugins.genericattributes.service.anonymization.RandomNumberAnonymizationService
fr.paris.lutece.plugins.genericattributes.service.anonymization.ResponseIdAnonymizationService
fr.paris.lutece.plugins.genericattributes.service.anonymization.TelephoneDefaultAnonymizationService
None com.google.i18n.phonenumbers
fr.paris.lutece.plugins.genericattributes.business
fr.paris.lutece.plugins.genericattributes.service.entrytype
fr.paris.lutece.plugins.genericattributes.service.file
fr.paris.lutece.portal.business.file
fr.paris.lutece.portal.business.physicalfile
fr.paris.lutece.portal.service.i18n
fr.paris.lutece.portal.service.spring
fr.paris.lutece.portal.service.util
java.io
java.lang
java.nio.file
java.util
java.util.concurrent
org.apache.commons.io
org.apache.commons.lang3

fr.paris.lutece.plugins.genericattributes.service.entrytype

Afferent Couplings Efferent Couplings Abstractness Instability Distance
3 42 91.0% 93.0% 85.0%
Abstract Classes Concrete Classes Used by Packages Uses Packages
fr.paris.lutece.plugins.genericattributes.service.entrytype.AbstractEntryTypeCartography
fr.paris.lutece.plugins.genericattributes.service.entrytype.AbstractEntryTypeComment
fr.paris.lutece.plugins.genericattributes.service.entrytype.AbstractEntryTypeDate
fr.paris.lutece.plugins.genericattributes.service.entrytype.AbstractEntryTypeFile
fr.paris.lutece.plugins.genericattributes.service.entrytype.AbstractEntryTypeGeolocation
fr.paris.lutece.plugins.genericattributes.service.entrytype.AbstractEntryTypeGroup
fr.paris.lutece.plugins.genericattributes.service.entrytype.AbstractEntryTypeImage
fr.paris.lutece.plugins.genericattributes.service.entrytype.AbstractEntryTypeMyLuteceUser
fr.paris.lutece.plugins.genericattributes.service.entrytype.AbstractEntryTypeNumber
fr.paris.lutece.plugins.genericattributes.service.entrytype.AbstractEntryTypeNumbering
fr.paris.lutece.plugins.genericattributes.service.entrytype.AbstractEntryTypeRadioButton
fr.paris.lutece.plugins.genericattributes.service.entrytype.AbstractEntryTypeSelect
fr.paris.lutece.plugins.genericattributes.service.entrytype.AbstractEntryTypeSelectOrder
fr.paris.lutece.plugins.genericattributes.service.entrytype.AbstractEntryTypeSelectSQL
fr.paris.lutece.plugins.genericattributes.service.entrytype.AbstractEntryTypeSession
fr.paris.lutece.plugins.genericattributes.service.entrytype.AbstractEntryTypeSlot
fr.paris.lutece.plugins.genericattributes.service.entrytype.AbstractEntryTypeTelephoneNumber
fr.paris.lutece.plugins.genericattributes.service.entrytype.AbstractEntryTypeText
fr.paris.lutece.plugins.genericattributes.service.entrytype.AbstractEntryTypeTextArea
fr.paris.lutece.plugins.genericattributes.service.entrytype.AbstractEntryTypeUpload
fr.paris.lutece.plugins.genericattributes.service.entrytype.IEntryTypeService
fr.paris.lutece.plugins.genericattributes.service.entrytype.AbstractEntryTypeTelephoneNumber$1
fr.paris.lutece.plugins.genericattributes.service.entrytype.EntryTypeServiceManager
fr.paris.lutece.plugins.genericattributes.business
fr.paris.lutece.plugins.genericattributes.service.anonymization
fr.paris.lutece.plugins.genericattributes.util
com.google.i18n.phonenumbers
fr.paris.lutece.plugins.asynchronousupload.service
fr.paris.lutece.plugins.genericattributes.business
fr.paris.lutece.plugins.genericattributes.service.file
fr.paris.lutece.plugins.genericattributes.service.upload
fr.paris.lutece.plugins.genericattributes.util
fr.paris.lutece.portal.business.file
fr.paris.lutece.portal.business.physicalfile
fr.paris.lutece.portal.business.regularexpression
fr.paris.lutece.portal.service.editor
fr.paris.lutece.portal.service.file
fr.paris.lutece.portal.service.fileimage
fr.paris.lutece.portal.service.fileupload
fr.paris.lutece.portal.service.i18n
fr.paris.lutece.portal.service.image
fr.paris.lutece.portal.service.message
fr.paris.lutece.portal.service.plugin
fr.paris.lutece.portal.service.regularexpression
fr.paris.lutece.portal.service.security
fr.paris.lutece.portal.service.spring
fr.paris.lutece.portal.service.util
fr.paris.lutece.portal.web.upload
fr.paris.lutece.util
fr.paris.lutece.util.date
fr.paris.lutece.util.filesystem
fr.paris.lutece.util.sql
fr.paris.lutece.util.string
fr.paris.lutece.util.url
java.awt.image
java.io
java.lang
java.text
java.time
java.util
java.util.stream
javax.imageio
javax.servlet.http
javax.xml.bind
org.apache.commons.collections
org.apache.commons.fileupload
org.apache.commons.lang3
org.apache.commons.lang3.math

fr.paris.lutece.plugins.genericattributes.service.file

Afferent Couplings Efferent Couplings Abstractness Instability Distance
4 4 0.0% 50.0% 50.0%
Abstract Classes Concrete Classes Used by Packages Uses Packages
None fr.paris.lutece.plugins.genericattributes.service.file.FileService
fr.paris.lutece.plugins.genericattributes.service.file.GenericAttributeFileService
fr.paris.lutece.plugins.genericattributes.business
fr.paris.lutece.plugins.genericattributes.service
fr.paris.lutece.plugins.genericattributes.service.anonymization
fr.paris.lutece.plugins.genericattributes.service.entrytype
fr.paris.lutece.portal.business.file
fr.paris.lutece.portal.business.physicalfile
fr.paris.lutece.portal.service.file
java.lang

fr.paris.lutece.plugins.genericattributes.util

Afferent Couplings Efferent Couplings Abstractness Instability Distance
2 10 0.0% 83.0% 17.0%
Abstract Classes Concrete Classes Used by Packages Uses Packages
None fr.paris.lutece.plugins.genericattributes.util.CopyEntryEventParam
fr.paris.lutece.plugins.genericattributes.util.EntryTypeNumberingUtil
fr.paris.lutece.plugins.genericattributes.util.GenericAttributesUtils
fr.paris.lutece.plugins.genericattributes.business
fr.paris.lutece.plugins.genericattributes.service.entrytype
fr.paris.lutece.plugins.genericattributes.business
fr.paris.lutece.plugins.genericattributes.service
fr.paris.lutece.plugins.genericattributes.service.entrytype
fr.paris.lutece.plugins.referencelist.business
fr.paris.lutece.portal.business.event
fr.paris.lutece.portal.service.plugin
fr.paris.lutece.portal.service.util
java.lang
java.util
org.apache.commons.lang3

fr.paris.lutece.plugins.genericattributes.web.admin

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 fr.paris.lutece.plugins.genericattributes.web.admin.EntryTypeJspBean
None fr.paris.lutece.plugins.genericattributes.business
fr.paris.lutece.portal.service.template
fr.paris.lutece.portal.util.mvc.admin
fr.paris.lutece.util.html
java.lang
java.util
javax.servlet.http
org.apache.commons.lang3.math

Cycles

[ summary ] [ packages ] [ cycles ] [ explanations ]

Package Package Dependencies
fr.paris.lutece.plugins.genericattributes.business fr.paris.lutece.plugins.genericattributes.service.entrytype
fr.paris.lutece.plugins.genericattributes.business
fr.paris.lutece.plugins.genericattributes.service fr.paris.lutece.plugins.genericattributes.business
fr.paris.lutece.plugins.genericattributes.service.entrytype
fr.paris.lutece.plugins.genericattributes.business
fr.paris.lutece.plugins.genericattributes.service.anonymization fr.paris.lutece.plugins.genericattributes.business
fr.paris.lutece.plugins.genericattributes.service.entrytype
fr.paris.lutece.plugins.genericattributes.business
fr.paris.lutece.plugins.genericattributes.service.entrytype fr.paris.lutece.plugins.genericattributes.business
fr.paris.lutece.plugins.genericattributes.service.entrytype
fr.paris.lutece.plugins.genericattributes.util fr.paris.lutece.plugins.genericattributes.service.entrytype
fr.paris.lutece.plugins.genericattributes.business
fr.paris.lutece.plugins.genericattributes.service.entrytype
fr.paris.lutece.plugins.genericattributes.web.admin fr.paris.lutece.plugins.genericattributes.business
fr.paris.lutece.plugins.genericattributes.service.entrytype
fr.paris.lutece.plugins.genericattributes.business

Explanation

[ summary ] [ packages ] [ cycles ] [ explanations ]

The following explanations are for quick reference and are lifted directly from the original JDepend documentation.

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.