NIMSDK-AOS  9.16.0
ChatRoomNotificationAttachment.java
浏览该文件的文档.
1 package com.netease.nimlib.sdk.chatroom.model;
2 
3 import androidx.annotation.NonNull;
4 
6 import com.netease.nimlib.session.MsgHelper;
7 import com.netease.nimlib.util.JSONHelper;
8 
9 import org.json.JSONArray;
10 import org.json.JSONObject;
11 
12 import java.util.ArrayList;
13 import java.util.Map;
14 
19 
20  private static final String TAG_TARGET = "target";
21  private static final String TAG_TARGET_NICK = "tarNick";
22  private static final String TAG_OPERATOR = "operator";
23  private static final String TAG_OPERATOR_NICK = "opeNick";
24  private static final String TAG_EXTENSION = "ext";
25  private static final String TAG_TAGS = "tags";
26 
30  private ArrayList<String> targets;
31 
35  private ArrayList<String> targetNicks;
36 
40  private String operator;
41 
45  private String operatorNick;
46 
50  private Map<String, Object> extension;
54  private ArrayList<String> tags;
55 
56  public ArrayList<String> getTargets() {
57  return targets;
58  }
59 
60  public ArrayList<String> getTargetNicks() {
61  return targetNicks;
62  }
63 
64  public String getOperator() {
65  return operator;
66  }
67 
68  public String getOperatorNick() {
69  return operatorNick;
70  }
71 
72  public Map<String, Object> getExtension() {
73  return extension;
74  }
75 
76  public ArrayList<String> getTags() {
77  return tags;
78  }
79 
80  @Override
81  public void parse(JSONObject json) {
82  if (json.has(TAG_TARGET)) {
83  JSONArray array = JSONHelper.getJSONArray(json, TAG_TARGET);
84  targets = new ArrayList<>(array.length());
85  for (int i = 0; i < array.length(); ++i) {
86  targets.add(JSONHelper.getString(array, i));
87  }
88  }
89 
90  if (json.has(TAG_TARGET_NICK)) {
91  JSONArray array = JSONHelper.getJSONArray(json, TAG_TARGET_NICK);
92  targetNicks = new ArrayList<>(array.length());
93  for (int i = 0; i < array.length(); ++i) {
94  targetNicks.add(JSONHelper.getString(array, i));
95  }
96  }
97 
98  if (json.has(TAG_OPERATOR)) {
99  operator = JSONHelper.getString(json, TAG_OPERATOR);
100  }
101 
102  if (json.has(TAG_OPERATOR_NICK)) {
103  operatorNick = JSONHelper.getString(json, TAG_OPERATOR_NICK);
104  }
105 
106  if (json.has(TAG_EXTENSION)) {
107  extension = MsgHelper.getMapFromJsonString(JSONHelper.getString(json, TAG_EXTENSION));
108  }
109 
110  if (json.has(TAG_TAGS)) {
111  String tagsString = JSONHelper.getString(json, TAG_TAGS);
112  JSONArray array = JSONHelper.parseArray(tagsString);
113  if (array != null) {
114  tags = new ArrayList<>(array.length());
115  for (int i = 0; i < array.length(); ++i) {
116  tags.add(JSONHelper.getString(array, i));
117  }
118  }
119  }
120  }
121 
122  @NonNull
123  @Override
124  public String toString() {
125  return "ChatRoomNotificationAttachment{" +
126  "targets=" + (targets == null ? "null" : targets.toString()) +
127  ", targetNicks=" + (targetNicks == null ? "null" : targetNicks.toString()) +
128  ", operator='" + operator + '\'' +
129  ", operatorNick='" + operatorNick + '\'' +
130  ", extension=" + extension +
131  ", tags=" + (tags == null ? "null" : tags.toString()) +
132  '}';
133  }
134 }