Thorntail
Unit Size

Intro
  • Unit size measurements show the distribution of size of units of code (methods, functions...).
  • Units are classified in four categories based on their size (lines of code): 1-20 (small units), 20-50 (medium size units), 51-100 (long units), 101+ (very long units).
  • You should aim at keeping units small (< 20 lines). Long units may become "bloaters", code that have increased to such gargantuan proportions that they are hard to work with.
Learn more...
Unit Size Overall
  • There are 3,846 units with 29,225 lines of code in units (64.0% of code).
    • 8 very long units (995 lines of code)
    • 32 long units (2,088 lines of code)
    • 218 medium size units (6,587 lines of code)
    • 449 small units (6,529 lines of code)
    • 3,139 very small units (13,026 lines of code)
3% | 7% | 22% | 22% | 44%
Legend:
101+
51-100
21-50
11-20
1-10
Unit Size per Extension
java3% | 7% | 22% | 22% | 44%
Legend:
101+
51-100
21-50
11-20
1-10
Unit Size per Logical Component
primary logical decomposition
fractions3% | 5% | 19% | 21% | 49%
core2% | 7% | 27% | 19% | 42%
arquillian9% | 11% | 28% | 19% | 30%
meta12% | 0% | 26% | 17% | 43%
plugins4% | 18% | 16% | 29% | 31%
swarmtool0% | 41% | 28% | 11% | 19%
tools0% | 0% | 24% | 26% | 49%
thorntail-runner0% | 0% | 16% | 47% | 36%
testsuite0% | 0% | 7% | 20% | 71%
client-apis0% | 0% | 21% | 0% | 78%
cli0% | 0% | 0% | 90% | 10%
Legend:
101+
51-100
21-50
11-20
1-10
Alternative Visuals
Longest Units
Top 50 longest units
Unit# linesMcCabe index# params
public void start()
in arquillian/adapter/src/main/java/org/wildfly/swarm/arquillian/adapter/UberjarSimpleContainer.java
160 32 1
public ElytronFraction applyDefaults()
in fractions/wildfly/elytron/src/main/java/org/wildfly/swarm/elytron/ElytronFraction.java
140 1 0
public void buildModule()
in core/bootstrap/src/main/java/org/wildfly/swarm/bootstrap/modules/ContainerModuleFinder.java
126 1 2
public MethodVisitor visitMethod()
in meta/fraction-metadata/src/main/java/org/wildfly/swarm/fractions/scanner/ClassAndPackageScanner.java
126 4 5
public void executeSpecific()
in plugins/maven/src/main/java/org/wildfly/swarm/plugin/maven/PackageMojo.java
120 19 0
public String transform()
in fractions/javaee/resource-adapters/src/main/java/org/wildfly/swarm/resource/adapters/IronJacamarXmlAssetImpl.java
119 32 1
public static File resolveArtifact()
in core/bootstrap/src/main/java/org/jboss/modules/maven/MavenArtifactUtil.java
102 23 2
public void process()
in fractions/microprofile/microprofile-jwt/src/main/java/org/wildfly/swarm/microprofile/jwtauth/runtime/MPJWTAuthExtensionArchivePreparer.java
102 30 0
public void deploy()
in core/container/src/main/java/org/wildfly/swarm/container/runtime/RuntimeDeployer.java
100 20 2
public Deployer start()
in core/container/src/main/java/org/wildfly/swarm/container/runtime/RuntimeServer.java
94 12 1
public void process()
in fractions/swagger/src/main/java/org/wildfly/swarm/swagger/runtime/SwaggerArchivePreparer.java
81 24 0
public void executeSpecific()
in plugins/maven/src/main/java/org/wildfly/swarm/plugin/maven/StartMojo.java
79 18 0
public KeycloakServerFraction applyDefaults()
in fractions/keycloak-server/src/main/java/org/wildfly/swarm/keycloak/server/KeycloakServerFraction.java
77 1 1
static void parseSettings()
in core/bootstrap/src/main/java/org/jboss/modules/maven/MavenSettings.java
74 19 2
public Set resolveAll()
in plugins/maven/src/main/java/org/wildfly/swarm/plugin/maven/MavenArtifactResolvingHelper.java
73 5 3
public void packageForSwarm()
in plugins/gradle/gradle-plugin/src/main/java/org/wildfly/swarm/plugin/gradle/PackageTask.java
73 5 0
public List generate()
in arquillian/adapter/src/main/java/org/wildfly/swarm/arquillian/adapter/DefaultDeploymentScenarioGenerator.java
72 11 1
public AuthenticationMechanism create()
in fractions/microprofile/microprofile-jwt/src/main/java/org/wildfly/swarm/microprofile/jwtauth/deployment/auth/JWTAuthMechanismFactory.java
71 16 3
public ModuleSpec findModule()
in core/bootstrap/src/main/java/org/wildfly/swarm/bootstrap/modules/ClasspathModuleFinder.java
70 16 2
private List getClassPathEntries()
in plugins/gradle/gradle-plugin/src/main/java/org/wildfly/swarm/plugin/gradle/StartTask.java
69 9 2
protected static File generateSwarmJar()
in swarmtool/src/main/java/org/wildfly/swarm/swarmtool/Main.java
68 15 1
public void startApplication()
in plugins/gradle/gradle-plugin/src/main/java/org/wildfly/swarm/plugin/gradle/StartTask.java
68 15 0
private Set getPackagesForScanning()
in fractions/swagger/src/main/java/org/wildfly/swarm/swagger/runtime/SwaggerArchivePreparer.java
65 14 1
protected void scanSubresources()
in core/container/src/main/java/org/wildfly/swarm/container/runtime/ConfigurableManager.java
63 18 2
public void start()
in arquillian/daemon/src/main/java/org/wildfly/swarm/arquillian/daemon/container/DaemonDeployableContainerBase.java
63 10 0
List dependencies()
in plugins/maven/src/main/java/org/wildfly/swarm/plugin/maven/StartMojo.java
61 19 2
List findNeededFractions()
in plugins/maven/src/main/java/org/wildfly/swarm/plugin/maven/StartMojo.java
59 5 3
static void createMethod()
in fractions/cdi-extensions/cdi-jaxrsapi/src/main/java/org/wildfly/swarm/cdi/jaxrsapi/runtime/ClientServiceFactory.java
59 6 6
public void buildModule()
in core/bootstrap/src/main/java/org/wildfly/swarm/bootstrap/modules/ApplicationModuleFinder.java
58 3 2
protected void scan()
in core/container/src/main/java/org/wildfly/swarm/container/runtime/ConfigurableManager.java
57 24 4
public InputStream openStream()
in core/spi/src/main/java/org/wildfly/swarm/spi/api/JBossDeploymentStructureAsset.java
56 17 0
private void proxyRequests()
in fractions/monitor/src/main/java/org/wildfly/swarm/monitor/runtime/HttpContexts.java
56 13 1
private void initializeConfigView()
in core/container/src/main/java/org/wildfly/swarm/Swarm.java
55 16 1
public String toXML()
in fractions/jolokia/src/main/java/org/wildfly/swarm/jolokia/access/JolokiaAccess.java
55 7 0
public void process()
in fractions/microprofile/microprofile-health/src/main/java/org/wildfly/swarm/microprofile/health/runtime/HealthAnnotationProcessor.java
54 20 0
public Object doLookup()
in arquillian/adapter/src/main/java/org/wildfly/swarm/arquillian/adapter/resources/SwarmURLResourceProvider.java
53 20 2
Optional getOptionalContextInfo()
in fractions/microprofile/microprofile-jwt/src/main/java/org/wildfly/swarm/microprofile/jwtauth/deployment/auth/config/JWTAuthContextInfoProvider.java
52 25 0
public ModuleSpec findModule()
in core/bootstrap/src/main/java/org/wildfly/swarm/bootstrap/modules/BootstrapClasspathModuleFinder.java
51 9 2
public void buildModule()
in core/bootstrap/src/main/java/org/wildfly/swarm/bootstrap/modules/BootstrapModuleFinder.java
51 5 2
public void process()
in fractions/monitor/src/main/java/org/wildfly/swarm/monitor/runtime/HealthAnnotationProcessor.java
51 18 0
private void resolveDependencies()
in tools/src/main/java/org/wildfly/swarm/tools/DependencyManager.java
50 5 2
public void processAnnotatedType()
in fractions/swagger/src/main/java/org/wildfly/swarm/swagger/deployment/SwaggerExtension.java
50 3 1
public void process()
in fractions/javaee/undertow/src/main/java/org/wildfly/swarm/undertow/runtime/HttpSecurityPreparer.java
50 10 0
private void invokeHealthInVM()
in fractions/monitor/src/main/java/org/wildfly/swarm/monitor/runtime/HttpContexts.java
49 3 4
private InputStream getKeycloakJsonFromSystemProperties()
in fractions/keycloak-microprofile-jwt/src/main/java/org/wildfly/swarm/keycloak/mpjwt/runtime/KeycloakMicroprofileJwtArchivePreparer.java
49 10 0
private void analyzeRemovableDependencies()
in tools/src/main/java/org/wildfly/swarm/tools/DependencyManager.java
48 4 1
static void parseProxy()
in core/bootstrap/src/main/java/org/jboss/modules/maven/MavenSettings.java
48 11 2
public void registerContext()
in core/container/src/main/java/org/wildfly/swarm/container/runtime/cdi/DeploymentScopedExtension.java
48 1 2
public Server bootstrap()
in core/container/src/main/java/org/wildfly/swarm/container/runtime/ServerBootstrapImpl.java
48 2 0
public void contextInitialized()
in fractions/jaeger/src/main/java/org/wildfly/swarm/jaeger/deployment/JaegerInitializer.java
48 7 1