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 |
|---|---|---|---|---|---|---|---|---|---|
| org.cateproject.view.ajax | 2 | 2 | 0 | 0 | 16 | 0.0% | 100.0% | 0.0% | 1 |
| org.cateproject.view.atom | 1 | 1 | 0 | 0 | 10 | 0.0% | 100.0% | 0.0% | 1 |
| org.cateproject.view.authz | 4 | 4 | 0 | 2 | 5 | 0.0% | 71.0% | 29.0% | 1 |
| org.cateproject.view.cache | 14 | 10 | 4 | 0 | 42 | 29.0% | 100.0% | 29.0% | 1 |
| org.cateproject.view.excel | 10 | 9 | 1 | 0 | 22 | 10.0% | 100.0% | 10.0% | 1 |
| org.cateproject.view.flow | 4 | 4 | 0 | 0 | 18 | 0.0% | 100.0% | 0.0% | 1 |
| org.cateproject.view.json | 3 | 3 | 0 | 0 | 13 | 0.0% | 100.0% | 0.0% | 1 |
| org.cateproject.view.json.processor | 13 | 13 | 0 | 0 | 27 | 0.0% | 100.0% | 0.0% | 1 |
| org.cateproject.view.pdf | 6 | 6 | 0 | 0 | 30 | 0.0% | 100.0% | 0.0% | 1 |
| org.cateproject.view.tiles | 9 | 9 | 0 | 1 | 46 | 0.0% | 98.0% | 2.0% | 1 |
| org.cateproject.view.tools | 18 | 17 | 1 | 4 | 38 | 6.0% | 90.0% | 4.0% | 1 |
| org.cateproject.view.tools.page | 5 | 5 | 0 | 1 | 1 | 0.0% | 50.0% | 50.0% | 1 |
| org.cateproject.view.velocity | 7 | 6 | 1 | 0 | 43 | 14.0% | 100.0% | 14.0% | 1 |
Packages
[ summary ] [ packages ] [ cycles ] [ explanations ]org.cateproject.view.ajax
| Afferent Couplings | Efferent Couplings | Abstractness | Instability | Distance |
|---|---|---|---|---|
| 0 | 16 | 0.0% | 100.0% | 0.0% |
| Abstract Classes | Concrete Classes | Used by Packages | Uses Packages |
|---|---|---|---|
| None | org.cateproject.view.ajax.AjaxTiles21View org.cateproject.view.ajax.FlowAjaxTilesView | None | java.lang java.util javax.servlet javax.servlet.http org.apache.commons.logging org.apache.tiles org.apache.tiles.context org.apache.tiles.definition org.apache.tiles.impl org.apache.tiles.servlet.context org.springframework.js.ajax org.springframework.util org.springframework.web.servlet.support org.springframework.web.servlet.view.tiles2 org.springframework.webflow.core.collection org.springframework.webflow.execution |
org.cateproject.view.atom
| Afferent Couplings | Efferent Couplings | Abstractness | Instability | Distance |
|---|---|---|---|---|
| 0 | 10 | 0.0% | 100.0% | 0.0% |
| Abstract Classes | Concrete Classes | Used by Packages | Uses Packages |
|---|---|---|---|
| None | org.cateproject.view.atom.IdentifiableAtomFeedView | None | com.sun.syndication.feed com.sun.syndication.feed.atom eu.etaxonomy.cdm.api.service.pager eu.etaxonomy.cdm.model.common java.lang java.util javax.servlet.http org.cateproject.view.tools org.joda.time org.springframework.web.servlet.view.feed |
org.cateproject.view.authz
| Afferent Couplings | Efferent Couplings | Abstractness | Instability | Distance |
|---|---|---|---|---|
| 2 | 5 | 0.0% | 71.0% | 29.0% |
| Abstract Classes | Concrete Classes | Used by Packages | Uses Packages |
|---|---|---|---|
| None | org.cateproject.view.authz.AuthzImpl org.cateproject.view.authz.AuthzImpl$1 org.cateproject.view.authz.AuthzImpl$MyAclTag org.cateproject.view.authz.AuthzImpl$MyAuthenticationTag | org.cateproject.view.tiles org.cateproject.view.velocity | java.lang javax.servlet.jsp org.springframework.context org.springframework.security.taglibs.authz org.springframework.security.taglibs.velocity |
org.cateproject.view.cache
| Afferent Couplings | Efferent Couplings | Abstractness | Instability | Distance |
|---|---|---|---|---|
| 0 | 42 | 29.0% | 100.0% | 29.0% |
| Abstract Classes | Concrete Classes | Used by Packages | Uses Packages |
|---|---|---|---|
| org.cateproject.view.cache.CateCachingFilter org.cateproject.view.cache.CateContentTypeResolver org.cateproject.view.cache.CatePageCache org.cateproject.view.cache.ServletAnnotationMappingUtils | org.cateproject.view.cache.CateContentTypeResolverImpl org.cateproject.view.cache.CateContentTypeResolverImpl$1 org.cateproject.view.cache.CateContentTypeResolverImpl$RequestMappingInfo org.cateproject.view.cache.CateContentTypeResolverImpl$RequestMappingInfoComparator org.cateproject.view.cache.CateContentTypeResolverImpl$ServletHandlerMethodResolver org.cateproject.view.cache.CdmObjectPageCacheImpl org.cateproject.view.cache.DelegatingPageCachingFilter org.cateproject.view.cache.MockPageCachingFilter org.cateproject.view.cache.PageCachingFilter org.cateproject.view.cache.SpeciesPageCachingFilter | None | eu.etaxonomy.cdm.model.common eu.etaxonomy.cdm.model.description eu.etaxonomy.cdm.model.name eu.etaxonomy.cdm.model.taxon eu.etaxonomy.cdm.model.view.context java.io java.lang java.lang.reflect java.util java.util.concurrent java.util.regex java.util.zip javax.servlet javax.servlet.http net.sf.ehcache net.sf.ehcache.config net.sf.ehcache.constructs.blocking net.sf.ehcache.constructs.web org.cateproject.controller org.cateproject.controller.event.taxon org.cateproject.service.event org.cateproject.view.tools org.slf4j org.springframework.context org.springframework.core org.springframework.core.annotation org.springframework.http org.springframework.http.server org.springframework.security.authentication org.springframework.security.core org.springframework.security.core.context org.springframework.util org.springframework.web org.springframework.web.bind.annotation org.springframework.web.bind.annotation.support org.springframework.web.context.request org.springframework.web.filter org.springframework.web.servlet org.springframework.web.servlet.handler org.springframework.web.servlet.mvc.multiaction org.springframework.web.servlet.view org.springframework.web.util |
org.cateproject.view.excel
| Afferent Couplings | Efferent Couplings | Abstractness | Instability | Distance |
|---|---|---|---|---|
| 0 | 22 | 10.0% | 100.0% | 10.0% |
| Abstract Classes | Concrete Classes | Used by Packages | Uses Packages |
|---|---|---|---|
| org.cateproject.view.excel.ExcelView | org.cateproject.view.excel.AgentExcelView org.cateproject.view.excel.CollectionExcelView org.cateproject.view.excel.DescriptionExcelView org.cateproject.view.excel.ExcelDownloadView org.cateproject.view.excel.MediaExcelView org.cateproject.view.excel.NameExcelView org.cateproject.view.excel.OccurrenceExcelView org.cateproject.view.excel.ReferenceExcelView org.cateproject.view.excel.TaxonExcelView | None | eu.etaxonomy.cdm.api.service.pager eu.etaxonomy.cdm.model.agent eu.etaxonomy.cdm.model.common eu.etaxonomy.cdm.model.description eu.etaxonomy.cdm.model.location eu.etaxonomy.cdm.model.media eu.etaxonomy.cdm.model.name eu.etaxonomy.cdm.model.occurrence eu.etaxonomy.cdm.model.reference eu.etaxonomy.cdm.model.taxon java.lang java.util javax.servlet.http org.apache.commons.logging org.apache.poi.hssf.usermodel org.apache.poi.hssf.util org.apache.poi.ss.usermodel org.cateproject.controller.flow.action.upload org.joda.time.format org.springframework.context org.springframework.context.i18n org.springframework.web.servlet.view.document |
org.cateproject.view.flow
| Afferent Couplings | Efferent Couplings | Abstractness | Instability | Distance |
|---|---|---|---|---|
| 0 | 18 | 0.0% | 100.0% | 0.0% |
| Abstract Classes | Concrete Classes | Used by Packages | Uses Packages |
|---|---|---|---|
| None | org.cateproject.view.flow.BeanWrapperExpression org.cateproject.view.flow.BeanWrapperExpression$PropertyEditorConverter org.cateproject.view.flow.BeanWrapperExpressionParser org.cateproject.view.flow.MvcViewFactoryCreator | None | java.beans java.lang java.util org.springframework.beans org.springframework.binding.convert org.springframework.binding.convert.service org.springframework.binding.expression org.springframework.binding.expression.support org.springframework.context org.springframework.util org.springframework.validation org.springframework.webflow.engine.builder org.springframework.webflow.execution org.springframework.webflow.mvc.builder org.springframework.webflow.mvc.portlet org.springframework.webflow.mvc.servlet org.springframework.webflow.mvc.view org.springframework.webflow.validation |
org.cateproject.view.json
| Afferent Couplings | Efferent Couplings | Abstractness | Instability | Distance |
|---|---|---|---|---|
| 0 | 13 | 0.0% | 100.0% | 0.0% |
| Abstract Classes | Concrete Classes | Used by Packages | Uses Packages |
|---|---|---|---|
| None | org.cateproject.view.json.GeoJSONView org.cateproject.view.json.JSONView org.cateproject.view.json.JsonConfigFactoryBean | None | eu.etaxonomy.cdm.api.service.pager java.io java.lang java.util javax.servlet.http net.sf.json net.sf.json.processors net.sf.json.util org.springframework.beans.factory org.springframework.web.servlet.view org.tdwg.rs.ontology.voc.taxonconcept_ org.tdwg.rs.ontology.voc.taxonname_ org.tdwg.rs.ontology.voc.taxonoccurrence_ |
org.cateproject.view.json.processor
| Afferent Couplings | Efferent Couplings | Abstractness | Instability | Distance |
|---|---|---|---|---|
| 0 | 27 | 0.0% | 100.0% | 0.0% |
| Abstract Classes | Concrete Classes | Used by Packages | Uses Packages |
|---|---|---|---|
| None | org.cateproject.view.json.processor.AnnotationBeanProcessor org.cateproject.view.json.processor.CGLibEnhancedBeanProcessorMatcher org.cateproject.view.json.processor.DateTimeJSONValueProcessor org.cateproject.view.json.processor.DocSumTypeJSONBeanProcessor org.cateproject.view.json.processor.HibernateJSONValueMatcher org.cateproject.view.json.processor.HibernateJSONValueProcessor org.cateproject.view.json.processor.InitializedHibernatePropertyFilter org.cateproject.view.json.processor.LSIDJSONValueProcessor org.cateproject.view.json.processor.MediaJSONBeanProcessor org.cateproject.view.json.processor.TaxonBeanProcessor org.cateproject.view.json.processor.TermBaseBeanProcessor org.cateproject.view.json.processor.UUIDJSONValueProcessor org.cateproject.view.json.processor.UserJSONBeanProcessor | None | eu.etaxonomy.cdm.model.agent eu.etaxonomy.cdm.model.common eu.etaxonomy.cdm.model.description eu.etaxonomy.cdm.model.location eu.etaxonomy.cdm.model.media eu.etaxonomy.cdm.model.name eu.etaxonomy.cdm.model.occurrence eu.etaxonomy.cdm.model.reference eu.etaxonomy.cdm.model.taxon eu.etaxonomy.cdm.model.view eu.etaxonomy.cdm.model.view.context eu.etaxonomy.cdm.strategy.cache.name gov.nih.nlm.ncbi.www.soap.eutils.esummary gov.nih.nlm.ncbi.www.soap.eutils.esummary.impl java.lang java.util net.sf.cglib.proxy net.sf.json net.sf.json.processors net.sf.json.util org.apache.commons.logging org.apache.xmlbeans org.hibernate org.hibernate.collection org.hibernate.proxy org.joda.time org.joda.time.format |
org.cateproject.view.pdf
| Afferent Couplings | Efferent Couplings | Abstractness | Instability | Distance |
|---|---|---|---|---|
| 0 | 30 | 0.0% | 100.0% | 0.0% |
| Abstract Classes | Concrete Classes | Used by Packages | Uses Packages |
|---|---|---|---|
| None | org.cateproject.view.pdf.SpeciesPagePdfView org.cateproject.view.pdf.SpeciesPagePdfView$DistributionComparator org.cateproject.view.pdf.SpeciesPagePdfView$Figure org.cateproject.view.pdf.SpeciesPagePdfView$FigureEventHelper org.cateproject.view.pdf.SpeciesPagePdfView$IdentifiableComparator org.cateproject.view.pdf.SpeciesPagePdfView$ReferencesHelper | None | com.lowagie.text com.lowagie.text.html.simpleparser com.lowagie.text.pdf com.lowagie.text.pdf.draw eu.etaxonomy.cdm.model.common eu.etaxonomy.cdm.model.description eu.etaxonomy.cdm.model.location eu.etaxonomy.cdm.model.media eu.etaxonomy.cdm.model.name eu.etaxonomy.cdm.model.reference java.awt java.io java.lang java.net java.util javax.servlet.http javax.xml.parsers org.apache.commons.logging org.cateproject.controller.description org.cateproject.controller.speciespage org.cateproject.service.enumeration org.cateproject.view.tools org.joda.time org.joda.time.format org.springframework.context org.springframework.ui.context org.springframework.web.servlet org.springframework.web.servlet.support org.springframework.web.servlet.view.document org.xml.sax |
org.cateproject.view.tiles
| Afferent Couplings | Efferent Couplings | Abstractness | Instability | Distance |
|---|---|---|---|---|
| 1 | 46 | 0.0% | 98.0% | 2.0% |
| Abstract Classes | Concrete Classes | Used by Packages | Uses Packages |
|---|---|---|---|
| None | org.cateproject.view.tiles.CateTilesConfigurer org.cateproject.view.tiles.CateTilesConfigurer$1 org.cateproject.view.tiles.CateTilesConfigurer$JspExpressionChecker org.cateproject.view.tiles.CateTilesConfigurer$SpringTilesContainerFactory org.cateproject.view.tiles.CateTilesConfigurer$SpringTilesInitializer org.cateproject.view.tiles.CateTilesConfigurer$TilesElActivator org.cateproject.view.tiles.CateViewPreparer org.cateproject.view.tiles.SimpleViewPreparer org.cateproject.view.tiles.VelocityAttributeRenderer | org.cateproject.view.velocity | eu.etaxonomy.cdm.api.service eu.etaxonomy.cdm.model.description eu.etaxonomy.cdm.model.taxon eu.etaxonomy.cdm.model.view eu.etaxonomy.cdm.model.view.context java.io java.lang java.lang.reflect java.util javax.servlet javax.servlet.jsp net.sf.ehcache org.apache.commons.logging org.apache.tiles org.apache.tiles.context org.apache.tiles.definition org.apache.tiles.definition.digester org.apache.tiles.evaluator org.apache.tiles.evaluator.el org.apache.tiles.evaluator.impl org.apache.tiles.factory org.apache.tiles.impl org.apache.tiles.impl.mgmt org.apache.tiles.jsp.context org.apache.tiles.locale org.apache.tiles.preparer org.apache.tiles.renderer.impl org.apache.tiles.servlet.context org.apache.tiles.startup org.apache.tiles.velocity.context org.cateproject.controller.event.taxon org.cateproject.model org.cateproject.service org.cateproject.service.event org.cateproject.view.authz org.joda.time org.springframework.beans org.springframework.beans.factory org.springframework.context org.springframework.context.support org.springframework.security.taglibs.velocity org.springframework.util org.springframework.web.context org.springframework.web.servlet org.springframework.web.servlet.view.tiles2 org.springframework.web.servlet.view.velocity |
org.cateproject.view.tools
| Afferent Couplings | Efferent Couplings | Abstractness | Instability | Distance |
|---|---|---|---|---|
| 4 | 38 | 6.0% | 90.0% | 4.0% |
| Abstract Classes | Concrete Classes | Used by Packages | Uses Packages |
|---|---|---|---|
| org.cateproject.view.tools.ViewUtils$MenuItem | org.cateproject.view.tools.CATELinkTool org.cateproject.view.tools.JodaDateTool org.cateproject.view.tools.NamedAreaLevelsTool org.cateproject.view.tools.ReferenceTool org.cateproject.view.tools.SexEnumTool org.cateproject.view.tools.TaxonomicNameTool org.cateproject.view.tools.TaxonomicRelationshipsTool org.cateproject.view.tools.ViewUtils org.cateproject.view.tools.ViewUtils$1 org.cateproject.view.tools.ViewUtils$Crumb org.cateproject.view.tools.ViewUtils$ElementsMenuItem org.cateproject.view.tools.ViewUtils$IndexMenuItem org.cateproject.view.tools.ViewUtils$LanguageComparator org.cateproject.view.tools.ViewUtils$LanguageStringComparator org.cateproject.view.tools.ViewUtils$QuantiativeDataComparator org.cateproject.view.tools.ViewUtils$StateDataComparator org.cateproject.view.tools.ViewUtils$UserComparator | org.cateproject.view.atom org.cateproject.view.cache org.cateproject.view.pdf org.cateproject.view.velocity | eu.etaxonomy.cdm.model.agent eu.etaxonomy.cdm.model.common eu.etaxonomy.cdm.model.description eu.etaxonomy.cdm.model.location eu.etaxonomy.cdm.model.media eu.etaxonomy.cdm.model.name eu.etaxonomy.cdm.model.occurrence eu.etaxonomy.cdm.model.reference eu.etaxonomy.cdm.model.taxon eu.etaxonomy.cdm.model.view eu.etaxonomy.cdm.model.view.context eu.etaxonomy.cdm.persistence.query eu.etaxonomy.cdm.strategy.cache.name java.io java.lang java.util javax.servlet.http org.apache.commons.logging org.apache.velocity.tools.view.tools org.cateproject.controller.description org.cateproject.controller.flow.action org.cateproject.controller.flow.action.upload org.cateproject.controller.speciespage org.cateproject.model org.cateproject.service org.cateproject.service.enumeration org.cateproject.service.enumeration.impl org.cateproject.service.format.reference org.cateproject.view.tools.page org.hibernate.proxy org.joda.time org.joda.time.format org.springframework.context org.springframework.core.convert org.springframework.security.authentication org.springframework.security.core org.springframework.security.core.context org.springframework.ui.context |
org.cateproject.view.tools.page
| 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.cateproject.view.tools.page.CommonListPage org.cateproject.view.tools.page.DescriptionListPage org.cateproject.view.tools.page.HelpListPage org.cateproject.view.tools.page.MediaListPage org.cateproject.view.tools.page.UserPage | org.cateproject.view.tools | java.lang |
org.cateproject.view.velocity
| Afferent Couplings | Efferent Couplings | Abstractness | Instability | Distance |
|---|---|---|---|---|
| 0 | 43 | 14.0% | 100.0% | 14.0% |
| Abstract Classes | Concrete Classes | Used by Packages | Uses Packages |
|---|---|---|---|
| org.cateproject.view.velocity.CateBlockDirective | org.cateproject.view.velocity.ApplicationContextAwareVelocityToolboxView org.cateproject.view.velocity.ApplicationContextAwareVelocityToolboxView$1 org.cateproject.view.velocity.CateSpringBindDirective org.cateproject.view.velocity.CateSpringBindDirective$BindStatus org.cateproject.view.velocity.CateSpringErrorsDirective org.cateproject.view.velocity.ServletContextAwareVelocityConfigurer | None | eu.etaxonomy.cdm.api.service eu.etaxonomy.cdm.api.service.pager eu.etaxonomy.cdm.model.taxon eu.etaxonomy.cdm.model.view eu.etaxonomy.cdm.model.view.context eu.etaxonomy.cdm.persistence.query java.beans java.io java.lang java.util javax.servlet javax.servlet.http net.sf.ehcache net.sf.ehcache.config net.sf.ehcache.constructs.blocking net.sf.ehcache.constructs.web org.apache.commons.logging org.apache.tiles.velocity.template org.apache.velocity org.apache.velocity.app org.apache.velocity.context org.apache.velocity.exception org.apache.velocity.runtime org.apache.velocity.runtime.directive org.apache.velocity.runtime.parser.node org.cateproject.model org.cateproject.service org.cateproject.service.enumeration org.cateproject.view.authz org.cateproject.view.tiles org.cateproject.view.tools org.springframework.beans org.springframework.context org.springframework.core.convert org.springframework.security.taglibs.velocity org.springframework.ui.context org.springframework.util org.springframework.validation org.springframework.web.context org.springframework.web.servlet org.springframework.web.servlet.support org.springframework.web.servlet.view.velocity org.springframework.web.util |
Cycles
[ summary ] [ packages ] [ cycles ] [ explanations ]There are no cyclic dependencies.
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. |


