diff options
Diffstat (limited to 'src/main/java/de/pixart/messenger/entities')
-rw-r--r-- | src/main/java/de/pixart/messenger/entities/Conversation.java | 8 | ||||
-rw-r--r-- | src/main/java/de/pixart/messenger/entities/MucOptions.java | 15 |
2 files changed, 22 insertions, 1 deletions
diff --git a/src/main/java/de/pixart/messenger/entities/Conversation.java b/src/main/java/de/pixart/messenger/entities/Conversation.java index 082877ef7..fac28056f 100644 --- a/src/main/java/de/pixart/messenger/entities/Conversation.java +++ b/src/main/java/de/pixart/messenger/entities/Conversation.java @@ -515,6 +515,14 @@ public class Conversation extends AbstractEntity implements Blockable, Comparabl } } + public int getNumberOfParticipants() { + if (getMode() == MODE_MULTI) { + return getMucOptions().NumberOfUsers(); + } else { + return 0; + } + } + public String getAccountUuid() { return this.accountUuid; } diff --git a/src/main/java/de/pixart/messenger/entities/MucOptions.java b/src/main/java/de/pixart/messenger/entities/MucOptions.java index d3d0e3e9e..51345df04 100644 --- a/src/main/java/de/pixart/messenger/entities/MucOptions.java +++ b/src/main/java/de/pixart/messenger/entities/MucOptions.java @@ -542,12 +542,15 @@ public class MucOptions { } } - public ArrayList<User> getUsersWithChatState(ChatState state) { + public ArrayList<User> getUsersWithChatState(ChatState state, int max) { synchronized (users) { ArrayList<User> list = new ArrayList<>(); for (User user : users) { if (user.chatState == state) { list.add(user); + if (list.size() >= max) { + break; + } } } return list; @@ -628,6 +631,16 @@ public class MucOptions { return this.subject; } + public int NumberOfUsers() { + if (users.size() >= 1) { + return users.size(); + } else { + return 0; + } + } + + + public String createNameFromParticipants() { if (users.size() >= 1) { StringBuilder builder = new StringBuilder(); |