firebase / FirebaseUI-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
  • 9% duplication:
    • 10,105 cleaned lines of cleaned code (without empty lines, comments, and frequently duplicated constructs such as imports)
    • 998 duplicated lines
  • 90 duplicates
system9% (998 lines)
Duplication per Extension
java8% (783 lines)
kts51% (203 lines)
kt6% (12 lines)
Duplication per Component (primary)
app20% (267 lines)
auth3% (262 lines)
database31% (220 lines)
firestore24% (117 lines)
internal43% (31 lines)
storage27% (29 lines)
common19% (29 lines)
library61% (22 lines)
lint20% (21 lines)
scripts0% (0 lines)
buildSrc0% (0 lines)
ROOT0% (0 lines)

Duplication Between Components (50+ lines)

G database database firestore firestore database--firestore 239 storage storage database--storage 56 firestore--storage 50 common common common--database 56 common--firestore 50 common--storage 58

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 90 duplicates...
Size#FoldersFilesLinesCode
29 x 2 common
storage
build.gradle.kts
build.gradle.kts
1:46 (87%)
1:46 (87%)
view
28 x 2 app/src/main/java/com/fi...demo/database/firestore
app/src/main/java/com/fi...idemo/database/realtime
FirestoreChatActivity.java
RealtimeDbChatActivity.java
75:118 (32%)
61:104 (37%)
view
22 x 2 common
library
build.gradle.kts
build.gradle.kts
1:32 (66%)
1:32 (64%)
view
22 x 2 library
storage
build.gradle.kts
build.gradle.kts
1:32 (64%)
1:32 (66%)
view
21 x 2 database
firestore
build.gradle.kts
build.gradle.kts
24:55 (46%)
20:51 (43%)
view
18 x 2 database/src/main/java/com/firebase/ui/database
database/src/main/java/com/firebase/ui/database
FirebaseListAdapter.java
FirebaseRecyclerAdapter.java
74:101 (30%)
90:117 (23%)
view
18 x 2 database
storage
build.gradle.kts
build.gradle.kts
19:43 (40%)
17:41 (54%)
view
18 x 2 common
database
build.gradle.kts
build.gradle.kts
17:41 (54%)
19:43 (40%)
view
18 x 2 database/src/main/java/com/firebase/ui/database
firestore/src/main/java/com/firebase/ui/firestore
FirebaseRecyclerOptions.java
FirestoreRecyclerOptions.java
29:80 (33%)
29:76 (35%)
view
15 x 2 firestore
storage
build.gradle.kts
build.gradle.kts
20:39 (31%)
22:41 (45%)
view
15 x 2 common
firestore
build.gradle.kts
build.gradle.kts
22:41 (45%)
20:39 (31%)
view
14 x 2 internal/lintchecks
storage
build.gradle.kts
build.gradle.kts
18:36 (53%)
17:35 (42%)
view
14 x 2 database
internal/lintchecks
build.gradle.kts
build.gradle.kts
19:37 (31%)
18:36 (53%)
view
14 x 2 app/src/main/java/com/fi...demo/database/firestore
app/src/main/java/com/fi...idemo/database/realtime
FirestorePagingActivity.java
FirebaseDbPagingActivity.java
96:120 (13%)
98:122 (13%)
view
14 x 2 common
internal/lintchecks
build.gradle.kts
build.gradle.kts
17:35 (42%)
18:36 (53%)
view
13 x 2 app/src/main/java/com/fi...demo/database/firestore
app/src/main/java/com/fi...idemo/database/realtime
FirestorePagingActivity.java
FirebaseDbPagingActivity.java
177:196 (12%)
174:193 (12%)
view
13 x 2 app/src/main/java/com/fi...demo/database/firestore
app/src/main/java/com/fi...idemo/database/realtime
FirestorePagingActivity.java
FirebaseDbPagingActivity.java
71:86 (12%)
66:81 (12%)
view
12 x 2 internal/lintchecks
library
build.gradle.kts
build.gradle.kts
18:33 (46%)
17:32 (35%)
view
12 x 2 database
library
build.gradle.kts
build.gradle.kts
19:34 (26%)
17:32 (35%)
view
12 x 2 database/src/main/java/com/firebase/ui/database
firestore/src/main/java/com/firebase/ui/firestore
FirebaseRecyclerAdapter.java
FirestoreRecyclerAdapter.java
128:146 (15%)
105:123 (16%)
view
Duplicated Units
The list of top 5 duplicated units.
See data for all 5 unit duplicates...
Size#FoldersFilesLinesCode
15 x 2 firestore/src/main/java/com/firebase/ui/firestore
database/src/main/java/com/firebase/ui/database
FirestoreRecyclerAdapter.java
FirebaseRecyclerAdapter.java
103:121 
126:144 
view
9 x 2 app/src/main/java/com/fi...demo/database/firestore
app/src/main/java/com/fi...idemo/database/realtime
FirestoreChatActivity.java
RealtimeDbChatActivity.java
96:106 
82:92 
view
7 x 2 auth/src/main/java/com/firebase/ui/auth/ui
auth/src/main/java/com/firebase/ui/auth/ui
InvisibleActivityBase.java
InvisibleFragmentBase.java
54:62 
51:59 
view
6 x 2 firestore/src/main/java/com/firebase/ui/firestore
database/src/main/java/com/firebase/ui/database
FirestoreRecyclerAdapter.java
FirebaseRecyclerAdapter.java
36:43 
39:46 
view
6 x 2 app/src/main/java/com/fi...demo/database/firestore
app/src/main/java/com/fi...idemo/database/realtime
FirestoreChatActivity.java
RealtimeDbChatActivity.java
81:87 
67:73 
view