awslabs / kinesis-agent-windows
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
  • 17% duplication:
    • 14,321 cleaned lines of cleaned code (without empty lines, comments, and frequently duplicated constructs such as imports)
    • 2,484 duplicated lines
  • 133 duplicates
system17% (2,484 lines)
Duplication per Extension
cs15% (2,166 lines)
g4100% (270 lines)
yml56% (48 lines)
Duplication per Component (primary)
Amazon.KinesisTap.Shared90% (584 lines)
Amazon.KinesisTap.Expression94% (584 lines)
Amazon.KinesisTap.Core11% (472 lines)
Amazon.KinesisTap.AWS12% (350 lines)
Amazon.KinesisTap.Common92% (276 lines)
Amazon.KinesisTap.FileSystem6% (83 lines)
Amazon.KinesisTap.Windows4% (55 lines)
Scripts59% (35 lines)
Amazon.KinesisTap.ServiceTests12% (16 lines)
ROOT7% (13 lines)
Amazon.KinesisTap27% (10 lines)
Amazon.KinesisTap.DiagnosticTool3% (6 lines)
Amazon.KinesisTap.ParserExamples0% (0 lines)
KinesisTapWixSetup0% (0 lines)
KinesisTapMsiCustomAction0% (0 lines)
Amazon.KinesisTap.AutoUpdate0% (0 lines)
Amazon.KinesisTap.DiagnosticTool.Core0% (0 lines)
Amazon.KinesisTap.Hosting0% (0 lines)
Amazon.KinesisTap.Uls0% (0 lines)
Amazon.KinesisTap.ExchangeSource0% (0 lines)
Amazon.KinesisTap.Deploy0% (0 lines)
ChocolateyTemplate0% (0 lines)

Duplication Between Components (50+ lines)

