diff --git a/app/src/main/java/com/example/tampopo_client/models/Chatroom.java b/app/src/main/java/com/example/tampopo_client/models/Chatroom.java index 74622ba..4fe8b21 100644 --- a/app/src/main/java/com/example/tampopo_client/models/Chatroom.java +++ b/app/src/main/java/com/example/tampopo_client/models/Chatroom.java @@ -1,49 +1,134 @@ package com.example.tampopo_client.models; +import java.util.ArrayList; +import java.util.List; + public class Chatroom { - private String chatroomId; // チャットルームのID - private String partnerUserId; // 相手ユーザーID - private String user1Id; // 1人目のユーザーID - private String user2Id; // 2人目のユーザーID - public Chatroom() {} - public Chatroom(String chatroomId, String user1Id, String user2Id) { - this.chatroomId = chatroomId; + private String chatRoomId; + private String user0Id; + private String user1Id; + private String newContent; + private String chatRoomNumber; // サーバーにも存在するので保持 + private List messages = new ArrayList<>(); + private List users = new ArrayList<>(); + + // --- コンストラクタ --- + public Chatroom() { + } + + public Chatroom(String chatRoomId, String user0Id, String user1Id) { + this.chatRoomId = chatRoomId; + this.user0Id = user0Id; this.user1Id = user1Id; - this.user2Id = user2Id; + this.users.add(user0Id); + this.users.add(user1Id); } - - public Chatroom(String chatroomId,String partnerUserId) { - this.chatroomId = chatroomId; - this.partnerUserId = partnerUserId; + // --- Getter / Setter --- + public String getChatRoomId() { + return chatRoomId; } - public String getChatroomId() { - return chatroomId; + public void setChatRoomId(String chatRoomId) { + this.chatRoomId = chatRoomId; } - public void setChatroomId(String chatroomId) { - this.chatroomId = chatroomId; + public String getUser0Id() { + return user0Id; + } + + public void setUser0Id(String user0Id) { + this.user0Id = user0Id; } public String getUser1Id() { return user1Id; } - - - public String getUser2Id() { - return user2Id; + public void setUser1Id(String user1Id) { + this.user1Id = user1Id; } - - public String getPartnerUserId() { - return partnerUserId; + public String getNewContent() { + return newContent; } - public void setPartnerUserId(String partnerUserId) { - this.partnerUserId = partnerUserId; + public void setNewContent(String newContent) { + this.newContent = newContent; } -} + public String getChatRoomNumber() { + return chatRoomNumber; + } + + public void setChatRoomNumber(String chatRoomNumber) { + this.chatRoomNumber = chatRoomNumber; + } + + public List getMessages() { + return messages; + } + + public void setMessages(List messages) { + this.messages = messages; + } + + public List getUsers() { + return users; + } + + public void setUsers(List users) { + this.users = users; + } + + // --- メッセージ追加 --- + public void addMessage(String senderId, String content) { + messages.add(new Message(senderId, content)); + } + + // --- ユーザー操作 --- + public void addUser(String userId) { + if (!users.contains(userId)) { + users.add(userId); + } + } + + public boolean removeUser(String userId) { + return users.remove(userId); + } + + public boolean isEmpty() { + return users.isEmpty(); + } + + // --- 内部クラス Message --- + public static class Message { + private String senderId; + private String content; + + public Message() { + } + + public Message(String senderId, String content) { + this.senderId = senderId; + this.content = content; + } + + public String getSenderId() { + return senderId; + } + + public void setSenderId(String senderId) { + this.senderId = senderId; + } + + public String getContent() { + return content; + } + + public void setContent(String content) { + this.content = content; + } + } +} \ No newline at end of file