awslabs / aws-greengrass-provisioner
Duplication

Places in code with 6 or more lines that are exactly the same.

Intro
  • For duplication, we look at places in code where there are 6 or more lines of code that are exactly the same.
  • Before duplication is calculated, the code is cleaned to remove empty lines, comments, and frequently duplicated constructs such as imports.
  • You should aim at having as little as possible (<5%) of duplicated code as high-level of duplication can lead to maintenance difficulties, poor factoring, and logical contradictions.
Learn more...
Duplication Overall
  • 5% duplication:
    • 9,194 cleaned lines of cleaned code (without empty lines, comments, and frequently duplicated constructs such as imports)
    • 545 duplicated lines
  • 61 duplicates
system5% (545 lines)
Duplication per Extension
yaml74% (319 lines)
java2% (178 lines)
in10% (48 lines)
Duplication per Component (primary)
lambda-support74% (319 lines)
src/main/java/com/awslabs/aws/greengrass/provisioner/data10% (84 lines)
src/main/resources/shell10% (48 lines)
src/main/java/com/awslabs/aws/greengrass/provisioner/implementations<1% (45 lines)
src/main/java/com/awslabs/aws/greengrass/provisioner/docker8% (35 lines)
src/integration-test/java2% (14 lines)
src/integration-test/java/com/awslabs/aws/greengrass/provisioner/implementations0% (0 lines)
src/main/java/com/awslabs/aws/greengrass/provisioner0% (0 lines)
src/main/java/com/awslabs/aws/greengrass/provisioner/interfaces0% (0 lines)
src/main/java/com/awslabs/aws/greengrass/provisioner/lambda0% (0 lines)
Longest Duplicates
The list of 20 longest duplicates.
See data for all 61 duplicates...
Size#FoldersFilesLinesCode
66 x 2 lambda-support
lambda-support
ggp-config-for-cross-account-usage.yaml
lambda-stack-for-ggp.yaml
119:195 (34%)
160:236 (28%)
view
19 x 2 lambda-support
lambda-support
ggp-config-for-cross-account-usage.yaml
lambda-stack-for-ggp.yaml
38:56 (9%)
33:51 (8%)
view
18 x 2 lambda-support
lambda-support
ggp-config-for-cross-account-usage.yaml
lambda-stack-for-ggp.yaml
97:114 (9%)
124:141 (7%)
view
17 x 2 src/main/java/com/awslab...sioner/data/diagnostics
src/main/java/com/awslab...sioner/data/diagnostics
FunctionTimedOutDiagnosticRule.java
FunctionTimingOutDiagnosticRule.java
23:44 (58%)
23:44 (54%)
view
14 x 2 lambda-support
lambda-support
lambda-stack-for-ggp.yaml
lambda-stack-for-ggp.yaml
80:93 (5%)
117:130 (5%)
view
13 x 2 lambda-support
lambda-support
ggp-config-for-cross-account-usage.yaml
lambda-stack-for-ggp.yaml
168:182 (6%)
166:180 (5%)
view
13 x 2 lambda-support
lambda-support
ggp-config-for-cross-account-usage.yaml
ggp-config-for-cross-account-usage.yaml
125:139 (6%)
168:182 (6%)
view
13 x 2 lambda-support
lambda-support
ggp-config-for-cross-account-usage.yaml
lambda-stack-for-ggp.yaml
24:36 (6%)
20:32 (5%)
view
13 x 2 lambda-support
lambda-support
ggp-config-for-cross-account-usage.yaml
lambda-stack-for-ggp.yaml
125:139 (6%)
209:223 (5%)
view
13 x 2 lambda-support
lambda-support
lambda-stack-for-ggp.yaml
lambda-stack-for-ggp.yaml
166:180 (5%)
209:223 (5%)
view
12 x 2 lambda-support
lambda-support
ggp-config-for-cross-account-usage.yaml
lambda-stack-for-ggp.yaml
11:22 (6%)
8:19 (5%)
view
8 x 2 lambda-support
lambda-support
ggp-config-for-cross-account-usage.yaml
lambda-stack-for-ggp.yaml
58:65 (4%)
53:60 (3%)
view
8 x 2 src/main/resources/shell
src/main/resources/shell
in
stop.sh.in
template.sh.in
1:11 (47%)
1:11 (3%)
view
8 x 2 src/main/resources/shell
src/main/resources/shell
in
stop.sh.in
update-dependencies.sh.in
1:11 (47%)
1:11 (7%)
view
8 x 2 src/main/java/com/awslab...sioner/data/diagnostics
src/main/java/com/awslab...sioner/data/diagnostics
MissingRuntimeWithJsonErrorDiagnostic...
MissingRuntimeWithJsonErrorDiagnostic...
22:33 (47%)
23:34 (42%)
view
8 x 2 src/main/resources/shell
src/main/resources/shell
in
monitor.sh.in
start.sh.in
1:11 (88%)
1:11 (44%)
view
8 x 2 src/main/resources/shell
src/main/resources/shell
in
clean.sh.in
start.sh.in
1:11 (15%)
1:11 (44%)
view
8 x 2 src/main/resources/shell
src/main/resources/shell
in
start.sh.in
template.sh.in
1:11 (44%)
1:11 (3%)
view
8 x 2 src/main/resources/shell
src/main/resources/shell
in
clean.sh.in
update-dependencies.sh.in
1:11 (15%)
1:11 (7%)
view
8 x 2 src/main/resources/shell
src/main/resources/shell
in
template.sh.in
update-dependencies.sh.in
1:11 (3%)
1:11 (7%)
view
Duplicated Units
The list of top 1 duplicated units.
See data for all 1 unit duplicate
Size#FoldersFilesLinesCode
7 x 2 src/main/java/com/awslab...implementations/helpers
src/main/java/com/awslab...implementations/helpers
BasicDeploymentHelper.java
BasicDeploymentHelper.java
1320:1331 
1334:1345 
view