awslabs / aws-crt-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
  • 10% duplication:
    • 12,146 cleaned lines of cleaned code (without empty lines, comments, and frequently duplicated constructs such as imports)
    • 1,223 duplicated lines
  • 182 duplicates
system10% (1,223 lines)
Duplication per Extension
c11% (645 lines)
java7% (331 lines)
yml53% (207 lines)
h4% (16 lines)
kt1% (12 lines)
kts6% (12 lines)
Duplication per Component (primary)
src/native10% (673 lines)
src/main7% (331 lines)
codebuild61% (129 lines)
codebuild/cd44% (78 lines)
smithy-crt/src1% (12 lines)
cmake0% (0 lines)
android/crt0% (0 lines)
s3-native-client0% (0 lines)
smithy-crt0% (0 lines)
ROOT0% (0 lines)
Longest Duplicates
The list of 20 longest duplicates.
See data for all 182 duplicates...
Size#FoldersFilesLinesCode
15 x 2 src/main/java/software/a.../awssdk/crt/eventstream
src/main/java/software/a.../awssdk/crt/eventstream
ClientConnection.java
ServerConnection.java
67:99 (17%)
67:98 (30%)
view
15 x 2 src/native
src/native
event_loop_group.c
event_loop_group.c
70:88 (15%)
115:133 (15%)
view
13 x 2 codebuild
codebuild
linux-gcc-5x-x64.yml
linux-gcc-6x-x64.yml
12:25 (56%)
12:25 (56%)
view
13 x 2 codebuild
codebuild
linux-gcc-5x-x64.yml
linux-gcc-7x-x64.yml
12:25 (56%)
13:26 (54%)
view
13 x 2 src/main/java/software/a...dk/crt/auth/credentials
src/main/java/software/a...dk/crt/auth/credentials
EcsCredentialsProvider.java
ProfileCredentialsProvider.java
57:93 (17%)
56:92 (17%)
view
13 x 2 codebuild
codebuild
linux-gcc-6x-x64.yml
linux-gcc-7x-x64.yml
12:25 (56%)
13:26 (54%)
view
13 x 2 codebuild
codebuild
linux-gcc-4x-x64.yml
linux-gcc-5x-x64.yml
11:24 (59%)
12:25 (56%)
view
13 x 2 codebuild
codebuild
linux-gcc-4x-x64.yml
linux-gcc-6x-x64.yml
11:24 (59%)
12:25 (56%)
view
13 x 2 codebuild
codebuild
linux-gcc-4x-x64.yml
linux-gcc-7x-x64.yml
11:24 (59%)
13:26 (54%)
view
13 x 2 src/native
src/native
event_stream_rpc_client.c
event_stream_rpc_server.c
273:290 (3%)
535:551 (2%)
view
12 x 2 src/native
src/native
event_stream_rpc_client.c
event_stream_rpc_server.c
367:382 (2%)
121:136 (2%)
view
12 x 2 src/main/java/software/amazon/awssdk/crt/checksums
src/main/java/software/amazon/awssdk/crt/checksums
CRC32.java
CRC32C.java
40:66 (36%)
39:65 (36%)
view
12 x 2 src/native
src/native
event_stream_rpc_client.c
event_stream_rpc_server.c
93:107 (2%)
230:245 (2%)
view
11 x 2 src/native
src/native
http_request_utils.c
http_request_utils.c
242:258 (3%)
268:284 (3%)
view
11 x 2 codebuild/cd
codebuild/cd
manylinux-x64-build.yml
manylinux-x86-build.yml
1:13 (50%)
1:13 (50%)
view
10 x 2 src/main/java/software/a...dk/crt/auth/credentials
src/main/java/software/a...dk/crt/auth/credentials
EcsCredentialsProvider.java
StsWebIdentityCredentialsProvider.java
128:142 (13%)
93:107 (20%)
view
10 x 2 src/main/java/software/a...dk/crt/auth/credentials
src/main/java/software/a...dk/crt/auth/credentials
ProfileCredentialsProvider.java
StsCredentialsProvider.java
131:145 (13%)
129:143 (12%)
view
10 x 2 src/native
src/native
http_connection_manager.c
http_connection_manager.h
81:90 (3%)
24:33 (35%)
view
10 x 2 codebuild/cd
codebuild/cd
manylinux-x64-build.yml
manylinux-x86-build.yml
15:27 (45%)
15:27 (45%)
view
10 x 2 src/main/java/software/a...dk/crt/auth/credentials
src/main/java/software/a...dk/crt/auth/credentials
StsCredentialsProvider.java
StsWebIdentityCredentialsProvider.java
57:87 (12%)
50:80 (20%)
view
Duplicated Units
The list of top 7 duplicated units.
See data for all 7 unit duplicates...
Size#FoldersFilesLinesCode
11 x 2 src/native
src/native
event_stream_rpc_server.c
event_stream_rpc_client.c
103:117 
349:363 
view
11 x 2 src/main/java/software/a.../awssdk/crt/eventstream
src/main/java/software/a.../awssdk/crt/eventstream
ServerConnectionHandler.java
ClientConnectionHandler.java
32:50 
46:65 
view
11 x 2 src/main/java/software/a.../awssdk/crt/eventstream
src/main/java/software/a.../awssdk/crt/eventstream
ServerConnection.java
ClientConnection.java
87:100 
87:101 
view
8 x 2 src/native
src/native
event_stream_rpc_server.c
event_stream_rpc_client.c
540:549 
278:288 
view
7 x 2 src/native
src/native
crt.c
crt.c
71:78 
80:87 
view
6 x 2 src/main/java/software/amazon/awssdk/crt/checksums
src/main/java/software/amazon/awssdk/crt/checksums
CRC32C.java
CRC32.java
75:81 
86:92 
view
6 x 2 src/main/java/software/a.../awssdk/crt/eventstream
src/main/java/software/a.../awssdk/crt/eventstream
Header.java
Header.java
28:34 
42:48 
view