aboutsummaryrefslogtreecommitdiffstats
path: root/libs/emojicon/src/main/java/github/ankushsachdeva/emojicon/EmojiconGroup.java
blob: 22ac8f88923ca175e79fe06578466ac9b2cd9538 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
package github.ankushsachdeva.emojicon;

import android.content.Context;

import java.util.ArrayList;
import java.util.List;

/**
 * Created by aleksandr.naumov on 14.05.2015.
 */
abstract class EmojiconGroup {
    protected final int mIconResId;

    public EmojiconGroup(int iconResId) {
        mIconResId = iconResId;
    }

    public static EmojiconGroup fromString(String allEmojicons, int mIconResId) {
        return new StaticEmojiconGroup(extractEmojicons(allEmojicons), mIconResId);
    }

    private static List<Emojicon> extractEmojicons(String emojiconsString) {
        List<Emojicon> emojicons = new ArrayList<>();
        for (String emojiconString : emojiconsString.split(" ")) {
            if(!emojiconString.isEmpty()) {
                emojicons.add(new Emojicon(emojiconString));
            }
        }
        return emojicons;
    }

    public abstract List<Emojicon> getEmojicons();

    public abstract EmojiAdapter createAdapter(Context context);

    public int getIconResId() {
        return mIconResId;
    }
}