diff --git a/src/main/java/org/ntlab/nemophila/models/accounts/Account.java b/src/main/java/org/ntlab/nemophila/models/accounts/Account.java new file mode 100644 index 0000000..752f52c --- /dev/null +++ b/src/main/java/org/ntlab/nemophila/models/accounts/Account.java @@ -0,0 +1,10 @@ +package org.ntlab.nemophila.models.accounts; + +public class Account { + + //Accountから対応するFriendManagerを1つ呼び出す(初期化) + FriendManager friendManager = new FriendManager(); + public FriendManager getFriendManager() { + return friendManager; + } +} diff --git a/src/main/java/org/ntlab/nemophila/models/accounts/AccountManager.java b/src/main/java/org/ntlab/nemophila/models/accounts/AccountManager.java new file mode 100644 index 0000000..c8ecfb5 --- /dev/null +++ b/src/main/java/org/ntlab/nemophila/models/accounts/AccountManager.java @@ -0,0 +1,4 @@ +package org.ntlab.nemophila.models.accounts; + +public class AccountManager { +} diff --git a/src/main/java/org/ntlab/nemophila/models/accounts/FriendManager.java b/src/main/java/org/ntlab/nemophila/models/accounts/FriendManager.java new file mode 100644 index 0000000..2585447 --- /dev/null +++ b/src/main/java/org/ntlab/nemophila/models/accounts/FriendManager.java @@ -0,0 +1,17 @@ +package org.ntlab.nemophila.models.accounts; + +import java.util.ArrayList; + +public class FriendManager { + + private ArrayList requesting = new ArrayList<>(); + + public void addRequesting(Account to){} + + public ArrayList getRequesting() { + return requesting; + } + + public void removeRequesting(Account to){} + +} diff --git a/src/main/java/org/ntlab/nemophila/models/accounts/Post.java b/src/main/java/org/ntlab/nemophila/models/accounts/Post.java new file mode 100644 index 0000000..30c36f6 --- /dev/null +++ b/src/main/java/org/ntlab/nemophila/models/accounts/Post.java @@ -0,0 +1,4 @@ +package org.ntlab.nemophila.models.accounts; + +public class Post { +} diff --git a/src/main/java/org/ntlab/nemophila/models/shops/Shop.java b/src/main/java/org/ntlab/nemophila/models/shops/Shop.java new file mode 100644 index 0000000..59368ca --- /dev/null +++ b/src/main/java/org/ntlab/nemophila/models/shops/Shop.java @@ -0,0 +1,60 @@ +package org.ntlab.nemophila.models.shops; + +import com.fasterxml.jackson.annotation.JsonProperty; +import org.ntlab.nemophila.models.accounts.Post; +import java.util.ArrayList; + +public class Shop { + @JsonProperty("id") + private String id; + @JsonProperty("name") + private String name; + @JsonProperty("longitude") + private double longitude; + @JsonProperty("latitude") + private double latitude; + @JsonProperty("posts") + private ArrayList posts = new ArrayList<>(); + + //Getter + public String getId() { + return id; + } + public String getName() { + return name; + } + public double getLongitude() { + return longitude; + } + public double getLatitude() { + return latitude; + } + + //Setter + public void setId(String id) { + id = id; + } + public void setName(String name) { + name = name; + } + public void setLongitude(double longitude) { + longitude = longitude; + } + public void setLatitude(double latitude) { + latitude = latitude; + } + + //postsに関するメソッド + public void addPost(Post newPost) { + posts.add(newPost); + } + public void deletePost(Post post) { + posts.remove(post); + } + public Post getposts(int index) { + return posts.get(index); + } + public int getPostsCount() { + return posts.size(); + } +} diff --git a/src/main/java/org/ntlab/nemophila/models/shops/ShopManager.java b/src/main/java/org/ntlab/nemophila/models/shops/ShopManager.java new file mode 100644 index 0000000..eae8908 --- /dev/null +++ b/src/main/java/org/ntlab/nemophila/models/shops/ShopManager.java @@ -0,0 +1,35 @@ +package org.ntlab.nemophila.models.shops; +import java.util.HashMap; + +import java.util.HashMap; + +public class ShopManager { + private static ShopManager theInstance = null; + private HashMap shopsMap = new HashMap<>(); + + //コンストラクタにアクセス制限をつけることで,インスタンス生成できなくする + private ShopManager() { + } + + //インスタンスがなければ作成する + public static ShopManager getInstance() { + if (theInstance == null) { + theInstance = new ShopManager(); + } + return theInstance; + } + + //idからお店の情報を取得 + public Shop getShop(String id) { + return shopsMap.get(id); + } + + //お店のidとその店を紐づけて保存 + public void setShopsMap(Shop shop) { + shopsMap.put(shop.getId(), shop); + } + + public void deleteShop(String id) { + shopsMap.remove(id); + } +} diff --git a/src/main/java/org/ntlab/nemophila/resources/accounts/AccountPostRest.java b/src/main/java/org/ntlab/nemophila/resources/accounts/AccountPostRest.java new file mode 100644 index 0000000..64ced8c --- /dev/null +++ b/src/main/java/org/ntlab/nemophila/resources/accounts/AccountPostRest.java @@ -0,0 +1,26 @@ +package org.ntlab.nemophila.resources.accounts; + +import org.springframework.stereotype.Component; + +import javax.ws.rs.*; +import javax.ws.rs.core.MediaType; + +@Component +@Path("/accounts") +public class AccountPostRest { + @PUT + @Path("/{uid}/posts/{pid}") + @Produces(MediaType.APPLICATION_JSON) + public String getAccountPost(@PathParam("uid") String uid, @PathParam("pid") String pid, @FormParam("token") String token, + @FormParam("genre") String genre, @FormParam("image1") String image1, @FormParam("image2") String image2, + @FormParam("image3") String image3, @FormParam("rate") int rate, @FormParam("comment") String comment) { + + return null; + } + + @DELETE + @Path("/{uid}/posts/{pid}") + public void deleteAccountPost(@PathParam("uid") String uid, @PathParam("pid") String pid, @FormParam("token") String token){ + + } +} diff --git a/src/main/java/org/ntlab/nemophila/resources/accounts/AccountPostsRest.java b/src/main/java/org/ntlab/nemophila/resources/accounts/AccountPostsRest.java new file mode 100644 index 0000000..a3064fd --- /dev/null +++ b/src/main/java/org/ntlab/nemophila/resources/accounts/AccountPostsRest.java @@ -0,0 +1,27 @@ +package org.ntlab.nemophila.resources.accounts; + +import org.springframework.stereotype.Component; + +import javax.ws.rs.*; +import javax.ws.rs.core.MediaType; + +@Component +@Path("/accounts") + +public class AccountPostsRest { + @POST + @Path("/{uid}/posts") + @Produces(MediaType.APPLICATION_JSON) + public String postAccountPosts(@PathParam("uid") String uid, @FormParam("token") String token, @FormParam("genre") String genre, + @FormParam("image1") String img1, @FormParam("image2") String img2, @FormParam("image3") String img3, + @FormParam("rate") int rate, @FormParam("comment") String comme, @FormParam("sid") String sid){ + return null; + } + + @GET + @Path("/{uid}/posts") + @Produces(MediaType.APPLICATION_JSON) + public String getAccountPosts(@PathParam("uid") String uid){ + return null; + } +} diff --git a/src/main/java/org/ntlab/nemophila/resources/accounts/AccountRest.java b/src/main/java/org/ntlab/nemophila/resources/accounts/AccountRest.java new file mode 100644 index 0000000..59e202e --- /dev/null +++ b/src/main/java/org/ntlab/nemophila/resources/accounts/AccountRest.java @@ -0,0 +1,18 @@ +package org.ntlab.nemophila.resources.accounts; + + +import org.springframework.stereotype.Component; + +import javax.ws.rs.GET; +import javax.ws.rs.Path; +import javax.ws.rs.PathParam; + +@Component +@Path("/accounts") +public class AccountRest { + @GET + @Path("/{uid}") + public String getAccount(@PathParam("uid") String uid){ + return null; + } +} diff --git a/src/main/java/org/ntlab/nemophila/resources/accounts/AccountsRest.java b/src/main/java/org/ntlab/nemophila/resources/accounts/AccountsRest.java index bd730b7..846248c 100644 --- a/src/main/java/org/ntlab/nemophila/resources/accounts/AccountsRest.java +++ b/src/main/java/org/ntlab/nemophila/resources/accounts/AccountsRest.java @@ -3,12 +3,13 @@ import org.springframework.stereotype.Component; import javax.ws.rs.GET; +import javax.ws.rs.POST; import javax.ws.rs.Path; @Component @Path("/accounts") public class AccountsRest { - @GET + @POST public String getAccounts() { return null; } diff --git a/src/main/java/org/ntlab/nemophila/resources/accounts/FriendsRest.java b/src/main/java/org/ntlab/nemophila/resources/accounts/FriendsRest.java new file mode 100644 index 0000000..aafa8de --- /dev/null +++ b/src/main/java/org/ntlab/nemophila/resources/accounts/FriendsRest.java @@ -0,0 +1,17 @@ +package org.ntlab.nemophila.resources.accounts; + +import org.springframework.stereotype.Component; + +import javax.ws.rs.GET; +import javax.ws.rs.Path; +import javax.ws.rs.PathParam; + +@Component +@Path("/accounts") +public class FriendsRest { + @GET + @Path("/{uid}/friends") + public String getFriends(@PathParam("uid") String uid){ + return "Hello World"; + } +} diff --git a/src/main/java/org/ntlab/nemophila/resources/accounts/LoginRest.java b/src/main/java/org/ntlab/nemophila/resources/accounts/LoginRest.java new file mode 100644 index 0000000..3fb4a2a --- /dev/null +++ b/src/main/java/org/ntlab/nemophila/resources/accounts/LoginRest.java @@ -0,0 +1,14 @@ +package org.ntlab.nemophila.resources.accounts; + +import javax.ws.rs.POST; +import javax.ws.rs.Path; +import javax.ws.rs.PathParam; + + +public class LoginRest { + @POST + @Path("/{uid}/login") + public String getAccounts(@PathParam("uid") String uid, String pw) { + return null; + } +} diff --git a/src/main/java/org/ntlab/nemophila/resources/accounts/RequestingRest.java b/src/main/java/org/ntlab/nemophila/resources/accounts/RequestingRest.java new file mode 100644 index 0000000..a8de572 --- /dev/null +++ b/src/main/java/org/ntlab/nemophila/resources/accounts/RequestingRest.java @@ -0,0 +1,18 @@ +package org.ntlab.nemophila.resources.accounts; + +import org.springframework.stereotype.Component; + +import javax.ws.rs.GET; +import javax.ws.rs.Path; +import javax.ws.rs.PathParam; + +@Component +@Path("/accounts") +public class RequestingRest { + @GET + @Path("/{uid}/requesting") + public String getRequesting(@PathParam("uid") String uid) { + + return null; + } +} diff --git a/src/main/java/org/ntlab/nemophila/resources/shops/ShopsRest.java b/src/main/java/org/ntlab/nemophila/resources/shops/ShopsRest.java index 244259f..466ad61 100644 --- a/src/main/java/org/ntlab/nemophila/resources/shops/ShopsRest.java +++ b/src/main/java/org/ntlab/nemophila/resources/shops/ShopsRest.java @@ -2,51 +2,14 @@ import org.springframework.stereotype.Component; -import javax.ws.rs.*; -import javax.ws.rs.core.MediaType; -import java.util.Collection; +import javax.ws.rs.GET; +import javax.ws.rs.Path; @Component @Path("/shops") public class ShopsRest { @GET - public String getShops(@FormParam("monitor_upper_right_latitude")double urY, - @FormParam("monitor_upper_right_longitude")double urX, - @FormParam("monitor_lower_left_latitude")double llY, - @FormParam("monitor_lower_left_longitude " )double llX) { - - double x_ang = llX-urX; - double y_ang = llY-urY; - -// ShopManager sm = ShopManager.getInstance(); -// Collection shops = sm.getShops(); -// -// if ((llX > shops(lng) && urX < shops(lng))&&(llY > shops(lat) && urY < shops(lat))){ -// return Shop(sid); -// } -// return ShopManager(sid); - return null; - } - - - @POST -// @Produces(MediaType.APPLICATION_JSON) -// public ShopJson makeShops(@FormParam("shop_name") String sid, -// @FormParam("latitude") double lat, -// @FormParam("longtitude") double lng){ -// -// ShopManager sm = ShopManager.getInstance(); -// Shop shop = sm.SerchShop(sid); -// if (shop == null) { -// shop.addShop(sid); -// ShopJson sj = new ShopJson(shop); -// return Shop(sid); -// } -// return null; -// } - - @Path("/{sid}") - public String getAccount(@PathParam("sid") String sid) { + public String getShops() { return null; } } diff --git a/src/test/java/org/ntlab/nemophila/NemophilaApplicationTests.java b/src/test/java/org/ntlab/nemophila/NemophilaApplicationTests.java index bafc0ea..cfbc7d8 100644 --- a/src/test/java/org/ntlab/nemophila/NemophilaApplicationTests.java +++ b/src/test/java/org/ntlab/nemophila/NemophilaApplicationTests.java @@ -9,5 +9,4 @@ @Test void contextLoads() { } - }