summaryrefslogtreecommitdiff
path: root/src/main/java/com/p4square/grow/frontend/ProgressReporter.java
blob: 9f1e184d1140bc08481a2701301a5b9e6114c8dd (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
package com.p4square.grow.frontend;

import com.p4square.grow.model.Chapters;
import org.restlet.security.User;

import java.io.IOException;
import java.util.Date;

/**
 * A ProgressReporter is used to record a User's progress in a Church Management System.
 */
public interface ProgressReporter {

    /**
     * Report that the User completed the assessment.
     *
     * @param user The user who completed the assessment.
     * @param level The assessment level.
     * @param date The completion date.
     * @param results Result information (e.g. json of the results).
     */
    void reportAssessmentComplete(User user, String level, Date date, String results) throws IOException;

    /**
     * Report that the User completed the chapter.
     *
     * @param user The user who completed the chapter.
     * @param chapter The chapter completed.
     * @param date The completion date.
     */
    void reportChapterComplete(User user, Chapters chapter, Date date) throws IOException;
}