1 package com.panogenesis.service;
2
3 import java.util.List;
4
5 import com.panogenesis.model.Issue;
6 import com.panogenesis.model.Project;
7 import com.panogenesis.model.User;
8 import com.panogenesis.dao.IssueDAO;
9
10 public interface IssueManager extends Manager {
11
12 /***
13 * Setter for DAO, convenient for unit testing
14 */
15 public void setIssueDAO(IssueDAO issueDAO);
16 /***
17 * Retrieves all of the issues
18 */
19 public List getIssues(Issue issue);
20 /***
21 * Retrieves all of the issues
22 */
23 public List getCreatedIssuesByUsername(String username);
24
25 /***
26 * Retrieves all of the issues
27 */
28 public List getOwnedIssuesByUsername(String username);
29
30
31 /***
32 * Gets issue's information based on id.
33 * @param id the issue's id
34 * @return issue populated issue object
35 */
36 public Issue getIssue(final String id);
37
38 /***
39 * Saves a issue's information
40 * @param issue the object to be saved
41 */
42 public void saveIssue(Issue issue);
43
44 /***
45 * Removes a issue from the database by id
46 * @param id the issue's id
47 */
48 public void removeIssue(final String id);
49
50 }
51