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.apache.shiro 2 1 1 11 4 50.0% 27.000002% 23.0% 1
org.apache.shiro.aop 7 1 6 1 5 86.0% 83.0% 69.0% 1
org.apache.shiro.authc 24 13 11 10 8 46.0% 44.0% 10.0% 1
org.apache.shiro.authc.credential 14 11 3 2 8 21.0% 80.0% 1.0% 1
org.apache.shiro.authc.pam 7 5 2 1 7 29.0% 88.0% 16.0% 1
org.apache.shiro.authz 10 7 3 12 7 30.000002% 37.0% 33.0% 1
org.apache.shiro.authz.annotation 6 1 5 1 2 83.0% 67.0% 50.0% 1
org.apache.shiro.authz.aop 14 10 4 0 7 29.0% 100.0% 29.0% 1
org.apache.shiro.authz.permission 9 5 4 3 6 44.0% 67.0% 11.0% 1
org.apache.shiro.concurrent 3 3 0 0 5 0.0% 100.0% 0.0% 1
org.apache.shiro.config 2 1 1 2 8 50.0% 80.0% 30.000002% 1
org.apache.shiro.dao 2 1 1 1 2 50.0% 67.0% 17.0% 1
org.apache.shiro.env 5 3 2 0 6 40.0% 100.0% 40.0% 1
org.apache.shiro.jndi 8 7 1 1 5 12.0% 83.0% 4.0% 1
org.apache.shiro.ldap 1 1 0 1 2 0.0% 67.0% 33.0% 1
org.apache.shiro.mgt 15 4 11 6 20 73.0% 77.0% 50.0% 1
org.apache.shiro.realm 6 1 5 8 12 83.0% 60.000004% 43.0% 1
org.apache.shiro.realm.activedirectory 1 1 0 0 10 0.0% 100.0% 0.0% 1
org.apache.shiro.realm.jdbc 3 3 0 0 11 0.0% 100.0% 0.0% 1
org.apache.shiro.realm.jndi 1 1 0 0 5 0.0% 100.0% 0.0% 1
org.apache.shiro.realm.ldap 7 5 2 1 13 29.0% 93.0% 21.0% 1
org.apache.shiro.realm.text 3 3 0 1 13 0.0% 93.0% 7.0% 1
org.apache.shiro.session 9 7 2 5 4 22.0% 44.0% 33.0% 1
org.apache.shiro.session.mgt 20 9 11 3 13 55.0% 81.0% 36.0% 1
org.apache.shiro.session.mgt.eis 9 5 4 1 10 44.0% 91.0% 35.0% 1
org.apache.shiro.subject 9 4 5 14 11 56.0% 44.0% 0.0% 1
org.apache.shiro.subject.support 8 8 0 2 13 0.0% 87.0% 13.0% 1
org.apache.shiro.util 13 8 5 18 9 38.0% 33.0% 28.0% 1

Packages

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

org.apache.shiro

Afferent Couplings Efferent Couplings Abstractness Instability Distance
11 4 50.0% 27.000002% 23.0%
Abstract Classes Concrete Classes Used by Packages Uses Packages
org.apache.shiro.SecurityUtils
org.apache.shiro.UnavailableSecurityManagerException
org.apache.shiro.aop
org.apache.shiro.authc
org.apache.shiro.authz
org.apache.shiro.authz.permission
org.apache.shiro.concurrent
org.apache.shiro.dao
org.apache.shiro.env
org.apache.shiro.realm.text
org.apache.shiro.session
org.apache.shiro.subject
org.apache.shiro.subject.support
java.lang
org.apache.shiro.mgt
org.apache.shiro.subject
org.apache.shiro.util

org.apache.shiro.aop

Afferent Couplings Efferent Couplings Abstractness Instability Distance
1 5 86.0% 83.0% 69.0%
Abstract Classes Concrete Classes Used by Packages Uses Packages
org.apache.shiro.aop.AnnotationHandler
org.apache.shiro.aop.AnnotationMethodInterceptor
org.apache.shiro.aop.AnnotationResolver
org.apache.shiro.aop.MethodInterceptor
org.apache.shiro.aop.MethodInterceptorSupport
org.apache.shiro.aop.MethodInvocation
org.apache.shiro.aop.DefaultAnnotationResolver
org.apache.shiro.authz.aop
java.lang
java.lang.annotation
java.lang.reflect
org.apache.shiro
org.apache.shiro.subject

org.apache.shiro.authc

