diff --git a/src/main/java/org/ntlab/amaryllis/server/entities/Voicememo.java b/src/main/java/org/ntlab/amaryllis/server/entities/Voicememo.java index 8597a6d..2cd0c94 100644 --- a/src/main/java/org/ntlab/amaryllis/server/entities/Voicememo.java +++ b/src/main/java/org/ntlab/amaryllis/server/entities/Voicememo.java @@ -21,7 +21,7 @@ private ArrayList categories = new ArrayList<>(); private HashMap commentMap = new HashMap<>(); - public Voicememo(String vid, String uid, Integer time, String url, double latitude, double longitude, String title, String summary) { + public Voicememo(String vid, String uid, Integer time, String url, double latitude, double longitude, String title, String summary, ArrayList categories) { Calendar upload = Calendar.getInstance(); @@ -34,6 +34,7 @@ setLongitude(longitude); setTitle(title); setSummary(summary); + setCategories(categories); this.times = 0; this.favos = 0; } @@ -149,6 +150,10 @@ favos = favolist.size(); } + public void setCategories(ArrayList categories) { + this.categories = categories; + } + public ArrayList getCategory(){ return categories; } public void addCategory(String categoryId){ diff --git a/src/main/java/org/ntlab/amaryllis/server/models/Voicememos.java b/src/main/java/org/ntlab/amaryllis/server/models/Voicememos.java index cda9373..7fd014b 100644 --- a/src/main/java/org/ntlab/amaryllis/server/models/Voicememos.java +++ b/src/main/java/org/ntlab/amaryllis/server/models/Voicememos.java @@ -2,10 +2,7 @@ import org.ntlab.amaryllis.server.entities.Voicememo; -import java.util.ArrayList; -import java.util.Collection; -import java.util.HashMap; -import java.util.UUID; +import java.util.*; public class Voicememos { @@ -36,12 +33,12 @@ } - public Voicememo createVoicememo(String vid, String uid, Integer time, String url, double latitude, double longitude, String title, String summary) { + public Voicememo createVoicememo(String vid, String uid, Integer time, String url, double latitude, double longitude, String title, String summary, ArrayList categories) { if (vid == null || uid == null || time == null || url == null || title == null) { return null; } - Voicememo newVoicememo = new Voicememo(vid, uid, time, url, latitude, longitude, title, summary); + Voicememo newVoicememo = new Voicememo(vid, uid, time, url, latitude, longitude, title, summary, categories); voiceMap.put(vid,newVoicememo); return newVoicememo; diff --git a/src/main/java/org/ntlab/amaryllis/server/resources/VoicememosRest.java b/src/main/java/org/ntlab/amaryllis/server/resources/VoicememosRest.java index 2ddbd87..7fa5309 100644 --- a/src/main/java/org/ntlab/amaryllis/server/resources/VoicememosRest.java +++ b/src/main/java/org/ntlab/amaryllis/server/resources/VoicememosRest.java @@ -14,7 +14,7 @@ import javax.ws.rs.*; import javax.ws.rs.core.MediaType; import java.io.IOException; -import java.util.ArrayList; +import java.util.*; import static org.ntlab.amaryllis.server.models.Voicememos.createVid; @@ -39,12 +39,16 @@ b.setToken("hoge_token"); } + { - voicememos.createVoicememo("vid", "test", 1, "url", 3, 3, "a", "a"); - voicememos.createVoicememo("vid1", "test", 1, "url", 34.4346, 135.1647, "a", "a"); - voicememos.createVoicememo("vid2", "test", 1, "url", 34.4347, 135.1645, "a", "a"); - voicememos.createVoicememo("vid3", "test", 1, "url", 34.4348, 135.1646, "b", "a"); - voicememos.createVoicememo("vid4", "test", 1, "url", 34.4345, 135.1648, "c", "a"); + List c1 = new ArrayList(Arrays.asList("c01", "c02")); + List c2 = new ArrayList(Arrays.asList("c01")); + List c3 = new ArrayList(Arrays.asList( "c02")); + voicememos.createVoicememo("vid", "test", 1, "url", 3, 3, "a", "a", (ArrayList) c1); + voicememos.createVoicememo("vid1", "test", 1, "url", 35.4346, 135.1647, "a", "a", (ArrayList) c2); + voicememos.createVoicememo("vid2", "test", 1, "url", 34.4347, 135.1645, "a", "a", (ArrayList) c3); + voicememos.createVoicememo("vid3", "test", 1, "url", 34.4348, 136.1646, "b", "a", (ArrayList) c1); + voicememos.createVoicememo("vid4", "test", 1, "url", 35.4345, 136.1648, "c", "a", (ArrayList) c2); } @GET @@ -82,7 +86,7 @@ @POST @Produces(MediaType.APPLICATION_JSON) - public Voicememo addVoicememo(@FormParam("token") String client_token, @FormParam("uid") String uid, @FormParam("time") Integer time, @FormParam("data") String data, @FormParam("latitude") Double latitude, @FormParam("longitude") Double longitude, @FormParam("title") String title, @FormParam("summary") String summary) { + public Voicememo addVoicememo(@FormParam("token") String client_token, @FormParam("uid") String uid, @FormParam("time") Integer time, @FormParam("data") String data, @FormParam("latitude") Double latitude, @FormParam("longitude") Double longitude, @FormParam("title") String title, @FormParam("summary") String summary, @FormParam("categories") List category) { if (client_token == null || uid == null || time == null || data == null || latitude == null || longitude == null || title == null) { throw new WebApplicationException(400); } @@ -102,7 +106,8 @@ throw new WebApplicationException(500); } String url = "http://nitta-lab-www.is.konan-u.ac.jp" + path; - Voicememo v = voicememos.createVoicememo(vid, uid, time, url, latitude, longitude, title, summary); + ArrayList categories = (ArrayList) category; + Voicememo v = voicememos.createVoicememo(vid, uid, time, url, latitude, longitude, title, summary, categories); if (v == null) { throw new WebApplicationException(400); }