aws-samples / amazon-qldb-dmv-sample-java
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:
    • 2,945 cleaned lines of cleaned code (without empty lines, comments, and frequently duplicated constructs such as imports)
    • 148 duplicated lines
  • 28 duplicates
system5% (148 lines)
Duplication per Extension
java5% (148 lines)
Duplication per Component (primary)
tutorial/model/streams24% (91 lines)
tutorial/qldb9% (45 lines)
tutorial/streams3% (12 lines)
tutorial0% (0 lines)
tutorial/model0% (0 lines)

Duplication Between Components (50+ lines)

G tutorial/model/streams tutorial/model/streams tutorial/qldb tutorial/qldb tutorial/model/streams--tutorial/qldb 90

Download: SVG DOT (open online Graphviz editor)

Open 3D force graph...

Show more details on duplication between components...
Longest Duplicates
The list of 20 longest duplicates.
See data for all 28 duplicates...
Size#FoldersFilesLinesCode
9 x 2 src/main/java/software/a.../tutorial/model/streams
src/main/java/software/amazon/qldb/tutorial/qldb
BlockSummaryRecord.java
JournalBlock.java
39:47 (9%)
48:56 (6%)
view
9 x 2 src/main/java/software/a.../tutorial/model/streams
src/main/java/software/amazon/qldb/tutorial/qldb
BlockSummaryRecord.java
JournalBlock.java
71:79 (9%)
116:124 (6%)
view
8 x 2 src/main/java/software/a.../tutorial/model/streams
src/main/java/software/amazon/qldb/tutorial/qldb
BlockSummaryRecord.java
JournalBlock.java
60:67 (8%)
69:76 (6%)
view
7 x 2 src/main/java/software/a.../tutorial/model/streams
src/main/java/software/a.../tutorial/model/streams
RevisionSummary.java
StreamRecord.java
50:59 (21%)
63:72 (10%)
view
7 x 2 src/main/java/software/a.../tutorial/model/streams
src/main/java/software/a.../tutorial/model/streams
ControlRecord.java
TableInfo.java
48:57 (20%)
54:63 (21%)
view
7 x 2 src/main/java/software/a.../tutorial/model/streams
src/main/java/software/a.../tutorial/model/streams
StreamRecord.java
TableInfo.java
63:72 (10%)
54:63 (21%)
view
7 x 2 src/main/java/software/a.../tutorial/model/streams
src/main/java/software/amazon/qldb/tutorial/qldb
BlockSummaryRecord.java
JournalBlock.java
52:58 (7%)
61:67 (5%)
view
7 x 2 src/main/java/software/a.../tutorial/model/streams
src/main/java/software/a.../tutorial/model/streams
RevisionSummary.java
TableInfo.java
50:59 (21%)
54:63 (21%)
view
7 x 2 src/main/java/software/a.../tutorial/model/streams
src/main/java/software/a.../tutorial/model/streams
ControlRecord.java
RevisionSummary.java
48:57 (20%)
50:59 (21%)
view
7 x 2 src/main/java/software/a.../tutorial/model/streams
src/main/java/software/a.../tutorial/model/streams
ControlRecord.java
StreamRecord.java
48:57 (20%)
63:72 (10%)
view
6 x 2 src/main/java/software/a.../tutorial/model/streams
src/main/java/software/a.../tutorial/model/streams
BlockSummaryRecord.java
Revision.java
86:92 (6%)
59:65 (8%)
view
6 x 2 src/main/java/software/a.../tutorial/model/streams
src/main/java/software/a.../tutorial/model/streams
RevisionDetailsRecord.java
StreamRecord.java
40:46 (19%)
66:72 (8%)
view
6 x 2 src/main/java/software/a.../tutorial/model/streams
src/main/java/software/amazon/qldb/tutorial/qldb
Revision.java
QldbRevision.java
106:115 (8%)
61:80 (8%)
view
6 x 2 src/main/java/software/a.../tutorial/model/streams
src/main/java/software/a.../tutorial/model/streams
Revision.java
RevisionDetailsRecord.java
59:65 (8%)
40:46 (19%)
view
6 x 2 src/main/java/software/a.../tutorial/model/streams
src/main/java/software/a.../tutorial/model/streams
Revision.java
TableInfo.java
59:65 (8%)
57:63 (18%)
view
6 x 2 src/main/java/software/a.../tutorial/model/streams
src/main/java/software/a.../tutorial/model/streams
BlockSummaryRecord.java
RevisionDetailsRecord.java
86:92 (6%)
40:46 (19%)
view
6 x 2 src/main/java/software/a.../tutorial/model/streams
src/main/java/software/a.../tutorial/model/streams
BlockSummaryRecord.java
TableInfo.java
86:92 (6%)
57:63 (18%)
view
6 x 2 src/main/java/software/a.../tutorial/model/streams
src/main/java/software/a.../tutorial/model/streams
ControlRecord.java
RevisionDetailsRecord.java
51:57 (17%)
40:46 (19%)
view
6 x 2 src/main/java/software/a.../tutorial/model/streams
src/main/java/software/a.../tutorial/model/streams
Revision.java
RevisionSummary.java
59:65 (8%)
53:59 (18%)
view
6 x 2 src/main/java/software/a.../tutorial/model/streams
src/main/java/software/a.../tutorial/model/streams
ControlRecord.java
Revision.java
51:57 (17%)
59:65 (8%)
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/software/amazon/qldb/tutorial/qldb
src/main/java/software/a.../tutorial/model/streams
QldbRevision.java
Revision.java
136:143 
97:104 
view