Afferent Couplings Efferent Couplings Abstractness Instability Distance
10 8 46.0% 44.0% 10.0%
Abstract Classes Concrete Classes Used by Packages Uses Packages
org.apache.shiro.authc.AbstractAuthenticator
org.apache.shiro.authc.Account
org.apache.shiro.authc.AuthenticationInfo
org.apache.shiro.authc.AuthenticationListener
org.apache.shiro.authc.AuthenticationToken
org.apache.shiro.authc.Authenticator
org.apache.shiro.authc.HostAuthenticationToken
org.apache.shiro.authc.LogoutAware
org.apache.shiro.authc.MergableAuthenticationInfo
org.apache.shiro.authc.RememberMeAuthenticationToken
org.apache.shiro.authc.SaltedAuthenticationInfo
org.apache.shiro.authc.AccountException
org.apache.shiro.authc.AuthenticationException
org.apache.shiro.authc.ConcurrentAccessException
org.apache.shiro.authc.CredentialsException
org.apache.shiro.authc.DisabledAccountException
org.apache.shiro.authc.ExcessiveAttemptsException
org.apache.shiro.authc.ExpiredCredentialsException
org.apache.shiro.authc.IncorrectCredentialsException
org.apache.shiro.authc.LockedAccountException
org.apache.shiro.authc.SimpleAccount
org.apache.shiro.authc.SimpleAuthenticationInfo
org.apache.shiro.authc.UnknownAccountException
org.apache.shiro.authc.UsernamePasswordToken
org.apache.shiro.authc.credential
org.apache.shiro.authc.pam
org.apache.shiro.mgt
org.apache.shiro.realm
org.apache.shiro.realm.activedirectory
org.apache.shiro.realm.jdbc
org.apache.shiro.realm.ldap
org.apache.shiro.realm.text
org.apache.shiro.subject
org.apache.shiro.subject.support
java.io
java.lang
java.util
org.apache.shiro
org.apache.shiro.authz
org.apache.shiro.subject
org.apache.shiro.util
org.slf4j

org.apache.shiro.authc.credential

Afferent Couplings Efferent Couplings Abstractness Instability Distance
2 8 21.0% 80.0% 1.0%
Abstract Classes Concrete Classes Used by Packages Uses Packages
org.apache.shiro.authc.credential.CredentialsMatcher
org.apache.shiro.authc.credential.HashingPasswordService
org.apache.shiro.authc.credential.PasswordService
org.apache.shiro.authc.credential.AllowAllCredentialsMatcher
org.apache.shiro.authc.credential.DefaultPasswordService
org.apache.shiro.authc.credential.HashedCredentialsMatcher
org.apache.shiro.authc.credential.Md2CredentialsMatcher
org.apache.shiro.authc.credential.Md5CredentialsMatcher
org.apache.shiro.authc.credential.PasswordMatcher
org.apache.shiro.authc.credential.Sha1CredentialsMatcher
org.apache.shiro.authc.credential.Sha256CredentialsMatcher
org.apache.shiro.authc.credential.Sha384CredentialsMatcher
org.apache.shiro.authc.credential.Sha512CredentialsMatcher
org.apache.shiro.authc.credential.SimpleCredentialsMatcher
org.apache.shiro.realm
org.apache.shiro.realm.ldap
java.lang
java.security
org.apache.shiro.authc
org.apache.shiro.codec
org.apache.shiro.crypto.hash
org.apache.shiro.crypto.hash.format
org.apache.shiro.util
org.slf4j

org.apache.shiro.authc.pam

Afferent Couplings Efferent Couplings Abstractness Instability Distance
1 7 29.0% 88.0% 16.0%
Abstract Classes Concrete Classes Used by Packages Uses Packages
org.apache.shiro.authc.pam.AbstractAuthenticationStrategy
org.apache.shiro.authc.pam.AuthenticationStrategy
org.apache.shiro.authc.pam.AllSuccessfulStrategy
org.apache.shiro.authc.pam.AtLeastOneSuccessfulStrategy
org.apache.shiro.authc.pam.FirstSuccessfulStrategy
org.apache.shiro.authc.pam.ModularRealmAuthenticator
org.apache.shiro.authc.pam.UnsupportedTokenException
org.apache.shiro.mgt
java.lang
java.util
org.apache.shiro.authc
org.apache.shiro.realm
org.apache.shiro.subject
org.apache.shiro.util
org.slf4j

org.apache.shiro.authz

