Package | TC | CC | AC | Ca | Ce | A | I | D | V |
---|---|---|---|---|---|---|---|---|---|
info.magnolia.cms.gui.control | 23 | 21 | 2 | 4 | 15 | 9.0% | 79.0% | 12.0% | 1 |
info.magnolia.cms.gui.controlx | 4 | 1 | 3 | 2 | 3 | 75.0% | 60.000004% | 35.0% | 1 |
info.magnolia.cms.gui.controlx.impl | 5 | 5 | 0 | 3 | 9 | 0.0% | 75.0% | 25.0% | 1 |
info.magnolia.cms.gui.controlx.list | 12 | 8 | 4 | 3 | 12 | 33.0% | 80.0% | 13.0% | 1 |
info.magnolia.cms.gui.controlx.search | 17 | 13 | 4 | 0 | 20 | 24.0% | 100.0% | 24.0% | 1 |
info.magnolia.cms.gui.controlx.version | 1 | 1 | 0 | 0 | 6 | 0.0% | 100.0% | 0.0% | 1 |
info.magnolia.cms.gui.dialog | 26 | 23 | 3 | 2 | 23 | 12.0% | 92.0% | 4.0% | 1 |
info.magnolia.cms.gui.fckeditor | 1 | 1 | 0 | 0 | 4 | 0.0% | 100.0% | 0.0% | 1 |
info.magnolia.cms.gui.i18n | 3 | 2 | 1 | 1 | 11 | 33.0% | 92.0% | 25.0% | 1 |
info.magnolia.cms.gui.inline | 5 | 5 | 0 | 0 | 13 | 0.0% | 100.0% | 0.0% | 1 |
info.magnolia.cms.gui.misc | 4 | 4 | 0 | 2 | 4 | 0.0% | 67.0% | 33.0% | 1 |
info.magnolia.cms.gui.query | 7 | 4 | 3 | 2 | 4 | 43.0% | 67.0% | 10.0% | 1 |
Afferent Couplings | Efferent Couplings | Abstractness | Instability | Distance |
---|---|---|---|---|
4 | 15 | 9.0% | 79.0% | 12.0% |
Abstract Classes | Concrete Classes | Used by Packages | Uses Packages |
---|---|---|---|
info.magnolia.cms.gui.control.Control info.magnolia.cms.gui.control.TreeColumnHtmlRenderer | info.magnolia.cms.gui.control.Bar info.magnolia.cms.gui.control.Button info.magnolia.cms.gui.control.ButtonSet info.magnolia.cms.gui.control.ContextMenu info.magnolia.cms.gui.control.ContextMenuItem info.magnolia.cms.gui.control.ControlImpl info.magnolia.cms.gui.control.Edit info.magnolia.cms.gui.control.File info.magnolia.cms.gui.control.FreemarkerControl info.magnolia.cms.gui.control.FunctionBar info.magnolia.cms.gui.control.FunctionBarItem info.magnolia.cms.gui.control.Hidden info.magnolia.cms.gui.control.NodeTypeFilteringTreeColumnHtmlRenderer info.magnolia.cms.gui.control.Password info.magnolia.cms.gui.control.Radio info.magnolia.cms.gui.control.Select info.magnolia.cms.gui.control.SelectOption info.magnolia.cms.gui.control.Tree info.magnolia.cms.gui.control.Tree$1 info.magnolia.cms.gui.control.TreeColumn info.magnolia.cms.gui.control.TreeColumnHtmlRendererImpl | info.magnolia.cms.gui.controlx.list info.magnolia.cms.gui.dialog info.magnolia.cms.gui.i18n info.magnolia.cms.gui.inline | freemarker.template info.magnolia.cms.core info.magnolia.cms.i18n info.magnolia.cms.security info.magnolia.cms.util info.magnolia.context info.magnolia.freemarker java.io java.lang java.util javax.jcr javax.servlet.http org.apache.commons.codec.binary org.apache.commons.lang org.slf4j |
Afferent Couplings | Efferent Couplings | Abstractness | Instability | Distance |
---|---|---|---|---|
2 | 3 | 75.0% | 60.000004% | 35.0% |
Abstract Classes | Concrete Classes | Used by Packages | Uses Packages |
---|---|---|---|
info.magnolia.cms.gui.controlx.Control info.magnolia.cms.gui.controlx.RenderKit info.magnolia.cms.gui.controlx.Renderer | info.magnolia.cms.gui.controlx.RenderKitFactory | info.magnolia.cms.gui.controlx.impl info.magnolia.cms.gui.controlx.list | info.magnolia.cms.gui.controlx.impl java.lang java.util |
Afferent Couplings | Efferent Couplings | Abstractness | Instability | Distance |
---|---|---|---|---|
3 | 9 | 0.0% | 75.0% | 25.0% |
Abstract Classes | Concrete Classes | Used by Packages | Uses Packages |
---|---|---|---|
None | info.magnolia.cms.gui.controlx.impl.AbstractControl info.magnolia.cms.gui.controlx.impl.RenderKitImpl info.magnolia.cms.gui.controlx.impl.RenderKitImpl$1 info.magnolia.cms.gui.controlx.impl.TemplatedRenderer info.magnolia.cms.gui.controlx.impl.TestRenderKit | info.magnolia.cms.gui.controlx info.magnolia.cms.gui.controlx.list info.magnolia.cms.gui.controlx.search | info.magnolia.cms.gui.controlx info.magnolia.cms.gui.controlx.list info.magnolia.cms.i18n info.magnolia.freemarker java.lang java.util org.apache.commons.collections org.apache.commons.collections.map org.apache.commons.lang |
Afferent Couplings | Efferent Couplings | Abstractness | Instability | Distance |
---|---|---|---|---|
3 | 12 | 33.0% | 80.0% | 13.0% |
Abstract Classes | Concrete Classes | Used by Packages | Uses Packages |
---|---|---|---|
info.magnolia.cms.gui.controlx.list.AbstractListModel info.magnolia.cms.gui.controlx.list.ListModel info.magnolia.cms.gui.controlx.list.ListModelIterator info.magnolia.cms.gui.controlx.list.ValueProvider | info.magnolia.cms.gui.controlx.list.AbstractListModel$ListComparator info.magnolia.cms.gui.controlx.list.DefaultValueProvider info.magnolia.cms.gui.controlx.list.IconListColumnRenderer info.magnolia.cms.gui.controlx.list.ListColumn info.magnolia.cms.gui.controlx.list.ListColumnRenderer info.magnolia.cms.gui.controlx.list.ListControl info.magnolia.cms.gui.controlx.list.ListControlRenderer info.magnolia.cms.gui.controlx.list.ListModelIteratorImpl | info.magnolia.cms.gui.controlx.impl info.magnolia.cms.gui.controlx.search info.magnolia.cms.gui.controlx.version | info.magnolia.cms.core info.magnolia.cms.gui.control info.magnolia.cms.gui.controlx info.magnolia.cms.gui.controlx.impl info.magnolia.cms.util info.magnolia.context java.lang java.util javax.jcr org.apache.commons.beanutils org.apache.commons.lang org.slf4j |
Afferent Couplings | Efferent Couplings | Abstractness | Instability | Distance |
---|---|---|---|---|
0 | 20 | 24.0% | 100.0% | 24.0% |
Abstract Classes | Concrete Classes | Used by Packages | Uses Packages |
---|---|---|---|
info.magnolia.cms.gui.controlx.search.AbstractSearchableListModel info.magnolia.cms.gui.controlx.search.DialogBasedSearchControlDefinition info.magnolia.cms.gui.controlx.search.SearchConfig info.magnolia.cms.gui.controlx.search.SearchableListModel | info.magnolia.cms.gui.controlx.search.DateSearchControl info.magnolia.cms.gui.controlx.search.DialogBasedSearchConfig info.magnolia.cms.gui.controlx.search.MultipleSearchListModel info.magnolia.cms.gui.controlx.search.MultipleSearchListModel$1 info.magnolia.cms.gui.controlx.search.MultipleSearchListModel$MultipleListIterator info.magnolia.cms.gui.controlx.search.QueryBuilder info.magnolia.cms.gui.controlx.search.RepositorySearchListModel info.magnolia.cms.gui.controlx.search.SearchConfigImpl info.magnolia.cms.gui.controlx.search.SearchControl info.magnolia.cms.gui.controlx.search.SearchControlDefinition info.magnolia.cms.gui.controlx.search.SearchOnly info.magnolia.cms.gui.controlx.search.SelectSearchControlDefinition info.magnolia.cms.gui.controlx.search.SimpleSearchUtil | None | info.magnolia.cms.core info.magnolia.cms.core.search info.magnolia.cms.gui.controlx.impl info.magnolia.cms.gui.controlx.list info.magnolia.cms.gui.dialog info.magnolia.cms.gui.query info.magnolia.cms.util info.magnolia.context info.magnolia.objectfactory java.io java.lang java.text java.util javax.jcr javax.jcr.query org.apache.commons.collections org.apache.commons.collections.map org.apache.commons.lang org.apache.commons.lang.time org.slf4j |
Afferent Couplings | Efferent Couplings | Abstractness | Instability | Distance |
---|---|---|---|---|
0 | 6 | 0.0% | 100.0% | 0.0% |
Abstract Classes | Concrete Classes | Used by Packages | Uses Packages |
---|---|---|---|
None | info.magnolia.cms.gui.controlx.version.VersionListModel | None | info.magnolia.cms.core info.magnolia.cms.gui.controlx.list info.magnolia.cms.gui.query java.util javax.jcr javax.jcr.version |
Afferent Couplings | Efferent Couplings | Abstractness | Instability | Distance |
---|---|---|---|---|
2 | 23 | 12.0% | 92.0% | 4.0% |
Abstract Classes | Concrete Classes | Used by Packages | Uses Packages |
---|---|---|---|
info.magnolia.cms.gui.dialog.DialogControl info.magnolia.cms.gui.dialog.DialogControlImpl info.magnolia.cms.gui.dialog.UUIDDialogControl | info.magnolia.cms.gui.dialog.ControlsManager info.magnolia.cms.gui.dialog.Dialog info.magnolia.cms.gui.dialog.DialogBox info.magnolia.cms.gui.dialog.DialogButton info.magnolia.cms.gui.dialog.DialogButtonSet info.magnolia.cms.gui.dialog.DialogDate info.magnolia.cms.gui.dialog.DialogEdit info.magnolia.cms.gui.dialog.DialogEditCode info.magnolia.cms.gui.dialog.DialogEditWithButton info.magnolia.cms.gui.dialog.DialogEditWithCustomButtons info.magnolia.cms.gui.dialog.DialogFactory info.magnolia.cms.gui.dialog.DialogFile info.magnolia.cms.gui.dialog.DialogFreemarker info.magnolia.cms.gui.dialog.DialogHidden info.magnolia.cms.gui.dialog.DialogInclude info.magnolia.cms.gui.dialog.DialogLine info.magnolia.cms.gui.dialog.DialogLink info.magnolia.cms.gui.dialog.DialogMultiSelect info.magnolia.cms.gui.dialog.DialogPassword info.magnolia.cms.gui.dialog.DialogSelect info.magnolia.cms.gui.dialog.DialogStatic info.magnolia.cms.gui.dialog.DialogTab info.magnolia.cms.gui.dialog.DialogUUIDLink | info.magnolia.cms.gui.controlx.search info.magnolia.cms.gui.i18n | freemarker.template info.magnolia.cms.beans.config info.magnolia.cms.beans.runtime info.magnolia.cms.core info.magnolia.cms.gui.control info.magnolia.cms.gui.misc info.magnolia.cms.i18n info.magnolia.cms.security info.magnolia.cms.util info.magnolia.freemarker info.magnolia.objectfactory java.io java.lang java.util java.util.regex javax.jcr javax.servlet javax.servlet.http org.apache.commons.codec.binary org.apache.commons.lang org.apache.commons.lang.exception org.apache.commons.lang.time org.slf4j |
Afferent Couplings | Efferent Couplings | Abstractness | Instability | Distance |
---|---|---|---|---|
0 | 4 | 0.0% | 100.0% | 0.0% |
Abstract Classes | Concrete Classes | Used by Packages | Uses Packages |
---|---|---|---|
None | info.magnolia.cms.gui.fckeditor.FCKEditorTmpFiles | None | info.magnolia.cms.beans.runtime info.magnolia.context java.lang java.util |
Afferent Couplings | Efferent Couplings | Abstractness | Instability | Distance |
---|---|---|---|---|
1 | 11 | 33.0% | 92.0% | 25.0% |
Abstract Classes | Concrete Classes | Used by Packages | Uses Packages |
---|---|---|---|
info.magnolia.cms.gui.i18n.I18nAuthoringSupport | info.magnolia.cms.gui.i18n.DefaultI18nAuthoringSupport info.magnolia.cms.gui.i18n.I18nAuthoringSupport$Factory | info.magnolia.cms.gui.inline | info.magnolia.cms.core info.magnolia.cms.gui.control info.magnolia.cms.gui.dialog info.magnolia.cms.i18n info.magnolia.cms.util info.magnolia.context info.magnolia.link info.magnolia.objectfactory java.lang java.util org.apache.commons.lang |
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 | info.magnolia.cms.gui.inline.BarEdit info.magnolia.cms.gui.inline.BarMain info.magnolia.cms.gui.inline.BarMain$1 info.magnolia.cms.gui.inline.BarNew info.magnolia.cms.gui.inline.ButtonEdit | None | info.magnolia.cms.beans.config info.magnolia.cms.core info.magnolia.cms.gui.control info.magnolia.cms.gui.i18n info.magnolia.cms.gui.misc info.magnolia.cms.i18n info.magnolia.context java.io java.lang java.util javax.servlet.http javax.servlet.jsp org.apache.commons.lang |
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 | info.magnolia.cms.gui.misc.CssConstants info.magnolia.cms.gui.misc.Icon info.magnolia.cms.gui.misc.Sources info.magnolia.cms.gui.misc.Spacer | info.magnolia.cms.gui.dialog info.magnolia.cms.gui.inline | info.magnolia.cms.security info.magnolia.context java.lang java.util |
Afferent Couplings | Efferent Couplings | Abstractness | Instability | Distance |
---|---|---|---|---|
2 | 4 | 43.0% | 67.0% | 10.0% |
Abstract Classes | Concrete Classes | Used by Packages | Uses Packages |
---|---|---|---|
info.magnolia.cms.gui.query.AbstractExpressionImpl info.magnolia.cms.gui.query.SearchQueryExpression info.magnolia.cms.gui.query.SearchQueryParameter | info.magnolia.cms.gui.query.DateSearchQueryParameter info.magnolia.cms.gui.query.SearchQuery info.magnolia.cms.gui.query.SearchQueryOperator info.magnolia.cms.gui.query.StringSearchQueryParameter | info.magnolia.cms.gui.controlx.search info.magnolia.cms.gui.controlx.version | java.lang java.text java.util org.slf4j |
Package | Package Dependencies |
---|---|
info.magnolia.cms.gui.controlx | info.magnolia.cms.gui.controlx.impl info.magnolia.cms.gui.controlx |
info.magnolia.cms.gui.controlx.impl | info.magnolia.cms.gui.controlx info.magnolia.cms.gui.controlx.impl |
info.magnolia.cms.gui.controlx.list | info.magnolia.cms.gui.controlx info.magnolia.cms.gui.controlx.impl info.magnolia.cms.gui.controlx |
info.magnolia.cms.gui.controlx.search | info.magnolia.cms.gui.controlx.list info.magnolia.cms.gui.controlx info.magnolia.cms.gui.controlx.impl info.magnolia.cms.gui.controlx |
info.magnolia.cms.gui.controlx.version | info.magnolia.cms.gui.controlx.list info.magnolia.cms.gui.controlx info.magnolia.cms.gui.controlx.impl info.magnolia.cms.gui.controlx |
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. |