6170 |
17 Mar 21 |
nicklas |
1 |
package net.sf.basedb.varsearch.util; |
6170 |
17 Mar 21 |
nicklas |
2 |
|
6170 |
17 Mar 21 |
nicklas |
3 |
|
6170 |
17 Mar 21 |
nicklas |
4 |
import java.util.Map; |
6170 |
17 Mar 21 |
nicklas |
5 |
|
6170 |
17 Mar 21 |
nicklas |
6 |
import org.json.simple.JSONObject; |
6170 |
17 Mar 21 |
nicklas |
7 |
|
6170 |
17 Mar 21 |
nicklas |
8 |
|
6170 |
17 Mar 21 |
nicklas |
9 |
/** |
6170 |
17 Mar 21 |
nicklas |
Variant of a JSONObject that simply ignore null values in the put() and |
6170 |
17 Mar 21 |
nicklas |
putAll() methods. |
6170 |
17 Mar 21 |
nicklas |
@author nicklas |
6170 |
17 Mar 21 |
nicklas |
13 |
*/ |
6170 |
17 Mar 21 |
nicklas |
14 |
public class NullSafeJSONObject |
6170 |
17 Mar 21 |
nicklas |
15 |
extends JSONObject |
6170 |
17 Mar 21 |
nicklas |
16 |
{ |
6170 |
17 Mar 21 |
nicklas |
17 |
|
6170 |
17 Mar 21 |
nicklas |
18 |
private static final long serialVersionUID = -8821343382013571012L; |
6170 |
17 Mar 21 |
nicklas |
19 |
|
6170 |
17 Mar 21 |
nicklas |
20 |
@Override |
6170 |
17 Mar 21 |
nicklas |
21 |
public Object put(String key, Object value) |
6170 |
17 Mar 21 |
nicklas |
22 |
{ |
6170 |
17 Mar 21 |
nicklas |
23 |
return value == null ? null : super.put(key, value); |
6170 |
17 Mar 21 |
nicklas |
24 |
} |
6170 |
17 Mar 21 |
nicklas |
25 |
|
6170 |
17 Mar 21 |
nicklas |
26 |
@Override |
6170 |
17 Mar 21 |
nicklas |
27 |
public void putAll(Map<? extends String, ? extends Object> m) |
6170 |
17 Mar 21 |
nicklas |
28 |
{ |
6170 |
17 Mar 21 |
nicklas |
29 |
for (Map.Entry<? extends String, ? extends Object> entry : m.entrySet()) |
6170 |
17 Mar 21 |
nicklas |
30 |
{ |
6170 |
17 Mar 21 |
nicklas |
31 |
if (entry.getValue() != null) super.put(entry.getKey(), entry.getValue()); |
6170 |
17 Mar 21 |
nicklas |
32 |
} |
6170 |
17 Mar 21 |
nicklas |
33 |
super.putAll(m); |
6170 |
17 Mar 21 |
nicklas |
34 |
} |
6170 |
17 Mar 21 |
nicklas |
35 |
|
6170 |
17 Mar 21 |
nicklas |
36 |
} |