Afferent Couplings Efferent Couplings Abstractness Instability Distance
12 7 30.000002% 37.0% 33.0%
Abstract Classes Concrete Classes Used by Packages Uses Packages
org.apache.shiro.authz.AuthorizationInfo
org.apache.shiro.authz.Authorizer
org.apache.shiro.authz.Permission
org.apache.shiro.authz.AuthorizationException
org.apache.shiro.authz.HostUnauthorizedException
org.apache.shiro.authz.ModularRealmAuthorizer
org.apache.shiro.authz.SimpleAuthorizationInfo
org.apache.shiro.authz.SimpleRole
org.apache.shiro.authz.UnauthenticatedException
org.apache.shiro.authz.UnauthorizedException
org.apache.shiro.authc
org.apache.shiro.authz.aop
org.apache.shiro.authz.permission
org.apache.shiro.mgt
org.apache.shiro.realm
org.apache.shiro.realm.activedirectory
org.apache.shiro.realm.jdbc
org.apache.shiro.realm.ldap
org.apache.shiro.realm.text
org.apache.shiro.session.mgt
org.apache.shiro.subject
org.apache.shiro.subject.support
java.io
java.lang
java.util
org.apache.shiro
org.apache.shiro.authz.permission
org.apache.shiro.realm
org.apache.shiro.subject

org.apache.shiro.authz.annotation

Afferent Couplings Efferent Couplings Abstractness Instability Distance
1 2 83.0% 67.0% 50.0%
Abstract Classes Concrete Classes Used by Packages Uses Packages
org.apache.shiro.authz.annotation.RequiresAuthentication
org.apache.shiro.authz.annotation.RequiresGuest
org.apache.shiro.authz.annotation.RequiresPermissions
org.apache.shiro.authz.annotation.RequiresRoles
org.apache.shiro.authz.annotation.RequiresUser
org.apache.shiro.authz.annotation.Logical
org.apache.shiro.authz.aop
java.lang
java.lang.annotation

org.apache.shiro.authz.aop

Afferent Couplings Efferent Couplings Abstractness Instability Distance
0 7 29.0% 100.0% 29.0%
Abstract Classes Concrete Classes Used by Packages Uses Packages
org.apache.shiro.authz.aop.AnnotationsAuthorizingMethodInterceptor
org.apache.shiro.authz.aop.AuthorizingAnnotationHandler
org.apache.shiro.authz.aop.AuthorizingAnnotationMethodInterceptor
org.apache.shiro.authz.aop.AuthorizingMethodInterceptor
org.apache.shiro.authz.aop.AuthenticatedAnnotationHandler
org.apache.shiro.authz.aop.AuthenticatedAnnotationMethodInterceptor
org.apache.shiro.authz.aop.GuestAnnotationHandler
org.apache.shiro.authz.aop.GuestAnnotationMethodInterceptor
org.apache.shiro.authz.aop.PermissionAnnotationHandler
org.apache.shiro.authz.aop.PermissionAnnotationMethodInterceptor
org.apache.shiro.authz.aop.RoleAnnotationHandler
org.apache.shiro.authz.aop.RoleAnnotationMethodInterceptor
org.apache.shiro.authz.aop.UserAnnotationHandler
org.apache.shiro.authz.aop.UserAnnotationMethodInterceptor
None java.lang
java.lang.annotation
java.util
org.apache.shiro.aop
org.apache.shiro.authz
org.apache.shiro.authz.annotation
org.apache.shiro.subject

org.apache.shiro.authz.permission

Afferent Couplings Efferent Couplings Abstractness Instability Distance
3 6 44.0% 67.0% 11.0%
Abstract Classes Concrete Classes Used by Packages Uses Packages
org.apache.shiro.authz.permission.PermissionResolver
org.apache.shiro.authz.permission.PermissionResolverAware
org.apache.shiro.authz.permission.RolePermissionResolver
org.apache.shiro.authz.permission.RolePermissionResolverAware
org.apache.shiro.authz.permission.AllPermission
org.apache.shiro.authz.permission.DomainPermission
org.apache.shiro.authz.permission.InvalidPermissionStringException
org.apache.shiro.authz.permission.WildcardPermission
org.apache.shiro.authz.permission.WildcardPermissionResolver
org.apache.shiro.authz
org.apache.shiro.realm
org.apache.shiro.util
java.io
java.lang
java.util
org.apache.shiro
org.apache.shiro.authz
org.apache.shiro.util

org.apache.shiro.concurrent

