summaryrefslogtreecommitdiff
path: root/src/com/p4square/grow/backend/feed/FeedDataProvider.java
blob: 6f090c06050e530400ae65c419d62ba3099321b3 (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
/*
 * Copyright 2013 Jesse Morgan
 */

package com.p4square.grow.backend.feed;

import java.util.Arrays;
import java.util.Collection;
import java.util.Collections;

import com.p4square.grow.model.MessageThread;
import com.p4square.grow.model.Message;
import com.p4square.grow.provider.CollectionProvider;

/**
 * Implementing this interface indicates you can provide a data source for the Feed.
 *
 * @author Jesse Morgan <jesse@jesterpm.net>
 */
public interface FeedDataProvider {
    public static final Collection<String> TOPICS = Collections.unmodifiableCollection(
            Arrays.asList(new String[] { "seeker", "believer", "disciple", "teacher", "leader" }));

    /**
     * @return a CollectionProvider of Threads.
     */
    CollectionProvider<String, String, MessageThread> getThreadProvider();

    /**
     * @return a CollectionProvider of Messages.
     */
    CollectionProvider<String, String, Message> getMessageProvider();
}