awslabs / aws-mobile-appsync-sdk-android
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:
    • 11,673 cleaned lines of cleaned code (without empty lines, comments, and frequently duplicated constructs such as imports)
    • 652 duplicated lines
  • 65 duplicates
system5% (652 lines)
Duplication per Extension
java5% (472 lines)
kt7% (180 lines)
Duplication per Component (primary)
aws-android-sdk-appsync-runtime/src/main/java/com/apollographql/apollo/internal8% (281 lines)
aws-android-sdk-appsync-compiler/src/main/kotlin/com/apollographql/apollo/compiler7% (180 lines)
aws-android-sdk-appsync/src/main/java/com/amazonaws/mobileconnectors/appsync2% (98 lines)
app/src/main/java/com/amazonaws/postsapp19% (86 lines)
aws-android-sdk-appsync-api/src/main/java/com/apollographql/apollo/api1% (7 lines)
aws-android-sdk-appsync-api/src/main/java/com/apollographql/apollo0% (0 lines)
aws-android-sdk-appsync-api/src/main/java/com/apollographql/apollo/internal0% (0 lines)
aws-android-sdk-appsync-gradle-plugin/src/main/java/com/apollographql/apollo/gradle0% (0 lines)
aws-android-sdk-appsync-gradle-plugin/src/main/groovy/com/apollographql/apollo/gradle0% (0 lines)
aws-android-sdk-appsync-runtime/src/main/java/com/apollographql/apollo/exception0% (0 lines)
aws-android-sdk-appsync-runtime/src/main/java/com/apollographql/apollo0% (0 lines)
aws-android-sdk-appsync-runtime/src/main/java/com/apollographql/apollo/json0% (0 lines)
aws-android-sdk-appsync-runtime/src/main/java/com/apollographql/apollo/fetcher0% (0 lines)
aws-android-sdk-appsync-runtime/src/main/java/com/apollographql/apollo/interceptor0% (0 lines)
aws-android-sdk-appsync-runtime/src/main/java/com/amazonaws/mobileconnectors/appsync0% (0 lines)
Longest Duplicates
The list of 20 longest duplicates.
See data for all 65 duplicates...
Size#FoldersFilesLinesCode
16 x 2 aws-android-sdk-appsync-...graphql/apollo/compiler
aws-android-sdk-appsync-...graphql/apollo/compiler
InputFieldSpec.kt
InputFieldSpec.kt
119:135 (8%)
144:160 (8%)
view
14 x 2 aws-android-sdk-appsync-...graphql/apollo/compiler
aws-android-sdk-appsync-...graphql/apollo/compiler
InputTypeSpecBuilder.kt
VariablesTypeSpecBuilder.kt
106:120 (11%)
122:136 (11%)
view
13 x 2 aws-android-sdk-appsync-...graphql/apollo/internal
aws-android-sdk-appsync-...graphql/apollo/internal
RealAppSyncPrefetch.java
RealAppSyncQueryWatcher.java
148:165 (10%)
94:111 (9%)
view
12 x 2 aws-android-sdk-appsync/...obileconnectors/appsync
aws-android-sdk-appsync/...obileconnectors/appsync
AppSyncCallback.java
AppSyncPrefetchCallback.java
90:106 (22%)
68:83 (33%)
view
12 x 2 aws-android-sdk-appsync-...graphql/apollo/compiler
aws-android-sdk-appsync-...graphql/apollo/compiler
InputFieldSpec.kt
ResponseFieldSpec.kt
176:187 (6%)
431:442 (3%)
view
12 x 2 app/src/main/java/com/amazonaws/postsapp
app/src/main/java/com/amazonaws/postsapp
AddPostActivity.java
UpdatePostActivity.java
42:61 (19%)
36:55 (44%)
view
11 x 2 aws-android-sdk-appsync-...graphql/apollo/internal
aws-android-sdk-appsync-...graphql/apollo/internal
RealAppSyncCall.java
RealAppSyncQueryWatcher.java
273:284 (3%)
154:165 (7%)
view
11 x 2 aws-android-sdk-appsync-...pollo/internal/response
aws-android-sdk-appsync-...pollo/internal/response
RealResponseReader.java
RealResponseReader.java
166:179 (4%)
330:343 (4%)
view
11 x 2 app/src/main/java/com/amazonaws/postsapp
app/src/main/java/com/amazonaws/postsapp
PostsAdapter.java
PostsAdapter.java
145:164 (3%)
204:223 (3%)
view
10 x 2 aws-android-sdk-appsync-...graphql/apollo/compiler
aws-android-sdk-appsync-...graphql/apollo/compiler
SchemaTypeSpecBuilder.kt
SchemaTypeSpecBuilder.kt
161:170 (3%)
379:388 (3%)
view
10 x 2 aws-android-sdk-appsync/...obileconnectors/appsync
aws-android-sdk-appsync/...obileconnectors/appsync
AppSyncCallback.java
AppSyncPrefetchCallback.java
72:86 (18%)
53:67 (27%)
view
10 x 2 aws-android-sdk-appsync-...graphql/apollo/internal
aws-android-sdk-appsync-...graphql/apollo/internal
RealAppSyncCall.java
RealAppSyncPrefetch.java
383:392 (2%)
189:198 (8%)
view
10 x 2 aws-android-sdk-appsync-...graphql/apollo/internal
aws-android-sdk-appsync-...graphql/apollo/internal
RealAppSyncPrefetch.java
RealAppSyncQueryWatcher.java
189:198 (8%)
206:215 (7%)
view
10 x 2 aws-android-sdk-appsync-...pollo/internal/response
aws-android-sdk-appsync-...pollo/internal/response
RealResponseReader.java
RealResponseReader.java
61:73 (4%)
78:90 (4%)
view
10 x 2 aws-android-sdk-appsync-...pollo/internal/response
aws-android-sdk-appsync-...pollo/internal/response
RealResponseReader.java
RealResponseReader.java
61:73 (4%)
95:107 (4%)
view
10 x 2 aws-android-sdk-appsync-...graphql/apollo/internal
aws-android-sdk-appsync-...graphql/apollo/internal
RealAppSyncCall.java
RealAppSyncQueryWatcher.java
366:375 (2%)
189:198 (7%)
view
10 x 2 aws-android-sdk-appsync-...graphql/apollo/internal
aws-android-sdk-appsync-...graphql/apollo/internal
RealAppSyncCall.java
RealAppSyncQueryWatcher.java
383:392 (2%)
206:215 (7%)
view
10 x 2 aws-android-sdk-appsync-...pollo/internal/response
aws-android-sdk-appsync-...pollo/internal/response
RealResponseReader.java
RealResponseReader.java
78:90 (4%)
95:107 (4%)
view
9 x 2 aws-android-sdk-appsync-...graphql/apollo/internal
aws-android-sdk-appsync-...graphql/apollo/internal
RealAppSyncPrefetch.java
RealAppSyncQueryWatcher.java
173:182 (7%)
176:185 (6%)
view
9 x 2 aws-android-sdk-appsync-...graphql/apollo/internal
aws-android-sdk-appsync-...graphql/apollo/internal
RealAppSyncCall.java
RealAppSyncQueryWatcher.java
193:202 (2%)
97:106 (6%)
view
Duplicated Units
The list of top 4 duplicated units.
See data for all 4 unit duplicates...
Size#FoldersFilesLinesCode
7 x 2 app/src/main/java/com/amazonaws/postsapp
app/src/main/java/com/amazonaws/postsapp
AddPostActivity.java
UpdatePostActivity.java
50:59 
44:53 
view
7 x 2 aws-android-sdk-appsync/...obileconnectors/appsync
aws-android-sdk-appsync/...obileconnectors/appsync
AppSyncPrefetchCallback.java
AppSyncCallback.java
57:64 
76:83 
view
7 x 2 aws-android-sdk-appsync/...obileconnectors/appsync
aws-android-sdk-appsync/...obileconnectors/appsync
AppSyncPrefetchCallback.java
AppSyncCallback.java
77:84 
100:107 
view
6 x 2 aws-android-sdk-appsync/...obileconnectors/appsync
aws-android-sdk-appsync/...obileconnectors/appsync
SubscriptionAuthorizer.java
SubscriptionAuthorizer.java
236:242 
244:250 
view