Afferent Couplings Efferent Couplings Abstractness Instability Distance
0 5 0.0% 100.0% 0.0%
Abstract Classes Concrete Classes Used by Packages Uses Packages
None org.apache.shiro.concurrent.SubjectAwareExecutor
org.apache.shiro.concurrent.SubjectAwareExecutorService
org.apache.shiro.concurrent.SubjectAwareScheduledExecutorService
None java.lang
java.util
java.util.concurrent
org.apache.shiro
org.apache.shiro.subject

org.apache.shiro.config

Afferent Couplings Efferent Couplings Abstractness Instability Distance
2 8 50.0% 80.0% 30.000002%
Abstract Classes Concrete Classes Used by Packages Uses Packages
org.apache.shiro.config.IniFactorySupport
org.apache.shiro.config.IniSecurityManagerFactory
org.apache.shiro.realm.jdbc
org.apache.shiro.realm.text
java.lang
java.util
org.apache.shiro.io
org.apache.shiro.mgt
org.apache.shiro.realm
org.apache.shiro.realm.text
org.apache.shiro.util
org.slf4j

org.apache.shiro.dao

Afferent Couplings Efferent Couplings Abstractness Instability Distance
1 2 50.0% 67.0% 17.0%
Abstract Classes Concrete Classes Used by Packages Uses Packages
org.apache.shiro.dao.DataAccessException
org.apache.shiro.dao.InvalidResourceUsageException
org.apache.shiro.ldap
java.lang
org.apache.shiro

org.apache.shiro.env

Afferent Couplings Efferent Couplings Abstractness Instability Distance
0 6 40.0% 100.0% 40.0%
Abstract Classes Concrete Classes Used by Packages Uses Packages
org.apache.shiro.env.Environment
org.apache.shiro.env.NamedObjectEnvironment
org.apache.shiro.env.DefaultEnvironment
org.apache.shiro.env.EnvironmentException
org.apache.shiro.env.RequiredTypeException
None java.lang
java.util
java.util.concurrent
org.apache.shiro
org.apache.shiro.mgt
org.apache.shiro.util

org.apache.shiro.jndi

Afferent Couplings Efferent Couplings Abstractness Instability Distance
1 5 12.0% 83.0% 4.0%
Abstract Classes Concrete Classes Used by Packages Uses Packages
org.apache.shiro.jndi.JndiCallback
org.apache.shiro.jndi.JndiLocator
org.apache.shiro.jndi.JndiObjectFactory
org.apache.shiro.jndi.JndiTemplate
org.apache.shiro.jndi.JndiTemplate$1
org.apache.shiro.jndi.JndiTemplate$2
org.apache.shiro.jndi.JndiTemplate$3
org.apache.shiro.jndi.JndiTemplate$4
org.apache.shiro.realm.jndi
java.lang
java.util
javax.naming
org.apache.shiro.util
org.slf4j

org.apache.shiro.ldap

Afferent Couplings Efferent Couplings Abstractness Instability Distance
1 2 0.0% 67.0% 33.0%
Abstract Classes Concrete Classes Used by Packages Uses Packages
None org.apache.shiro.ldap.UnsupportedAuthenticationMechanismException
org.apache.shiro.realm.ldap
java.lang
org.apache.shiro.dao

org.apache.shiro.mgt

Afferent Couplings Efferent Couplings Abstractness Instability Distance
6 20 73.0% 77.0% 50.0%
Abstract Classes Concrete Classes Used by Packages Uses Packages
org.apache.shiro.mgt.AbstractRememberMeManager
org.apache.shiro.mgt.AuthenticatingSecurityManager
org.apache.shiro.mgt.AuthorizingSecurityManager
org.apache.shiro.mgt.CachingSecurityManager
org.apache.shiro.mgt.RealmSecurityManager
org.apache.shiro.mgt.RememberMeManager
org.apache.shiro.mgt.SecurityManager
org.apache.shiro.mgt.SessionStorageEvaluator
org.apache.shiro.mgt.SessionsSecurityManager
org.apache.shiro.mgt.SubjectDAO
org.apache.shiro.mgt.SubjectFactory
org.apache.shiro.mgt.DefaultSecurityManager
org.apache.shiro.mgt.DefaultSessionStorageEvaluator
org.apache.shiro.mgt.DefaultSubjectDAO
org.apache.shiro.mgt.DefaultSubjectFactory
org.apache.shiro
org.apache.shiro.config
org.apache.shiro.env
org.apache.shiro.subject
org.apache.shiro.subject.support
org.apache.shiro.util
java.io
java.lang
java.lang.reflect
java.security
java.util
org.apache.shiro.authc
org.apache.shiro.authc.pam
org.apache.shiro.authz
org.apache.shiro.cache
org.apache.shiro.crypto
org.apache.shiro.event
org.apache.shiro.event.support
org.apache.shiro.io
org.apache.shiro.realm
org.apache.shiro.session
org.apache.shiro.session.mgt
org.apache.shiro.subject
org.apache.shiro.subject.support
org.apache.shiro.util
org.slf4j

