ParticipantDisplayItem.java 3.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140
  1. package com.nextcloud.talk.adapters;
  2. import android.text.TextUtils;
  3. import com.nextcloud.talk.utils.ApiUtils;
  4. import org.webrtc.EglBase;
  5. import org.webrtc.MediaStream;
  6. public class ParticipantDisplayItem {
  7. private String baseUrl;
  8. private String userId;
  9. private String session;
  10. private boolean connected;
  11. private String nick;
  12. private String urlForAvatar;
  13. private MediaStream mediaStream;
  14. private String streamType;
  15. private boolean streamEnabled;
  16. private EglBase rootEglBase;
  17. private boolean isAudioEnabled;
  18. public ParticipantDisplayItem(String baseUrl, String userId, String session, boolean connected, String nick, MediaStream mediaStream, String streamType, boolean streamEnabled, EglBase rootEglBase) {
  19. this.baseUrl = baseUrl;
  20. this.userId = userId;
  21. this.session = session;
  22. this.connected = connected;
  23. this.nick = nick;
  24. this.mediaStream = mediaStream;
  25. this.streamType = streamType;
  26. this.streamEnabled = streamEnabled;
  27. this.rootEglBase = rootEglBase;
  28. this.updateUrlForAvatar();
  29. }
  30. public String getUserId() {
  31. return userId;
  32. }
  33. public void setUserId(String userId) {
  34. this.userId = userId;
  35. this.updateUrlForAvatar();
  36. }
  37. public String getSession() {
  38. return session;
  39. }
  40. public void setSession(String session) {
  41. this.session = session;
  42. }
  43. public boolean isConnected() {
  44. return connected;
  45. }
  46. public void setConnected(boolean connected) {
  47. this.connected = connected;
  48. }
  49. public String getNick() {
  50. return nick;
  51. }
  52. public void setNick(String nick) {
  53. this.nick = nick;
  54. this.updateUrlForAvatar();
  55. }
  56. public String getUrlForAvatar() {
  57. return urlForAvatar;
  58. }
  59. private void updateUrlForAvatar() {
  60. if (!TextUtils.isEmpty(userId)) {
  61. urlForAvatar = ApiUtils.getUrlForAvatar(baseUrl, userId, true);
  62. } else {
  63. urlForAvatar = ApiUtils.getUrlForGuestAvatar(baseUrl, nick, true);
  64. }
  65. }
  66. public MediaStream getMediaStream() {
  67. return mediaStream;
  68. }
  69. public void setMediaStream(MediaStream mediaStream) {
  70. this.mediaStream = mediaStream;
  71. }
  72. public String getStreamType() {
  73. return streamType;
  74. }
  75. public void setStreamType(String streamType) {
  76. this.streamType = streamType;
  77. }
  78. public boolean isStreamEnabled() {
  79. return streamEnabled;
  80. }
  81. public void setStreamEnabled(boolean streamEnabled) {
  82. this.streamEnabled = streamEnabled;
  83. }
  84. public EglBase getRootEglBase() {
  85. return rootEglBase;
  86. }
  87. public void setRootEglBase(EglBase rootEglBase) {
  88. this.rootEglBase = rootEglBase;
  89. }
  90. public boolean isAudioEnabled() {
  91. return isAudioEnabled;
  92. }
  93. public void setAudioEnabled(boolean audioEnabled) {
  94. isAudioEnabled = audioEnabled;
  95. }
  96. @Override
  97. public String toString() {
  98. return "ParticipantSession{" +
  99. "userId='" + userId + '\'' +
  100. ", session='" + session + '\'' +
  101. ", nick='" + nick + '\'' +
  102. ", urlForAvatar='" + urlForAvatar + '\'' +
  103. ", mediaStream=" + mediaStream +
  104. ", streamType='" + streamType + '\'' +
  105. ", streamEnabled=" + streamEnabled +
  106. ", rootEglBase=" + rootEglBase +
  107. '}';
  108. }
  109. }