diff --git a/src/main/java/org/ntlab/acanthus_server/entities/Editor.java b/src/main/java/org/ntlab/acanthus_server/entities/Editor.java index a69560e..961ab86 100644 --- a/src/main/java/org/ntlab/acanthus_server/entities/Editor.java +++ b/src/main/java/org/ntlab/acanthus_server/entities/Editor.java @@ -1,4 +1,5 @@ package org.ntlab.acanthus_server.entities; public class Editor { + public Editor(){} } diff --git a/src/main/java/org/ntlab/acanthus_server/resources/accounts/InvitedRest.java b/src/main/java/org/ntlab/acanthus_server/resources/accounts/InvitedRest.java new file mode 100644 index 0000000..3d81b47 --- /dev/null +++ b/src/main/java/org/ntlab/acanthus_server/resources/accounts/InvitedRest.java @@ -0,0 +1,59 @@ +package org.ntlab.acanthus_server.resources.accounts; + +import org.ntlab.acanthus_server.entities.Animation; +import org.ntlab.acanthus_server.models.Accounts; +import org.springframework.stereotype.Component; +import javax.ws.rs.*; +import javax.ws.rs.core.MediaType; +import java.util.Collection; +import java.util.Collections; + +@Component +@Path("/accounts") +public class InvitedRest { + + private Accounts accounts = Accounts.getInstance(); + + /** + *accountごとの招待されている作品の表示 + *トークン認証 + * + */ + @Path("/{uid}/invited") + @GET + @Produces(MediaType.APPLICATION_JSON) + public boolean getAccountInvited(@PathParam("uid") int uid, @QueryParam("token") String token, @QueryParam("aid") int aid){ + var account = accounts.getAccountByUid(uid); + + /*if(account != null && account.getToken().equals(token)){ + + }else{ + //ユーザーID、トークンが間違っている時のレスポンス + throw new WebApplicationException(401); + }*/ + return true; + } + + /** + * 作品に招待されたときgalleryのinvitesとaccountのinvitedにそれぞれuid,aidを追加する + */ + @Path("/{uid}/invited") + @PUT + @Produces(MediaType.APPLICATION_JSON) + public void addAccountInvited(@PathParam("uid") int uid, @FormParam("token") String token){ + + } + + /** + * 招待に応じた時 + * それぞれのinviteからuid,aidを削除し、Accountのworkにaid、galleryのeditorsにuidを追加する + * 招待を拒否した時 + * それぞれのinviteからuid,aidを削除する + */ + @Path("/{uid}/invited") + @DELETE + @Produces(MediaType.APPLICATION_JSON) + public void removeAccountInvited(@PathParam("uid") int uid, @FormParam("token") String token){ + + } +} \ No newline at end of file diff --git a/src/main/java/org/ntlab/acanthus_server/resources/accounts/InvitesRest.java b/src/main/java/org/ntlab/acanthus_server/resources/accounts/InvitesRest.java deleted file mode 100644 index ecfb61a..0000000 --- a/src/main/java/org/ntlab/acanthus_server/resources/accounts/InvitesRest.java +++ /dev/null @@ -1,10 +0,0 @@ -package org.ntlab.acanthus_server.resources.accounts; - -import org.springframework.stereotype.Component; -import javax.ws.rs.*; - -@Component -@Path("/accounts/invites") - -public class InvitesRest{ -} diff --git a/src/main/java/org/ntlab/acanthus_server/resources/gallery/LayersRest.java b/src/main/java/org/ntlab/acanthus_server/resources/gallery/LayersRest.java index 5f781bb..911b322 100644 --- a/src/main/java/org/ntlab/acanthus_server/resources/gallery/LayersRest.java +++ b/src/main/java/org/ntlab/acanthus_server/resources/gallery/LayersRest.java @@ -4,21 +4,27 @@ import javax.ws.rs.*; import javax.ws.rs.core.MediaType; +import java.util.ArrayList; @Component @Path("/gallery") public class LayersRest { + /* + * 指定したレイヤー情報(順番、枚数)を獲得 + * @PathParam Integer aid 作品ID + */ + @Path("/{aid}/pageMap/0/layers/0") @GET @Produces(MediaType.APPLICATION_JSON) - public void getLayersRest(@PathParam("aid") Integer aid, @QueryParam("layerNo") Integer layerNo, @QueryParam("pid") Integer pid) { - + public ArrayList getLayersRest(@PathParam("aid") Integer aid) { + return null; /* if() { } */ - throw new WebApplicationException(404); +/**/ } } diff --git a/src/main/java/org/ntlab/acanthus_server/resources/gallery/StrokesRest.java b/src/main/java/org/ntlab/acanthus_server/resources/gallery/StrokesRest.java index c826e63..f7ed29a 100644 --- a/src/main/java/org/ntlab/acanthus_server/resources/gallery/StrokesRest.java +++ b/src/main/java/org/ntlab/acanthus_server/resources/gallery/StrokesRest.java @@ -11,19 +11,30 @@ @Path("/gallery") public class StrokesRest { - /** - *指定したレイヤー情報(順番、枚数)を獲得メソッド。 - * @param aid 作品id + /* + * 何かを書き始めた時strokeNoを取得しペン情報、色情報、太さ情報、座標情報を追加する + * @PathParam Integer aid 作品のID + * @FormParam Integer uid ページのID + * @FormParam Integer uidToken トークン + * @Formparam Optional pen ペン情報 + * @Formparam Optional color 色情報 + * @Formparam Optional thick 太さ情報 */ @Path("/{aid}/pageMap/0/layers/0/strokes") @POST @Produces(MediaType.APPLICATION_JSON) - public String addStrokes(@PathParam("aid") String aid, @FormParam("uid") Integer uid, @FormParam("uidToken") Integer uidToken, + public String addStrokes(@PathParam("aid") Integer aid, @FormParam("uid") Integer uid, @FormParam("uidToken") Integer uidToken, @FormParam("pen") Optional pen, @FormParam("color") Optional color, @FormParam("thick") Optional thick) { return null; } + /* + * 全座標値を取得する + * @PathParam Integer aid 作品のID + * @PathParam Integer strokeNo 線番号 + */ + @Path("/{aid}/pageMap/0/layers/0/strokes/{strokeNo}/position") @GET @Produces(MediaType.APPLICATION_JSON) @@ -31,10 +42,17 @@ return null; } + /* + * 座標情報の追加 + * @PathParam Integer aid 作品のID + * @FormParam Integer x x座標 + * @FormParam Integer y y座標 + */ + @Path("/{aid}/pageMap/0/layers/0/strokes/{strokeNo}/position") @POST @Produces(MediaType.APPLICATION_JSON) - public String addPositions(@PathParam("aid") String aid, @FormParam("x") Integer x, @FormParam("y") Integer y) { + public String addPositions(@PathParam("aid") Integer aid, @FormParam("x") Integer x, @FormParam("y") Integer y) { return null; } }