org.apache.shiro.realm

Afferent Couplings Efferent Couplings Abstractness Instability Distance
8 12 83.0% 60.000004% 43.0%
Abstract Classes Concrete Classes Used by Packages Uses Packages
org.apache.shiro.realm.AuthenticatingRealm
org.apache.shiro.realm.AuthorizingRealm
org.apache.shiro.realm.CachingRealm
org.apache.shiro.realm.Realm
org.apache.shiro.realm.RealmFactory
org.apache.shiro.realm.SimpleAccountRealm
org.apache.shiro.authc.pam
org.apache.shiro.authz
org.apache.shiro.config
org.apache.shiro.mgt
org.apache.shiro.realm.jdbc
org.apache.shiro.realm.jndi
org.apache.shiro.realm.ldap
org.apache.shiro.realm.text
java.lang
java.util
java.util.concurrent.atomic
java.util.concurrent.locks
org.apache.shiro.authc
org.apache.shiro.authc.credential
org.apache.shiro.authz
org.apache.shiro.authz.permission
org.apache.shiro.cache
org.apache.shiro.subject
org.apache.shiro.util
org.slf4j

org.apache.shiro.realm.activedirectory

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.apache.shiro.realm.activedirectory.ActiveDirectoryRealm
None java.lang
java.util
javax.naming
javax.naming.directory
javax.naming.ldap
org.apache.shiro.authc
org.apache.shiro.authz
org.apache.shiro.realm.ldap
org.apache.shiro.subject
org.slf4j

org.apache.shiro.realm.jdbc

Afferent Couplings Efferent Couplings Abstractness Instability Distance
0 11 0.0% 100.0% 0.0%
Abstract Classes Concrete Classes Used by Packages Uses Packages
None org.apache.shiro.realm.jdbc.JdbcRealm
org.apache.shiro.realm.jdbc.JdbcRealm$1
org.apache.shiro.realm.jdbc.JdbcRealm$SaltStyle
None java.lang
java.sql
java.util
javax.sql
org.apache.shiro.authc
org.apache.shiro.authz
org.apache.shiro.config
org.apache.shiro.realm
org.apache.shiro.subject
org.apache.shiro.util
org.slf4j

org.apache.shiro.realm.jndi

Afferent Couplings Efferent Couplings Abstractness Instability Distance
0 5 0.0% 100.0% 0.0%
Abstract Classes Concrete Classes Used by Packages Uses Packages
None org.apache.shiro.realm.jndi.JndiRealmFactory
None java.lang
java.util
org.apache.shiro.jndi
org.apache.shiro.realm
org.apache.shiro.util

org.apache.shiro.realm.ldap

Afferent Couplings Efferent Couplings Abstractness Instability Distance
1 13 29.0% 93.0% 21.0%
Abstract Classes Concrete Classes Used by Packages Uses Packages
org.apache.shiro.realm.ldap.AbstractLdapRealm
org.apache.shiro.realm.ldap.LdapContextFactory
org.apache.shiro.realm.ldap.DefaultLdapContextFactory
org.apache.shiro.realm.ldap.DefaultLdapRealm
org.apache.shiro.realm.ldap.JndiLdapContextFactory
org.apache.shiro.realm.ldap.JndiLdapRealm
org.apache.shiro.realm.ldap.LdapUtils
org.apache.shiro.realm.activedirectory
java.lang
java.util
javax.naming
javax.naming.directory
javax.naming.ldap
org.apache.shiro.authc
org.apache.shiro.authc.credential
org.apache.shiro.authz
org.apache.shiro.ldap
org.apache.shiro.realm
org.apache.shiro.subject
org.apache.shiro.util
org.slf4j

org.apache.shiro.realm.text

Afferent Couplings Efferent Couplings Abstractness Instability Distance
1 13 0.0% 93.0% 7.0%
Abstract Classes Concrete Classes Used by Packages Uses Packages
None org.apache.shiro.realm.text.IniRealm
org.apache.shiro.realm.text.PropertiesRealm
org.apache.shiro.realm.text.TextConfigurationRealm
org.apache.shiro.config
java.io
java.lang
java.text
java.util
java.util.concurrent
org.apache.shiro
org.apache.shiro.authc
org.apache.shiro.authz
org.apache.shiro.config
org.apache.shiro.io
org.apache.shiro.realm
org.apache.shiro.util
org.slf4j

