NIMSDK-AOS  10.9.71
V2NIMSignallingAcceptInviteParams.java
浏览该文件的文档.
1 package com.netease.nimlib.sdk.v2.avsignalling.params;
2 
3 import android.text.TextUtils;
4 import com.netease.nimlib.SDKCacheUI;
5 import com.netease.nimlib.log.NimLog;
6 import java.util.Objects;
7 
8 /**
9  * 接受别人邀请加入信令房间请求参数
10  */
12 
13  private static final String TAG = "V2NIMSignallingAcceptInviteParams";
14 
15  /**
16  * 信令频道ID,唯一标识了该频道房间
17  */
18  private final String channelId;
19  /**
20  * 邀请者账号ID
21  */
22  private final String inviterAccountId;
23  /**
24  * 请求ID,可以用UUID实现,主要为了便于业务实现请求响应绑定
25  */
26  private final String requestId;
27  /**
28  * 服务器扩展字段,长度限制4096,json格式
29  */
30  private String serverExtension;
31  /**
32  * 是否需要存离线消息。true:需要。false:不需要
33  */
34  private boolean offlineEnabled = true;
35 
37  this(null, null, null);
38  }
39 
40  /**
41  * 构造函数
42  *
43  * @param channelId 信令频道ID
44  * @param inviterAccountId 邀请者账号ID
45  * @param requestId 请求ID
46  */
47  public V2NIMSignallingAcceptInviteParams(String channelId, String inviterAccountId, String requestId) {
48  this.channelId = channelId;
49  this.inviterAccountId = inviterAccountId;
50  this.requestId = requestId;
51  }
52 
53  /**
54  * 获取信令频道ID
55  *
56  * @return 信令频道ID
57  */
58  public String getChannelId() {
59  return channelId;
60  }
61 
62 
63  /**
64  * 获取邀请者账号ID
65  *
66  * @return 邀请者账号ID
67  */
68  public String getInviterAccountId() {
69  return inviterAccountId;
70  }
71 
72  /**
73  * 获取请求ID
74  *
75  * @return 请求ID
76  */
77  public String getRequestId() {
78  return requestId;
79  }
80 
81  /**
82  * 获取服务器扩展字段
83  *
84  * @return 服务器扩展字段
85  */
86  public String getServerExtension() {
87  return serverExtension;
88  }
89 
90  /**
91  * 设置服务器扩展字段
92  *
93  * @param serverExtension 服务器扩展字段
94  */
95  public void setServerExtension(String serverExtension) {
96  this.serverExtension = serverExtension;
97  }
98 
99  /**
100  * 是否需要存离线消息
101  *
102  * @return 是否需要存离线消息
103  */
104  public boolean isOfflineEnabled() {
105  return offlineEnabled;
106  }
107 
108  /**
109  * 设置是否需要存离线消息
110  *
111  * @param offlineEnabled 是否需要存离线消息
112  */
113  public void setOfflineEnabled(boolean offlineEnabled) {
114  this.offlineEnabled = offlineEnabled;
115  }
116 
117  /**
118  * 参数是否合法
119  * @return 是否合法
120  */
121  public boolean isValid(){
122  if(TextUtils.isEmpty(channelId)){
123  NimLog.e(TAG,"channelId is invalid");
124  return false;
125  }
126  if(TextUtils.isEmpty(inviterAccountId)){
127  NimLog.e(TAG,"inviterAccountId is invalid");
128  return false;
129  }
130  if(Objects.equals(inviterAccountId, SDKCacheUI.getAccount())){
131  NimLog.e(TAG,"inviterAccountId can not be self account");
132  return false;
133  }
134  if(TextUtils.isEmpty(requestId)){
135  NimLog.e(TAG,"requestId is invalid");
136  return false;
137  }
138  return true;
139  }
140 
141  /**
142  * 接受别人邀请加入信令房间请求参数构造器
143  */
144  public static class Builder {
145 
146  private final V2NIMSignallingAcceptInviteParams params;
147 
148  /**
149  * 构造接受别人邀请加入信令房间请求参数构造器
150  *
151  * @param channelId 信令频道ID
152  * @param inviterAccountId 邀请者账号ID
153  * @param requestId 请求ID
154  */
155  public Builder(String channelId, String inviterAccountId, String requestId) {
156  params = new V2NIMSignallingAcceptInviteParams(channelId, inviterAccountId, requestId);
157  }
158 
159  /**
160  * 设置服务器扩展字段
161  *
162  * @param serverExtension 服务器扩展字段
163  * @return Builder
164  */
165  public Builder serverExtension(String serverExtension) {
166  params.setServerExtension(serverExtension);
167  return this;
168  }
169 
170  /**
171  * 设置是否需要存离线消息
172  *
173  * @param offlineEnabled 是否需要存离线消息
174  * @return Builder
175  */
176  public Builder offlineEnabled(boolean offlineEnabled) {
177  params.setOfflineEnabled(offlineEnabled);
178  return this;
179  }
180 
181  /**
182  * 构建接受别人邀请加入信令房间请求参数
183  *
184  * @return 接受别人邀请加入信令房间请求参数
185  */
186  public V2NIMSignallingAcceptInviteParams build() {
187  return params;
188  }
189  }
190 }
V2NIMSignallingAcceptInviteParams(String channelId, String inviterAccountId, String requestId)
构造函数