Package | TC | CC | AC | Ca | Ce | A | I | D | V |
---|---|---|---|---|---|---|---|---|---|
info.magnolia.ui.workbench | 19 | 11 | 8 | 4 | 26 | 42.0% | 87.0% | 29.0% | 1 |
info.magnolia.ui.workbench.column | 4 | 3 | 1 | 1 | 12 | 25.0% | 92.0% | 17.0% | 1 |
info.magnolia.ui.workbench.column.definition | 10 | 6 | 4 | 5 | 10 | 40.0% | 67.0% | 7.0% | 1 |
info.magnolia.ui.workbench.container | 7 | 4 | 3 | 4 | 11 | 43.0% | 73.0% | 16.0% | 1 |
info.magnolia.ui.workbench.definition | 4 | 2 | 2 | 6 | 5 | 50.0% | 45.0% | 5.0% | 1 |
info.magnolia.ui.workbench.event | 15 | 7 | 8 | 2 | 4 | 52.999996% | 67.0% | 20.0% | 1 |
info.magnolia.ui.workbench.list | 9 | 8 | 1 | 2 | 15 | 11.0% | 88.0% | 1.0% | 1 |
info.magnolia.ui.workbench.search | 5 | 4 | 1 | 1 | 13 | 20.0% | 93.0% | 13.0% | 1 |
info.magnolia.ui.workbench.thumbnail | 12 | 10 | 2 | 0 | 20 | 17.0% | 100.0% | 17.0% | 1 |
info.magnolia.ui.workbench.tree | 20 | 17 | 3 | 3 | 27 | 15.000001% | 90.0% | 5.0% | 1 |
info.magnolia.ui.workbench.tree.drop | 9 | 8 | 1 | 1 | 13 | 11.0% | 93.0% | 4.0% | 1 |
Afferent Couplings | Efferent Couplings | Abstractness | Instability | Distance |
---|---|---|---|---|
4 | 26 | 42.0% | 87.0% | 29.0% |
Abstract Classes | Concrete Classes | Used by Packages | Uses Packages |
---|---|---|---|
info.magnolia.ui.workbench.AbstractContentPresenter info.magnolia.ui.workbench.AbstractContentPresenterBase info.magnolia.ui.workbench.ContentPresenter info.magnolia.ui.workbench.ContentView info.magnolia.ui.workbench.ContentView$Listener info.magnolia.ui.workbench.StatusBarView info.magnolia.ui.workbench.WorkbenchView info.magnolia.ui.workbench.WorkbenchView$Listener | info.magnolia.ui.workbench.StatusBarViewImpl info.magnolia.ui.workbench.WorkbenchPresenter info.magnolia.ui.workbench.WorkbenchStatusBarPresenter info.magnolia.ui.workbench.WorkbenchStatusBarPresenter$1 info.magnolia.ui.workbench.WorkbenchViewImpl info.magnolia.ui.workbench.WorkbenchViewImpl$1 info.magnolia.ui.workbench.WorkbenchViewImpl$2 info.magnolia.ui.workbench.WorkbenchViewImpl$3 info.magnolia.ui.workbench.WorkbenchViewImpl$4 info.magnolia.ui.workbench.WorkbenchViewImpl$5 info.magnolia.ui.workbench.WorkbenchViewImpl$6 | info.magnolia.ui.workbench.list info.magnolia.ui.workbench.search info.magnolia.ui.workbench.thumbnail info.magnolia.ui.workbench.tree | com.vaadin.data com.vaadin.event com.vaadin.server com.vaadin.shared.ui com.vaadin.ui info.magnolia.event info.magnolia.i18nsystem info.magnolia.jcr.util info.magnolia.objectfactory info.magnolia.ui.api.view info.magnolia.ui.imageprovider.definition info.magnolia.ui.vaadin.icon info.magnolia.ui.vaadin.integration.contentconnector info.magnolia.ui.vaadin.integration.jcr info.magnolia.ui.workbench.column.definition info.magnolia.ui.workbench.definition info.magnolia.ui.workbench.event info.magnolia.ui.workbench.search info.magnolia.ui.workbench.tree java.io java.lang java.util javax.jcr javax.jcr.nodetype org.apache.commons.lang3 org.slf4j |
Afferent Couplings | Efferent Couplings | Abstractness | Instability | Distance |
---|---|---|---|---|
1 | 12 | 25.0% | 92.0% | 17.0% |
Abstract Classes | Concrete Classes | Used by Packages | Uses Packages |
---|---|---|---|
info.magnolia.ui.workbench.column.AbstractColumnFormatter | info.magnolia.ui.workbench.column.DateColumnFormatter info.magnolia.ui.workbench.column.PathColumnFormatter info.magnolia.ui.workbench.column.StatusColumnFormatter | info.magnolia.ui.workbench.column.definition | com.vaadin.data com.vaadin.ui info.magnolia.context info.magnolia.jcr.util info.magnolia.ui.vaadin.integration.jcr info.magnolia.ui.workbench.column.definition java.lang java.security java.util javax.jcr org.apache.commons.lang3.time org.slf4j |
Afferent Couplings | Efferent Couplings | Abstractness | Instability | Distance |
---|---|---|---|---|
5 | 10 | 40.0% | 67.0% | 7.0% |
Abstract Classes | Concrete Classes | Used by Packages | Uses Packages |
---|---|---|---|
info.magnolia.ui.workbench.column.definition.AbstractColumnDefinition info.magnolia.ui.workbench.column.definition.ColumnAvailabilityRule info.magnolia.ui.workbench.column.definition.ColumnDefinition info.magnolia.ui.workbench.column.definition.ColumnFormatter | info.magnolia.ui.workbench.column.definition.ColumnDefinitionKeyGenerator info.magnolia.ui.workbench.column.definition.MetaDataColumnDefinition info.magnolia.ui.workbench.column.definition.OnAuthorOrWhenThereIsSubscribersRule info.magnolia.ui.workbench.column.definition.PropertyColumnDefinition info.magnolia.ui.workbench.column.definition.PropertyTypeColumnDefinition info.magnolia.ui.workbench.column.definition.StatusColumnDefinition | info.magnolia.ui.workbench info.magnolia.ui.workbench.column info.magnolia.ui.workbench.definition info.magnolia.ui.workbench.list info.magnolia.ui.workbench.tree | com.vaadin.ui info.magnolia.cms.beans.config info.magnolia.cms.exchange info.magnolia.i18nsystem info.magnolia.ui.api.app info.magnolia.ui.workbench.column info.magnolia.ui.workbench.definition java.lang java.lang.reflect java.util |
Afferent Couplings | Efferent Couplings | Abstractness | Instability | Distance |
---|---|---|---|---|
4 | 11 | 43.0% | 73.0% | 16.0% |
Abstract Classes | Concrete Classes | Used by Packages | Uses Packages |
---|---|---|---|
info.magnolia.ui.workbench.container.AbstractContainer info.magnolia.ui.workbench.container.AbstractJcrContainer info.magnolia.ui.workbench.container.Refreshable | info.magnolia.ui.workbench.container.AbstractContainer$ItemSetChangeEvent info.magnolia.ui.workbench.container.AbstractContainer$PropertySetChangeEvent info.magnolia.ui.workbench.container.OrderBy info.magnolia.ui.workbench.container.PropertyDefinition | info.magnolia.ui.workbench.list info.magnolia.ui.workbench.search info.magnolia.ui.workbench.thumbnail info.magnolia.ui.workbench.tree | com.vaadin.data info.magnolia.context info.magnolia.ui.vaadin.integration.contentconnector info.magnolia.ui.vaadin.integration.jcr java.lang java.util javax.jcr javax.jcr.nodetype javax.jcr.query org.apache.commons.lang3 org.slf4j |
Afferent Couplings | Efferent Couplings | Abstractness | Instability | Distance |
---|---|---|---|---|
6 | 5 | 50.0% | 45.0% | 5.0% |
Abstract Classes | Concrete Classes | Used by Packages | Uses Packages |
---|---|---|---|
info.magnolia.ui.workbench.definition.ContentPresenterDefinition info.magnolia.ui.workbench.definition.WorkbenchDefinition | info.magnolia.ui.workbench.definition.ConfiguredContentPresenterDefinition info.magnolia.ui.workbench.definition.ConfiguredWorkbenchDefinition | info.magnolia.ui.workbench info.magnolia.ui.workbench.column.definition info.magnolia.ui.workbench.list info.magnolia.ui.workbench.search info.magnolia.ui.workbench.thumbnail info.magnolia.ui.workbench.tree | info.magnolia.ui.workbench.column.definition info.magnolia.ui.workbench.tree java.io java.lang java.util |
Afferent Couplings | Efferent Couplings | Abstractness | Instability | Distance |
---|---|---|---|---|
2 | 4 | 52.999996% | 67.0% | 20.0% |
Abstract Classes | Concrete Classes | Used by Packages | Uses Packages |
---|---|---|---|
info.magnolia.ui.workbench.event.ActionEvent$Handler info.magnolia.ui.workbench.event.ActionEvent$Notifier info.magnolia.ui.workbench.event.ItemDoubleClickedEvent$Handler info.magnolia.ui.workbench.event.ItemRightClickedEvent$Handler info.magnolia.ui.workbench.event.ItemShortcutKeyEvent$Handler info.magnolia.ui.workbench.event.SearchEvent$Handler info.magnolia.ui.workbench.event.SelectionChangedEvent$Handler info.magnolia.ui.workbench.event.ViewTypeChangedEvent$Handler | info.magnolia.ui.workbench.event.ActionEvent info.magnolia.ui.workbench.event.ItemDoubleClickedEvent info.magnolia.ui.workbench.event.ItemRightClickedEvent info.magnolia.ui.workbench.event.ItemShortcutKeyEvent info.magnolia.ui.workbench.event.SearchEvent info.magnolia.ui.workbench.event.SelectionChangedEvent info.magnolia.ui.workbench.event.ViewTypeChangedEvent | info.magnolia.ui.workbench info.magnolia.ui.workbench.tree | info.magnolia.event java.io java.lang java.util |
Afferent Couplings | Efferent Couplings | Abstractness | Instability | Distance |
---|---|---|---|---|
2 | 15 | 11.0% | 88.0% | 1.0% |
Abstract Classes | Concrete Classes | Used by Packages | Uses Packages |
---|---|---|---|
info.magnolia.ui.workbench.list.ListView | info.magnolia.ui.workbench.list.FlatJcrContainer info.magnolia.ui.workbench.list.ListPresenter info.magnolia.ui.workbench.list.ListPresenterDefinition info.magnolia.ui.workbench.list.ListViewImpl info.magnolia.ui.workbench.list.ListViewImpl$1 info.magnolia.ui.workbench.list.ListViewImpl$2 info.magnolia.ui.workbench.list.ListViewImpl$3 info.magnolia.ui.workbench.list.ListViewImpl$4 | info.magnolia.ui.workbench.search info.magnolia.ui.workbench.tree | com.vaadin.data com.vaadin.event com.vaadin.shared com.vaadin.ui info.magnolia.event info.magnolia.objectfactory info.magnolia.ui.vaadin.grid info.magnolia.ui.vaadin.integration.contentconnector info.magnolia.ui.workbench info.magnolia.ui.workbench.column.definition info.magnolia.ui.workbench.container info.magnolia.ui.workbench.definition java.lang java.util org.slf4j |
Afferent Couplings | Efferent Couplings | Abstractness | Instability | Distance |
---|---|---|---|---|
1 | 13 | 20.0% | 93.0% | 13.0% |
Abstract Classes | Concrete Classes | Used by Packages | Uses Packages |
---|---|---|---|
info.magnolia.ui.workbench.search.SearchView | info.magnolia.ui.workbench.search.SearchJcrContainer info.magnolia.ui.workbench.search.SearchPresenter info.magnolia.ui.workbench.search.SearchPresenterDefinition info.magnolia.ui.workbench.search.SearchViewImpl | info.magnolia.ui.workbench | info.magnolia.objectfactory info.magnolia.ui.vaadin.integration.contentconnector info.magnolia.ui.workbench info.magnolia.ui.workbench.container info.magnolia.ui.workbench.definition info.magnolia.ui.workbench.list java.lang java.util java.util.regex javax.jcr.nodetype org.apache.commons.lang3 org.apache.jackrabbit.util org.slf4j |
Afferent Couplings | Efferent Couplings | Abstractness | Instability | Distance |
---|---|---|---|---|
0 | 20 | 17.0% | 100.0% | 17.0% |
Abstract Classes | Concrete Classes | Used by Packages | Uses Packages |
---|---|---|---|
info.magnolia.ui.workbench.thumbnail.ThumbnailContainer$IdProvider info.magnolia.ui.workbench.thumbnail.ThumbnailView | info.magnolia.ui.workbench.thumbnail.JcrThumbnailItemIdProvider info.magnolia.ui.workbench.thumbnail.ThumbnailContainer info.magnolia.ui.workbench.thumbnail.ThumbnailContainer$ThumbnailContainerProperty info.magnolia.ui.workbench.thumbnail.ThumbnailContainer$ThumbnailItem info.magnolia.ui.workbench.thumbnail.ThumbnailPresenter info.magnolia.ui.workbench.thumbnail.ThumbnailPresenterDefinition info.magnolia.ui.workbench.thumbnail.ThumbnailViewImpl info.magnolia.ui.workbench.thumbnail.ThumbnailViewImpl$1 info.magnolia.ui.workbench.thumbnail.ThumbnailViewImpl$2 info.magnolia.ui.workbench.thumbnail.ThumbnailViewImpl$3 | None | com.vaadin.data com.vaadin.data.util com.vaadin.ui info.magnolia.context info.magnolia.event info.magnolia.jcr info.magnolia.objectfactory info.magnolia.ui.imageprovider info.magnolia.ui.vaadin.integration.contentconnector info.magnolia.ui.vaadin.integration.jcr info.magnolia.ui.vaadin.layout info.magnolia.ui.workbench info.magnolia.ui.workbench.container info.magnolia.ui.workbench.definition java.lang java.util javax.jcr javax.jcr.query org.apache.commons.lang3 org.slf4j |
Afferent Couplings | Efferent Couplings | Abstractness | Instability | Distance |
---|---|---|---|---|
3 | 27 | 15.000001% | 90.0% | 5.0% |
Abstract Classes | Concrete Classes | Used by Packages | Uses Packages |
---|---|---|---|
info.magnolia.ui.workbench.tree.MoveHandler info.magnolia.ui.workbench.tree.TreeView info.magnolia.ui.workbench.tree.TreeView$Listener | info.magnolia.ui.workbench.tree.HierarchicalJcrContainer info.magnolia.ui.workbench.tree.HierarchicalJcrContainer$1 info.magnolia.ui.workbench.tree.HierarchicalJcrContainer$ItemNameComparator info.magnolia.ui.workbench.tree.InplaceEditingFieldFactory info.magnolia.ui.workbench.tree.InplaceEditingFieldFactory$1 info.magnolia.ui.workbench.tree.InplaceEditingFieldFactory$StringToLongConverter info.magnolia.ui.workbench.tree.MoveLocation info.magnolia.ui.workbench.tree.RowScroller info.magnolia.ui.workbench.tree.TreePresenter info.magnolia.ui.workbench.tree.TreePresenterDefinition info.magnolia.ui.workbench.tree.TreeRowScroller info.magnolia.ui.workbench.tree.TreeViewImpl info.magnolia.ui.workbench.tree.TreeViewImpl$1 info.magnolia.ui.workbench.tree.TreeViewImpl$2 info.magnolia.ui.workbench.tree.TreeViewImpl$3 info.magnolia.ui.workbench.tree.TreeViewImpl$4 info.magnolia.ui.workbench.tree.TreeViewImpl$EditingKeyboardHandler | info.magnolia.ui.workbench info.magnolia.ui.workbench.definition info.magnolia.ui.workbench.tree.drop | com.vaadin.data com.vaadin.data.util.converter com.vaadin.event com.vaadin.event.dd com.vaadin.server com.vaadin.shared com.vaadin.ui info.magnolia.context info.magnolia.event info.magnolia.jcr.util info.magnolia.objectfactory info.magnolia.ui.vaadin.grid info.magnolia.ui.vaadin.integration.contentconnector info.magnolia.ui.vaadin.integration.jcr info.magnolia.ui.workbench info.magnolia.ui.workbench.column.definition info.magnolia.ui.workbench.container info.magnolia.ui.workbench.definition info.magnolia.ui.workbench.event info.magnolia.ui.workbench.list info.magnolia.ui.workbench.tree.drop java.lang java.util javax.jcr javax.jcr.nodetype org.apache.commons.lang3 org.slf4j |
Afferent Couplings | Efferent Couplings | Abstractness | Instability | Distance |
---|---|---|---|---|
1 | 13 | 11.0% | 93.0% | 4.0% |
Abstract Classes | Concrete Classes | Used by Packages | Uses Packages |
---|---|---|---|
info.magnolia.ui.workbench.tree.drop.DropConstraint | info.magnolia.ui.workbench.tree.drop.AlwaysTrueDropConstraint info.magnolia.ui.workbench.tree.drop.AlwaysTrueDropConstraint$1 info.magnolia.ui.workbench.tree.drop.BaseDropConstraint info.magnolia.ui.workbench.tree.drop.NodesAndPropsDropConstraint info.magnolia.ui.workbench.tree.drop.OnlyNodesDropConstraint info.magnolia.ui.workbench.tree.drop.TreeViewDropHandler info.magnolia.ui.workbench.tree.drop.TreeViewDropHandler$1 info.magnolia.ui.workbench.tree.drop.TreeViewDropHandler$2 | info.magnolia.ui.workbench.tree | com.vaadin.data com.vaadin.event com.vaadin.event.dd com.vaadin.event.dd.acceptcriteria com.vaadin.shared.ui.dd com.vaadin.ui info.magnolia.jcr.util info.magnolia.ui.vaadin.integration.jcr info.magnolia.ui.workbench.tree java.lang javax.jcr javax.jcr.nodetype org.slf4j |
Package | Package Dependencies |
---|---|
info.magnolia.ui.workbench | info.magnolia.ui.workbench.definition info.magnolia.ui.workbench.column.definition info.magnolia.ui.workbench.definition |
info.magnolia.ui.workbench.column | info.magnolia.ui.workbench.column.definition info.magnolia.ui.workbench.definition info.magnolia.ui.workbench.column.definition |
info.magnolia.ui.workbench.column.definition | info.magnolia.ui.workbench.definition info.magnolia.ui.workbench.column.definition |
info.magnolia.ui.workbench.definition | info.magnolia.ui.workbench.column.definition info.magnolia.ui.workbench.definition |
info.magnolia.ui.workbench.list | info.magnolia.ui.workbench info.magnolia.ui.workbench.definition info.magnolia.ui.workbench.column.definition info.magnolia.ui.workbench.definition |
info.magnolia.ui.workbench.search | info.magnolia.ui.workbench.list info.magnolia.ui.workbench info.magnolia.ui.workbench.definition info.magnolia.ui.workbench.column.definition info.magnolia.ui.workbench.definition |
info.magnolia.ui.workbench.thumbnail | info.magnolia.ui.workbench info.magnolia.ui.workbench.definition info.magnolia.ui.workbench.column.definition info.magnolia.ui.workbench.definition |
info.magnolia.ui.workbench.tree | info.magnolia.ui.workbench info.magnolia.ui.workbench.definition info.magnolia.ui.workbench.column.definition info.magnolia.ui.workbench.definition |
info.magnolia.ui.workbench.tree.drop | info.magnolia.ui.workbench.tree info.magnolia.ui.workbench info.magnolia.ui.workbench.definition info.magnolia.ui.workbench.column.definition info.magnolia.ui.workbench.definition |
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. |