org.apache.shiro.session

Afferent Couplings Efferent Couplings Abstractness Instability Distance
5 4 22.0% 44.0% 33.0%
Abstract Classes Concrete Classes Used by Packages Uses Packages
org.apache.shiro.session.Session
org.apache.shiro.session.SessionListener
org.apache.shiro.session.ExpiredSessionException
org.apache.shiro.session.InvalidSessionException
org.apache.shiro.session.ProxiedSession
org.apache.shiro.session.SessionException
org.apache.shiro.session.SessionListenerAdapter
org.apache.shiro.session.StoppedSessionException
org.apache.shiro.session.UnknownSessionException
org.apache.shiro.mgt
org.apache.shiro.session.mgt
org.apache.shiro.session.mgt.eis
org.apache.shiro.subject
org.apache.shiro.subject.support
java.io
java.lang
java.util
org.apache.shiro

org.apache.shiro.session.mgt

Afferent Couplings Efferent Couplings Abstractness Instability Distance
3 13 55.0% 81.0% 36.0%
Abstract Classes Concrete Classes Used by Packages Uses Packages
org.apache.shiro.session.mgt.AbstractNativeSessionManager
org.apache.shiro.session.mgt.AbstractSessionManager
org.apache.shiro.session.mgt.AbstractValidatingSessionManager
org.apache.shiro.session.mgt.NativeSessionManager
org.apache.shiro.session.mgt.SessionContext
org.apache.shiro.session.mgt.SessionFactory
org.apache.shiro.session.mgt.SessionKey
org.apache.shiro.session.mgt.SessionManager
org.apache.shiro.session.mgt.SessionValidationScheduler
org.apache.shiro.session.mgt.ValidatingSession
org.apache.shiro.session.mgt.ValidatingSessionManager
org.apache.shiro.session.mgt.DefaultSessionContext
org.apache.shiro.session.mgt.DefaultSessionKey
org.apache.shiro.session.mgt.DefaultSessionManager
org.apache.shiro.session.mgt.DelegatingSession
org.apache.shiro.session.mgt.ExecutorServiceSessionValidationScheduler
org.apache.shiro.session.mgt.ExecutorServiceSessionValidationScheduler$1
org.apache.shiro.session.mgt.ImmutableProxiedSession
org.apache.shiro.session.mgt.SimpleSession
org.apache.shiro.session.mgt.SimpleSessionFactory
org.apache.shiro.mgt
org.apache.shiro.session.mgt.eis
org.apache.shiro.subject.support
java.io
java.lang
java.text
java.util
java.util.concurrent
java.util.concurrent.atomic
org.apache.shiro.authz
org.apache.shiro.cache
org.apache.shiro.event
org.apache.shiro.session
org.apache.shiro.session.mgt.eis
org.apache.shiro.util
org.slf4j

org.apache.shiro.session.mgt.eis

Afferent Couplings Efferent Couplings Abstractness Instability Distance
1 10 44.0% 91.0% 35.0%
Abstract Classes Concrete Classes Used by Packages Uses Packages
org.apache.shiro.session.mgt.eis.AbstractSessionDAO
org.apache.shiro.session.mgt.eis.CachingSessionDAO
org.apache.shiro.session.mgt.eis.SessionDAO
org.apache.shiro.session.mgt.eis.SessionIdGenerator
org.apache.shiro.session.mgt.eis.EnterpriseCacheSessionDAO
org.apache.shiro.session.mgt.eis.EnterpriseCacheSessionDAO$1
org.apache.shiro.session.mgt.eis.JavaUuidSessionIdGenerator
org.apache.shiro.session.mgt.eis.MemorySessionDAO
org.apache.shiro.session.mgt.eis.RandomSessionIdGenerator
org.apache.shiro.session.mgt
java.io
java.lang
java.security
java.util
java.util.concurrent
org.apache.shiro.cache
org.apache.shiro.session
org.apache.shiro.session.mgt
org.apache.shiro.util
org.slf4j

org.apache.shiro.subject

