Project

General

Profile

« Previous | Next » 

Revision 57671

1. Schema changes: Move each entity on its own collection - each entity keeps ids for its sub-entities.
2. New controllers for each entity: TopicController.java, CategoryController.java, SubCategoryController.java, IndicatorController.java.
3. New DAOs for each entity: TopicDAO.java, MongoDBTopicDAO.java, CategoryDAO.java, MongoDBCategoryDAO.java, SubCategoryDAO.java, MongoDBSubCategoryDAO.java.
4. New custom Exceptions: EntityNotFoundException.java, PathNotValidException.java.
5. ExceptionsHandler.java: Handle new EntityNotFoundException (id not in db) and PathNotValidException (id exists in db but not in path given).

View differences:

Stakeholder.java
14 14
}
15 15

  
16 16

  
17
public class Stakeholder {
17
public class Stakeholder<StringOrTopic> {
18 18
    @Id
19 19
    @JsonProperty("_id")
20 20
    private String id;
......
31 31
    private Date updateDate;
32 32
    private List<String> managers;
33 33

  
34
    private List<Topic> topics;
34
    private List<StringOrTopic> topics;
35 35

  
36 36
    public Stakeholder() {}
37 37
    public Stakeholder(Stakeholder stakeholder) {
38
        id = stakeholder.getId();
38 39
        type = stakeholder.getType();
39 40
        index_id = stakeholder.getIndex_id();
40 41
        index_name = stakeholder.getIndex_name();
......
144 145
        this.managers = managers;
145 146
    }
146 147

  
147
    public List<Topic> getTopics() {
148
    public List<StringOrTopic> getTopics() {
148 149
        return topics;
149 150
    }
150 151

  
151
    public void setTopics(List<Topic> topics) {
152
    public void setTopics(List<StringOrTopic> topics) {
152 153
        this.topics = topics;
153 154
    }
154 155
}

Also available in: Unified diff