-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathSubmissionDao.java
38 lines (27 loc) · 959 Bytes
/
SubmissionDao.java
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
package dev.mahabal.optigrader.api.dao;
import dev.mahabal.optigrader.api.model.Submission;
import org.jdbi.v3.sqlobject.config.RegisterBeanMapper;
import org.jdbi.v3.sqlobject.customizer.Bind;
import org.jdbi.v3.sqlobject.customizer.BindFields;
import org.jdbi.v3.sqlobject.statement.SqlQuery;
import org.jdbi.v3.sqlobject.statement.SqlUpdate;
import org.jdbi.v3.stringtemplate4.UseStringTemplateSqlLocator;
import java.util.List;
/**
* @author Matthew
*/
@UseStringTemplateSqlLocator
public interface SubmissionDao {
@SqlUpdate
void createTable();
@SqlUpdate
void dropTable();
@SqlUpdate
void addSubmission(@BindFields final Submission test);
@SqlQuery
@RegisterBeanMapper(Submission.class)
List<Submission> getSubmissionsForTestCode(@Bind("testCode") final String testCode);
@SqlQuery
@RegisterBeanMapper(Submission.class)
List<Submission> getSubmissionsForNid(@Bind("nid") final String nid);
}