Afferent Couplings Efferent Couplings Abstractness Instability Distance
14 11 56.0% 44.0% 0.0%
Abstract Classes Concrete Classes Used by Packages Uses Packages
org.apache.shiro.subject.MutablePrincipalCollection
org.apache.shiro.subject.PrincipalCollection
org.apache.shiro.subject.PrincipalMap
org.apache.shiro.subject.Subject
org.apache.shiro.subject.SubjectContext
org.apache.shiro.subject.ExecutionException
org.apache.shiro.subject.SimplePrincipalCollection
org.apache.shiro.subject.SimplePrincipalMap
org.apache.shiro.subject.Subject$Builder
org.apache.shiro
org.apache.shiro.aop
org.apache.shiro.authc
org.apache.shiro.authc.pam
org.apache.shiro.authz
org.apache.shiro.authz.aop
org.apache.shiro.concurrent
org.apache.shiro.mgt
org.apache.shiro.realm
org.apache.shiro.realm.activedirectory
org.apache.shiro.realm.jdbc
org.apache.shiro.realm.ldap
org.apache.shiro.subject.support
org.apache.shiro.util
java.io
java.lang
java.util
java.util.concurrent
org.apache.shiro
org.apache.shiro.authc
org.apache.shiro.authz
org.apache.shiro.mgt
org.apache.shiro.session
org.apache.shiro.subject.support
org.apache.shiro.util

org.apache.shiro.subject.support

Afferent Couplings Efferent Couplings Abstractness Instability Distance
2 13 0.0% 87.0% 13.0%
Abstract Classes Concrete Classes Used by Packages Uses Packages
None org.apache.shiro.subject.support.DefaultSubjectContext
org.apache.shiro.subject.support.DelegatingSubject
org.apache.shiro.subject.support.DelegatingSubject$1
org.apache.shiro.subject.support.DelegatingSubject$StoppingAwareProxiedSession
org.apache.shiro.subject.support.DisabledSessionException
org.apache.shiro.subject.support.SubjectCallable
org.apache.shiro.subject.support.SubjectRunnable
org.apache.shiro.subject.support.SubjectThreadState
org.apache.shiro.mgt
org.apache.shiro.subject
java.io
java.lang
java.util
java.util.concurrent
org.apache.shiro
org.apache.shiro.authc
org.apache.shiro.authz
org.apache.shiro.mgt
org.apache.shiro.session
org.apache.shiro.session.mgt
org.apache.shiro.subject
org.apache.shiro.util
org.slf4j

org.apache.shiro.util

Afferent Couplings Efferent Couplings Abstractness Instability Distance
18 9 38.0% 33.0% 28.0%
Abstract Classes Concrete Classes Used by Packages Uses Packages
org.apache.shiro.util.AbstractFactory
org.apache.shiro.util.JavaEnvironment
org.apache.shiro.util.PatternMatcher
org.apache.shiro.util.ThreadContext
org.apache.shiro.util.ThreadState
org.apache.shiro.util.AntPathMatcher
org.apache.shiro.util.CollectionUtils
org.apache.shiro.util.JdbcUtils
org.apache.shiro.util.MapContext
org.apache.shiro.util.PermissionUtils
org.apache.shiro.util.RegExPatternMatcher
org.apache.shiro.util.ThreadContext$1
org.apache.shiro.util.ThreadContext$InheritableThreadLocalMap
org.apache.shiro
org.apache.shiro.authc
org.apache.shiro.authc.credential
org.apache.shiro.authc.pam
org.apache.shiro.authz.permission
org.apache.shiro.config
org.apache.shiro.env
org.apache.shiro.jndi
org.apache.shiro.mgt
org.apache.shiro.realm
org.apache.shiro.realm.jdbc
org.apache.shiro.realm.jndi
org.apache.shiro.realm.ldap
org.apache.shiro.realm.text
org.apache.shiro.session.mgt
org.apache.shiro.session.mgt.eis
org.apache.shiro.subject
org.apache.shiro.subject.support
java.io
java.lang
java.sql
java.util
java.util.regex
org.apache.shiro.authz.permission
org.apache.shiro.mgt
org.apache.shiro.subject
org.slf4j

Cycles

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

