MCPcopy Create free account
hub / github.com/bttv-android/bttv / appendToBadges

Method appendToBadges

mod/app/src/main/java/bttv/Badges.java:34–71  ·  view source on GitHub ↗
(ChatMessageInfo chatMessageInfo, List<MessageBadge> originalBadges)

Source from the content-addressed store, hash-verified

32 * Appends our badges to the list of badges if the user has any
33 */
34 public static void appendToBadges(ChatMessageInfo chatMessageInfo, List<MessageBadge> originalBadges) {
35 String userId = String.valueOf(chatMessageInfo.getUserInfo().getUserId());
36
37 List<BTTVBadge> ourBadges = userToBadgesMap.get(userId);
38
39 if (ourBadges == null) {
40 Log.d(TAG, "appendToBadges(" + userId + "): ourBadges: null");
41 return;
42 }
43
44 Log.d(TAG, "appendToBadges(" + userId + "): ourBadges: " + Arrays.toString(ourBadges.toArray()));
45
46 // FFZ supports overwriting badges, so we might have to remove badges from the list later
47 ArrayList<String> keysToRemove = new ArrayList<>(1);
48
49 // Add new MessageBadges to list
50 for (int i = 0; i < ourBadges.size(); i++) {
51 BTTVBadge badge = ourBadges.get(i);
52 originalBadges.add(new MessageBadge(userId + "-" + i, BADGE_VERSION));
53 if (badge.removes != null) {
54 keysToRemove.add(badge.removes);
55 }
56 }
57
58 // Remove overwritten badges
59 for (String key : keysToRemove) {
60 MessageBadge target = null;
61 for (MessageBadge badge : originalBadges) {
62 if (badge.component1().equalsIgnoreCase(key)) {
63 target = badge;
64 break;
65 }
66 }
67 if (target != null) {
68 originalBadges.remove(target);
69 }
70 }
71 }
72
73 public static String getUrl(int _channelId, String badgeName, String badgeVersion) {
74 Log.d(TAG, "getUrl(" + badgeName + "): badgeVersion: " + badgeVersion);

Callers

nothing calls this directly

Calls 8

dMethod · 0.95
getUserIdMethod · 0.80
getUserInfoMethod · 0.80
addMethod · 0.80
removeMethod · 0.80
getMethod · 0.65
toStringMethod · 0.45
component1Method · 0.45

Tested by

no test coverage detected