Architecture notes:
Architectural dependencies are calculated at the leaf package level in the web app.
See here for more on architecure diagrams.
|
Snapshot report
Settings
| Classpath: |
See Appendix 1 |
| Granularity: |
"Detail" - includes inner classes, methods and fields
|
| Externals: |
"Hide" - referenced items are not included
|
| Excludes: |
"On" - User-defined items have been excluded from the model
|
| Transformations: | None |
Size
| Jars (and/or classpath directories): | 3 |
| Packages (that contain classes): | 43 |
| Classes (outer): | 320 |
| Classes (all): | 354 |
| Classes (external): | 0 |
| |
| NI (Number of bytecode Instructions): | 75K |
| LOC (Non Comment Non Blank Lines Of Code): | ~32K |
|
Flat Tangles
| Level | #Items | #Tangles | #Tangled items | Biggest | Degree |
| Leaf package | 43 | 2 | 28 | 26 | 61% |
| Jar | 3 | 0 | 0 | 0 | 0% |
| Outer class | 320 | 8 | 156 | 119 | 38% |
Architecture
| #Diagrams: | 1 |
| #Violations: | 44 |
| Violation frequency: | 11% |
Note: Violations and violation frequency are calculated at the leaf package level.
Excessive Structural Complexity (XS)
| Cumulative XS: | 27,065 |
| Average XS: | 36% |
XS breakout by metric (and scope)
| Metric (and scope) | Threshold | #Offenders | Offenses (%) | XS contribution |
| Tangled (design)
| 0 | 7
of
16 | 44% | 55% |
| Fat (design)
| 120 | 0
of
16 | 0% | 0% |
| Fat (leaf package)
| 120 | 1
of
43 | 2% | 21% |
| Fat (class)
| 120 | 0
of
354 | 0% | 0% |
| Fat (method)
| 15 | 49
of
2,690 | 2% | 25% |
| Total | | 100% |
Tangled (design):
Top 5 (of 7)
| Item | Value |
org.apache.synapse.statistics | 34% |
org.apache.synapse.endpoints | 23% |
org.apache.synapse | 14% |
org.apache.synapse.config.xml | 11% |
org.apache.synapse.config | 7% |
Fat (design)
No items exceed the threshold for Fat at the design level.
Fat (leaf package):
1
| Item | Value |
org.apache.synapse.config.xml | 200 |
Fat (class)
No items exceed the threshold for Fat at the class level.
Fat (method):
Top 5 (of 49)
| Item | Value |
org.apache.synapse.mediators.transform.XSLTMediator.performXSLT(MessageContext, boolean, boolean):void | 65 |
org.apache.synapse.core.axis2.ProxyService.buildAxisService(SynapseConfiguration, AxisConfiguration):AxisService | 54 |
org.apache.synapse.mediators.xquery.XQueryMediator.performQuery(MessageContext, boolean, boolean):void | 50 |
org.apache.synapse.config.xml.ProxyServiceFactory.createProxy(OMElement):ProxyService | 41 |
org.apache.synapse.mediators.xquery.XQueryMediatorSerializer.serializeMediator(OMElement, Mediator):OMElement | 38 |
Items with highest XS - Top 10
(of 57)
| Item | Tangled | Fat | Size | XS |
org.apache.synapse | 14% | 41 | 75,272 | 10,271 |
org.apache.synapse.config.xml | | 200 | 14,022 | 5,608 |
org.apache.synapse.config.xml | 11% | 2 | 17,287 | 1,920 |
org.apache.synapse.config | 7% | 2 | 19,404 | 1,311 |
org.apache.synapse.endpoints | 23% | 5 | 2,378 | 544 |
org.apache.synapse.core.axis2.ProxyService.buildAxisService(SynapseConfiguration, AxisConfiguration):AxisService | | 54 | 729 | 526 |
org.apache.synapse.mediators.transform.XSLTMediator.performXSLT(MessageContext, boolean, boolean):void | | 65 | 676 | 520 |
org.apache.synapse.statistics | 34% | 2 | 1,226 | 422 |
org.apache.synapse.config.xml.ProxyServiceFactory.createProxy(OMElement):ProxyService | | 41 | 583 | 369 |
org.apache.synapse.transport.nhttp.ServerWorker.processGet():void | | 38 | 573 | 346 |
Appendix 1 - Project Classpath
I:\Sample Code\Opensrc\java\synapse\1.1.1\lib\activation-1.1.jar I:\Sample Code\Opensrc\java\synapse\1.1.1\lib\annogen-0.1.0.jar I:\Sample Code\Opensrc\java\synapse\1.1.1\lib\axiom-api-1.2.5.jar I:\Sample Code\Opensrc\java\synapse\1.1.1\lib\axiom-dom-1.2.5.jar I:\Sample Code\Opensrc\java\synapse\1.1.1\lib\axiom-impl-1.2.5.jar I:\Sample Code\Opensrc\java\synapse\1.1.1\lib\axis2-adb-1.3.jar I:\Sample Code\Opensrc\java\synapse\1.1.1\lib\axis2-adb-codegen-1.3.jar I:\Sample Code\Opensrc\java\synapse\1.1.1\lib\axis2-clustering-610782.jar I:\Sample Code\Opensrc\java\synapse\1.1.1\lib\axis2-codegen-1.3.jar I:\Sample Code\Opensrc\java\synapse\1.1.1\lib\axis2-java2wsdl-1.3.jar I:\Sample Code\Opensrc\java\synapse\1.1.1\lib\axis2-kernel-1.3.jar I:\Sample Code\Opensrc\java\synapse\1.1.1\lib\axis2-mtompolicy-1.3.jar I:\Sample Code\Opensrc\java\synapse\1.1.1\lib\axis2-saaj-1.3.jar I:\Sample Code\Opensrc\java\synapse\1.1.1\lib\axis2-saaj-api-1.3.jar I:\Sample Code\Opensrc\java\synapse\1.1.1\lib\axis2-xmlbeans-1.3.jar I:\Sample Code\Opensrc\java\synapse\1.1.1\lib\backport-util-concurrent-2.2.jar I:\Sample Code\Opensrc\java\synapse\1.1.1\lib\bcel-5.2.jar I:\Sample Code\Opensrc\java\synapse\1.1.1\lib\bcprov-jdk15-132.jar I:\Sample Code\Opensrc\java\synapse\1.1.1\lib\bsf-all-3.0-beta2.jar I:\Sample Code\Opensrc\java\synapse\1.1.1\lib\commons-codec-1.3.jar I:\Sample Code\Opensrc\java\synapse\1.1.1\lib\commons-collections-3.1.jar I:\Sample Code\Opensrc\java\synapse\1.1.1\lib\commons-dbcp-1.2.2.jar I:\Sample Code\Opensrc\java\synapse\1.1.1\lib\commons-fileupload-1.1.1.jar I:\Sample Code\Opensrc\java\synapse\1.1.1\lib\commons-httpclient-3.0.1.jar I:\Sample Code\Opensrc\java\synapse\1.1.1\lib\commons-logging-1.1.jar I:\Sample Code\Opensrc\java\synapse\1.1.1\lib\commons-net-1.4.1.jar I:\Sample Code\Opensrc\java\synapse\1.1.1\lib\commons-pool-1.3.jar I:\Sample Code\Opensrc\java\synapse\1.1.1\lib\commons-vfs-1.1-587797.jar I:\Sample Code\Opensrc\java\synapse\1.1.1\lib\endorsed\xercesImpl-2.8.1.jar I:\Sample Code\Opensrc\java\synapse\1.1.1\lib\endorsed\xml-apis-1.3.03.jar I:\Sample Code\Opensrc\java\synapse\1.1.1\lib\geronimo-jms_1.1_spec-1.1.jar I:\Sample Code\Opensrc\java\synapse\1.1.1\lib\groovy-all-1.0.jar I:\Sample Code\Opensrc\java\synapse\1.1.1\lib\httpcore-4.0-beta1.jar I:\Sample Code\Opensrc\java\synapse\1.1.1\lib\httpcore-nio-4.0-beta1.jar I:\Sample Code\Opensrc\java\synapse\1.1.1\lib\jakarta-regexp-1.4.jar I:\Sample Code\Opensrc\java\synapse\1.1.1\lib\java-cup-0.0.jar I:\Sample Code\Opensrc\java\synapse\1.1.1\lib\jaxen-1.1.1.jar I:\Sample Code\Opensrc\java\synapse\1.1.1\lib\JLex-0.0.jar I:\Sample Code\Opensrc\java\synapse\1.1.1\lib\js-1.6R5.jar I:\Sample Code\Opensrc\java\synapse\1.1.1\lib\jsch-0.1.31.jar I:\Sample Code\Opensrc\java\synapse\1.1.1\lib\log4j-1.2.13.jar I:\Sample Code\Opensrc\java\synapse\1.1.1\lib\mail-1.4.jar I:\Sample Code\Opensrc\java\synapse\1.1.1\lib\neethi-2.0.2.jar I:\Sample Code\Opensrc\java\synapse\1.1.1\lib\opensaml-1.1.jar I:\Sample Code\Opensrc\java\synapse\1.1.1\lib\oro-2.0.8.jar I:\Sample Code\Opensrc\java\synapse\1.1.1\lib\patches\AxisService-patch.jar I:\Sample Code\Opensrc\java\synapse\1.1.1\lib\quartz-1.6.0.jar I:\Sample Code\Opensrc\java\synapse\1.1.1\lib\rampart-core-1.3.jar I:\Sample Code\Opensrc\java\synapse\1.1.1\lib\rampart-policy-1.3.jar I:\Sample Code\Opensrc\java\synapse\1.1.1\lib\rampart-trust-1.3.jar I:\Sample Code\Opensrc\java\synapse\1.1.1\lib\sandesha2-core-1.3.jar I:\Sample Code\Opensrc\java\synapse\1.1.1\lib\sandesha2-policy-1.3.jar I:\Sample Code\Opensrc\java\synapse\1.1.1\lib\saxon-8.9.jar I:\Sample Code\Opensrc\java\synapse\1.1.1\lib\saxon-dom-8.9.jar I:\Sample Code\Opensrc\java\synapse\1.1.1\lib\saxon-xqj-8.9.jar I:\Sample Code\Opensrc\java\synapse\1.1.1\lib\spring-aop-1.2.8.jar I:\Sample Code\Opensrc\java\synapse\1.1.1\lib\spring-beans-1.2.8.jar I:\Sample Code\Opensrc\java\synapse\1.1.1\lib\spring-context-1.2.8.jar I:\Sample Code\Opensrc\java\synapse\1.1.1\lib\spring-core-1.2.8.jar I:\Sample Code\Opensrc\java\synapse\1.1.1\lib\stax-api-1.0.1.jar I:\Sample Code\Opensrc\java\synapse\1.1.1\lib\synapse-core-1.1.1.jar I:\Sample Code\Opensrc\java\synapse\1.1.1\lib\synapse-extensions-1.1.1.jar I:\Sample Code\Opensrc\java\synapse\1.1.1\lib\synapse-samples-1.1.1.jar I:\Sample Code\Opensrc\java\synapse\1.1.1\lib\synapse-transports-1.1.1.jar I:\Sample Code\Opensrc\java\synapse\1.1.1\lib\truezip-6.6.jar I:\Sample Code\Opensrc\java\synapse\1.1.1\lib\woden-1.0-incubating-M7b.jar I:\Sample Code\Opensrc\java\synapse\1.1.1\lib\wrapper-3.2.3.jar I:\Sample Code\Opensrc\java\synapse\1.1.1\lib\wsdl4j-1.6.2.jar I:\Sample Code\Opensrc\java\synapse\1.1.1\lib\wso2caching-core-1.6.jar I:\Sample Code\Opensrc\java\synapse\1.1.1\lib\wso2throttle-core-1.6.jar I:\Sample Code\Opensrc\java\synapse\1.1.1\lib\wss4j-1.5.3.jar I:\Sample Code\Opensrc\java\synapse\1.1.1\lib\wstx-asl-3.2.1.jar I:\Sample Code\Opensrc\java\synapse\1.1.1\lib\xalan-2.7.0.jar I:\Sample Code\Opensrc\java\synapse\1.1.1\lib\xbean-2.2.0.jar I:\Sample Code\Opensrc\java\synapse\1.1.1\lib\XmlSchema-1.3.2-591227.jar I:\Sample Code\Opensrc\java\synapse\1.1.1\lib\xmlsec-1.4.0.jar
|