Package Package Dependencies
org.apache.shiro org.apache.shiro.mgt
org.apache.shiro.authc
org.apache.shiro.subject
org.apache.shiro
org.apache.shiro.aop org.apache.shiro
org.apache.shiro.mgt
org.apache.shiro.authc
org.apache.shiro.subject
org.apache.shiro
org.apache.shiro.authc org.apache.shiro.subject
org.apache.shiro
org.apache.shiro.mgt
org.apache.shiro.authc
org.apache.shiro.authc.credential org.apache.shiro.authc
org.apache.shiro.subject
org.apache.shiro
org.apache.shiro.mgt
org.apache.shiro.authc
org.apache.shiro.authc.pam org.apache.shiro.authc
org.apache.shiro.subject
org.apache.shiro
org.apache.shiro.mgt
org.apache.shiro.authc
org.apache.shiro.authz org.apache.shiro
org.apache.shiro.mgt
org.apache.shiro.authc
org.apache.shiro.subject
org.apache.shiro
org.apache.shiro.authz.aop org.apache.shiro.authz
org.apache.shiro
org.apache.shiro.mgt
org.apache.shiro.authc
org.apache.shiro.subject
org.apache.shiro
org.apache.shiro.authz.permission org.apache.shiro.authz
org.apache.shiro
org.apache.shiro.mgt
org.apache.shiro.authc
org.apache.shiro.subject
org.apache.shiro
org.apache.shiro.concurrent org.apache.shiro
org.apache.shiro.mgt
org.apache.shiro.authc
org.apache.shiro.subject
org.apache.shiro
org.apache.shiro.config org.apache.shiro.util
org.apache.shiro.subject
org.apache.shiro
org.apache.shiro.mgt
org.apache.shiro.authc
org.apache.shiro.subject
org.apache.shiro.dao org.apache.shiro
org.apache.shiro.mgt
org.apache.shiro.authc
org.apache.shiro.subject
org.apache.shiro
org.apache.shiro.env org.apache.shiro.mgt
org.apache.shiro.authc
org.apache.shiro.subject
org.apache.shiro
org.apache.shiro.mgt
org.apache.shiro.jndi org.apache.shiro.util
org.apache.shiro.subject
org.apache.shiro
org.apache.shiro.mgt
org.apache.shiro.authc
org.apache.shiro.subject
org.apache.shiro.ldap org.apache.shiro.dao
org.apache.shiro
org.apache.shiro.mgt
org.apache.shiro.authc
org.apache.shiro.subject
org.apache.shiro
org.apache.shiro.mgt org.apache.shiro.authc
org.apache.shiro.subject
org.apache.shiro
org.apache.shiro.mgt
org.apache.shiro.realm org.apache.shiro.authc
org.apache.shiro.subject
org.apache.shiro
org.apache.shiro.mgt
org.apache.shiro.authc
org.apache.shiro.realm.activedirectory org.apache.shiro.authz
org.apache.shiro
org.apache.shiro.mgt
org.apache.shiro.authc
org.apache.shiro.subject
org.apache.shiro
org.apache.shiro.realm.jdbc org.apache.shiro.authz
org.apache.shiro
org.apache.shiro.mgt
org.apache.shiro.authc
org.apache.shiro.subject
org.apache.shiro
org.apache.shiro.realm.jndi org.apache.shiro.realm
org.apache.shiro.authc
org.apache.shiro.subject
org.apache.shiro
org.apache.shiro.mgt
org.apache.shiro.authc
org.apache.shiro.realm.ldap org.apache.shiro.authz
org.apache.shiro
org.apache.shiro.mgt
org.apache.shiro.authc
org.apache.shiro.subject
org.apache.shiro
org.apache.shiro.realm.text org.apache.shiro.config
org.apache.shiro.util
org.apache.shiro.subject
org.apache.shiro
org.apache.shiro.mgt
org.apache.shiro.authc
org.apache.shiro.subject
org.apache.shiro.session org.apache.shiro
org.apache.shiro.mgt
org.apache.shiro.authc
org.apache.shiro.subject
org.apache.shiro
org.apache.shiro.session.mgt org.apache.shiro.authz
org.apache.shiro
org.apache.shiro.mgt
org.apache.shiro.authc
org.apache.shiro.subject
org.apache.shiro
org.apache.shiro.session.mgt.eis org.apache.shiro.session.mgt
org.apache.shiro.authz
org.apache.shiro
org.apache.shiro.mgt
org.apache.shiro.authc
org.apache.shiro.subject
org.apache.shiro
org.apache.shiro.subject org.apache.shiro
org.apache.shiro.mgt
org.apache.shiro.authc
org.apache.shiro.subject
org.apache.shiro.subject.support org.apache.shiro.mgt
org.apache.shiro.authc
org.apache.shiro.subject
org.apache.shiro
org.apache.shiro.mgt
org.apache.shiro.util org.apache.shiro.subject
org.apache.shiro
org.apache.shiro.mgt
org.apache.shiro.authc
org.apache.shiro.subject

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.