You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@felix.apache.org by cz...@apache.org on 2018/07/25 13:15:42 UTC
svn commit: r1836628 -
/felix/trunk/configurator/src/main/java/org/apache/felix/configurator/impl/json/JSONUtil.java
Author: cziegeler
Date: Wed Jul 25 13:15:42 2018
New Revision: 1836628
URL: http://svn.apache.org/viewvc?rev=1836628&view=rev
Log:
FELIX-5891 : Keep order of properties and objects. Apply patch from Andrei Tuicu
Modified:
felix/trunk/configurator/src/main/java/org/apache/felix/configurator/impl/json/JSONUtil.java
Modified: felix/trunk/configurator/src/main/java/org/apache/felix/configurator/impl/json/JSONUtil.java
URL: http://svn.apache.org/viewvc/felix/trunk/configurator/src/main/java/org/apache/felix/configurator/impl/json/JSONUtil.java?rev=1836628&r1=1836627&r2=1836628&view=diff
==============================================================================
--- felix/trunk/configurator/src/main/java/org/apache/felix/configurator/impl/json/JSONUtil.java (original)
+++ felix/trunk/configurator/src/main/java/org/apache/felix/configurator/impl/json/JSONUtil.java Wed Jul 25 13:15:42 2018
@@ -27,15 +27,7 @@ import java.io.StringWriter;
import java.io.Writer;
import java.net.URL;
import java.net.URLConnection;
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.Dictionary;
-import java.util.Enumeration;
-import java.util.HashMap;
-import java.util.Hashtable;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
+import java.util.*;
import javax.json.Json;
import javax.json.JsonArray;
@@ -201,7 +193,7 @@ public class JSONUtil {
int ranking = 0;
ConfigPolicy policy = ConfigPolicy.DEFAULT;
- final Dictionary<String, Object> properties = new Hashtable<>();
+ final Dictionary<String, Object> properties = new OrderedDictionary<>();
boolean valid = true;
for(final String mapKey : mainMap.keySet()) {
final Object value = mainMap.get(mapKey);
@@ -375,7 +367,7 @@ public class JSONUtil {
}
return array;
// type OBJECT -> return map
- case OBJECT : final Map<String, Object> map = new HashMap<>();
+ case OBJECT : final Map<String, Object> map = new LinkedHashMap<>();
final JsonObject obj = (JsonObject)value;
for(final Map.Entry<String, JsonValue> entry : obj.entrySet()) {
map.put(entry.getKey(), getValue(entry.getValue()));