G Amazon.KinesisTap.Expression Amazon.KinesisTap.Expression Amazon.KinesisTap.Shared Amazon.KinesisTap.Shared Amazon.KinesisTap.Expression--Amazon.KinesisTap.Shared 1164 Amazon.KinesisTap.Common Amazon.KinesisTap.Common Amazon.KinesisTap.Core Amazon.KinesisTap.Core Amazon.KinesisTap.Common--Amazon.KinesisTap.Core 552

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 133 duplicates...
Size#FoldersFilesLinesCode
172 x 2 Amazon.KinesisTap.Common/Properties
Amazon.KinesisTap.Core/Properties
Resources.Designer.cs
Resources.Designer.cs
37:536 (100%)
37:536 (100%)
view
52 x 2 Amazon.KinesisTap.Expression
Amazon.KinesisTap.Shared
BuiltInFunctions.cs
BuiltInFunctions.cs
26:120 (100%)
26:120 (100%)
view
51 x 2 Amazon.KinesisTap.Expression/Ast
Amazon.KinesisTap.Shared/Ast
ExpressionInterpreter.cs
ExpressionInterpreter.cs
25:119 (100%)
25:119 (100%)
view
45 x 2 Amazon.KinesisTap.Common
Amazon.KinesisTap.Core
Guard.cs
Guard.cs
26:139 (100%)
26:139 (100%)
view
40 x 2 Amazon.KinesisTap.Common
Amazon.KinesisTap.Core
Utility.cs
Utility.cs
98:169 (48%)
577:654 (8%)
view
39 x 2 Amazon.KinesisTap.Expression/ObjectDecoration
Amazon.KinesisTap.Shared/ObjectDecoration
g4
ObjectDecorationParser.g4
ObjectDecorationParser.g4
1:49 (100%)
1:49 (100%)
view
34 x 2 Amazon.KinesisTap.Expression/ObjectDecoration
Amazon.KinesisTap.Shared/ObjectDecoration
g4
ObjectDecorationLexer.g4
ObjectDecorationLexer.g4
1:47 (100%)
1:47 (100%)
view
32 x 2 Amazon.KinesisTap.Expression/TextDecoration
Amazon.KinesisTap.Shared/TextDecoration
g4
TextDecorationLexer.g4
TextDecorationLexer.g4
1:44 (100%)
1:44 (100%)
view
31 x 2 Amazon.KinesisTap.Expression/TextDecoration
Amazon.KinesisTap.Shared/TextDecoration
TextDecorationParserVisitor.cs
TextDecorationParserVisitor.cs
69:122 (50%)
68:121 (50%)
view
31 x 2 Amazon.KinesisTap.Expression/ObjectDecoration
Amazon.KinesisTap.Shared/ObjectDecoration
ObjectDecorationParserVisitor.cs
ObjectDecorationParserVisitor.cs
99:152 (40%)
98:151 (40%)
view
30 x 2 Amazon.KinesisTap.Expression/TextDecoration
Amazon.KinesisTap.Shared/TextDecoration
g4
TextDecorationParser.g4
TextDecorationParser.g4
1:37 (100%)
1:37 (100%)
view
30 x 2 Amazon.KinesisTap.Expression/Binder
Amazon.KinesisTap.Shared/Binder
FunctionBinder.cs
FunctionBinder.cs
26:92 (100%)
26:92 (100%)
view
29 x 2 Amazon.KinesisTap.Expression/ObjectDecoration
Amazon.KinesisTap.Shared/ObjectDecoration
ObjectDecorationParserVisitor.cs
ObjectDecorationParserVisitor.cs
27:84 (38%)
26:83 (38%)
view
25 x 2 Amazon.KinesisTap.Expression/ObjectDecoration
Amazon.KinesisTap.Shared/ObjectDecoration
ObjectDecorationParserFacade.cs
ObjectDecorationParserFacade.cs
25:76 (100%)
22:73 (100%)
view
23 x 2 Amazon.KinesisTap.Shared/ObjectDecoration
Amazon.KinesisTap.Shared/TextDecoration
g4
ObjectDecorationParser.g4
TextDecorationParser.g4
22:49 (58%)
10:37 (76%)
view
23 x 2 Amazon.KinesisTap.Expression/ObjectDecoration
Amazon.KinesisTap.Expression/TextDecoration
g4
ObjectDecorationParser.g4
TextDecorationParser.g4
22:49 (58%)
10:37 (76%)
view
23 x 2 Amazon.KinesisTap.Expression/Ast
Amazon.KinesisTap.Shared/Ast
ExpressionEvaluationContext.cs
ExpressionEvaluationContext.cs
25:63 (100%)
23:61 (100%)
view
23 x 2 Amazon.KinesisTap.Expression/ObjectDecoration
Amazon.KinesisTap.Shared/TextDecoration
g4
ObjectDecorationParser.g4
TextDecorationParser.g4
22:49 (58%)
10:37 (76%)
view
23 x 2 Amazon.KinesisTap.Expression/TextDecoration
Amazon.KinesisTap.Shared/ObjectDecoration
g4
TextDecorationParser.g4
ObjectDecorationParser.g4
10:37 (76%)
22:49 (58%)
view
22 x 2 Amazon.KinesisTap.Expression/ObjectDecoration
Amazon.KinesisTap.Expression/TextDecoration
g4
ObjectDecorationLexer.g4
TextDecorationLexer.g4
20:47 (64%)
17:44 (68%)
view
Duplicated Units
The list of top 20 duplicated units.
See data for all 45 unit duplicates...
Size#FoldersFilesLinesCode
56 x 2 Amazon.KinesisTap.Core
Amazon.KinesisTap.Common
Utility.cs
Utility.cs
595:656 
110:171 
view
33 x 2 Amazon.KinesisTap.Shared/Ast
Amazon.KinesisTap.Expression/Ast
ExpressionInterpreter.cs
ExpressionInterpreter.cs
64:98 
64:98 
view
26 x 2 Amazon.KinesisTap.Core
Amazon.KinesisTap.Core
Utility.cs
Utility.cs
320:353 
359:391 
view
22 x 2 Amazon.KinesisTap.AWS
Amazon.KinesisTap.AWS
KinesisStreamSink.cs
KinesisFirehoseSink.cs
119:148 
115:144 
view
20 x 2 Amazon.KinesisTap.AWS
Amazon.KinesisTap.AWS
CloudWatchLogsSink.cs
S3Sink.cs
363:385 
223:246 
view
20 x 2 Amazon.KinesisTap.Core
Amazon.KinesisTap.Common
Guard.cs
Guard.cs
102:124 
102:124 
view
19 x 2 Amazon.KinesisTap.Core
Amazon.KinesisTap.Common
Guard.cs
Guard.cs
71:92 
71:92 
view
16 x 2 Amazon.KinesisTap.Shared/ObjectDecoration
Amazon.KinesisTap.Expression/ObjectDecoration
ObjectDecorationParserVisitor.cs
ObjectDecorationParserVisitor.cs
53:69 
54:70 
view
16 x 2 Amazon.KinesisTap.Shared/ObjectDecoration
Amazon.KinesisTap.Shared/TextDecoration
ObjectDecorationParserVisitor.cs
TextDecorationParserVisitor.cs
147:163 
117:133 
view
16 x 2 Amazon.KinesisTap.Shared/TextDecoration
Amazon.KinesisTap.Expression/TextDecoration
TextDecorationParserVisitor.cs
TextDecorationParserVisitor.cs
28:44 
29:45 
view
16 x 2 Amazon.KinesisTap.Expression/ObjectDecoration
Amazon.KinesisTap.Expression/TextDecoration
ObjectDecorationParserVisitor.cs
TextDecorationParserVisitor.cs
148:164 
118:134 
view
15 x 2 Amazon.KinesisTap.Shared/ObjectDecoration
Amazon.KinesisTap.Expression/ObjectDecoration
ObjectDecorationParserVisitor.cs
ObjectDecorationParserVisitor.cs
119:134 
120:135 
view
15 x 2 Amazon.KinesisTap.Shared/TextDecoration
Amazon.KinesisTap.Expression/TextDecoration
TextDecorationParserVisitor.cs
TextDecorationParserVisitor.cs
89:104 
90:105 
view
15 x 2 Amazon.KinesisTap.AWS
Amazon.KinesisTap.Core/Sinks
AWSBufferedSink.cs
EventSink.cs
330:348 
144:162 
view
15 x 2 Amazon.KinesisTap.Core
Amazon.KinesisTap.Common
Utility.cs
Utility.cs
484:500 
80:96 
view
13 x 2 Amazon.KinesisTap.Shared/ObjectDecoration
Amazon.KinesisTap.Expression/ObjectDecoration
ObjectDecorationInterpreter.cs
ObjectDecorationInterpreter.cs
54:67 
54:67 
view
13 x 2 Amazon.KinesisTap.Shared/Binder
Amazon.KinesisTap.Expression/Binder
FunctionBinder.cs
FunctionBinder.cs
72:88 
72:88 
view
12 x 2 Amazon.KinesisTap.Shared/ObjectDecoration
Amazon.KinesisTap.Expression/ObjectDecoration
ObjectDecorationParserVisitor.cs
ObjectDecorationParserVisitor.cs
28:42 
29:43 
view
12 x 2 Amazon.KinesisTap.Core
Amazon.KinesisTap.Common
Guard.cs
Guard.cs
128:140 
128:140 
view
12 x 2 Amazon.KinesisTap.Core
Amazon.KinesisTap.Common
Utility.cs
Utility.cs
400:413 
31:44 
view