apache / camel-spring-boot
Source Code Overview

Analysis scope, overview of main, test, generated, deployment, build, and other code.

Source Code Analysis Scope
Files includes and excluded from analyses
txt
properties
xsd
xquery
cql
cmd
gitattributes
Overview of Analyzed Files
Basic stats on analyzed files
Intro
For analysis purposes we separate files in scope into several categories: main, test, generated, deployment and build, and other.

  • The main category contains all manually created source code files that are being used in the production.
  • Files in the main category are used as input for other analyses: logical decomposition, concerns, duplication, file size, unit size, and conditional complexity.
  • Test source code files are used only for testing of the product. These files are normally not deployed to production.
  • Build and deployment source code files are used to configure or support build and deployment process.
  • Generated source code files are automatically generated files that have not been manually changed after generation.
  • While a source code folder may contain a number of files, we are primarily interested in the source code files that are being written and maintained by developers.
  • Files containing binaries, documentation, or third-party libraries, for instance, are excluded from analysis. The exception are third-party libraries that have been changed by developers.

main77476 LOC (31%) 1,153 files
test59660 LOC (24%) 1,030 files
generated2051 LOC (<1%) 15 files
build and deployment19804 LOC (8%) 357 files
other83274 LOC (34%) 1,148 files
Main Code
All manually created or maintained source code that defines logic of the product that is run in a production environment.
cmd
Explore:   circles  |  sunburst
  • The following criteria are used to filter files:
    • files with paths like ".*".
  • 1153 files match defined criteria (77,476 LOC, 100.0% vs. main code):
    • 1,142 *.java files (77,254 LOC)
    • 4 *.xml files (125 LOC)
    • 2 *.cmd files (48 LOC)
    • 4 *.yml files (30 LOC)
    • 1 *.adoc files (19 LOC)
  • " *.java" is biggest, containing 99.71% of LOC.
  • " *.adoc" is smallest, containing 0.02% of LOC.


*.java77254 LOC (99%) 1,142 files
*.xml125 LOC (<1%) 4 files
*.cmd48 LOC (<1%) 2 files
*.yml30 LOC (<1%) 4 files
*.adoc19 LOC (<1%) 1 file
Test Code
Used only for testing of the product. Normally not deployed in a production environment.
cql
xquery
Explore:   circles  |  sunburst
  • The following criteria are used to filter files:
    • files with paths like ".*/[Tt]est/.*".
    • files with paths like ".*[.][Tt]est[.].*".
    • files with paths like ".*[.]test[.].*".
    • files with paths like ".*/[Tt]ests/.*".
  • 1030 files match defined criteria (59,660 LOC, 77.0% vs. main code):
    • 955 *.java files (58,230 LOC)
    • 58 *.xml files (1,298 LOC)
    • 6 *.sql files (50 LOC)
    • 4 *.cql files (47 LOC)
    • 5 *.xquery files (24 LOC)
    • 1 *.avsc files (7 LOC)
    • 1 *.groovy files (4 LOC)
  • " *.java" is biggest, containing 97.6% of LOC.
  • " *.groovy" is smallest, containing 0.01% of LOC.


*.java58230 LOC (97%) 955 files
*.xml1298 LOC (2%) 58 files
*.sql50 LOC (<1%) 6 files
*.cql47 LOC (<1%) 4 files
*.xquery24 LOC (<1%) 5 files
*.avsc7 LOC (<1%) 1 file
*.groovy4 LOC (<1%) 1 file
Generated Code
Automatically generated files, not manually changed after generation.
Explore:   circles  |  sunburst
  • The following criteria are used to filter files:
    • files with paths like ".*/generated/.*".
  • 15 files match defined criteria (2,051 LOC, 2.6% vs. main code). All matches are in *.java files.


*.java2051 LOC (100%) 15 files
Build and Deployment Code
Source code used to configure or support build and deployment process.
Explore:   circles  |  sunburst
  • The following criteria are used to filter files:
    • files with paths like ".*/pom[.]xml".
    • files with paths like ".*[.]sh".
    • files with paths like ".*[.]git[a-z]+".
    • files with paths like ".*/[.]gitignore".
    • files with paths like ".*/[.]gitattributes".
  • 357 files match defined criteria (19,804 LOC, 25.6% vs. main code). All matches are in *.xml files.


*.xml19804 LOC (100%) 357 files
Other Code
txt
properties
xsd
Explore:   circles  |  sunburst
  • The following criteria are used to filter files:
    • files with paths like ".*[.]txt".
    • files with paths like ".*/LICENSE[.][a-z0-9]+".
    • files with paths like ".*[.]json".
    • files with paths like ".*[.]properties".
    • files with paths like ".*/resources/.*[.]xsd".
    • files with paths like ".*/README[.][a-z0-9]+".
    • files with paths like ".*[.]md".
    • files with paths like ".*/[.]gitignore".
  • 1148 files match defined criteria (83,274 LOC, 107.5% vs. main code):
    • 692 *.txt files (60,429 LOC)
    • 398 *.json files (21,209 LOC)
    • 36 *.properties files (1,226 LOC)
    • 20 *.xsd files (368 LOC)
    • 1 *.adoc files (22 LOC)
    • 1 *.md files (20 LOC)
  • " *.txt" is biggest, containing 72.57% of LOC.
  • " *.md" is smallest, containing 0.02% of LOC.


*.txt60429 LOC (72%) 692 files
*.json21209 LOC (25%) 398 files
*.properties1226 LOC (1%) 36 files
*.xsd368 LOC (<1%) 20 files
*.adoc22 LOC (<1%) 1 file
*.md20 LOC (<1%) 1 file
Analyzers
Info about analyzers used for source code examinations.


2023-08-10 23:28