Package com.ibm.json.java
Class OrderedJSONObject
- java.lang.Object
-
- java.util.AbstractMap<K,V>
-
- java.util.HashMap
-
- com.ibm.json.java.JSONObject
-
- com.ibm.json.java.OrderedJSONObject
-
- All Implemented Interfaces:
JSONArtifact
,java.io.Serializable
,java.lang.Cloneable
,java.util.Map
public class OrderedJSONObject extends JSONObject
Extension of the basic JSONObject. This class allows control of the serialization order of attributes. The order in which items are put into the instance controls the order in which they are serialized out. For example, the last item put is the last item serialized.
JSON-able values are: null, and instances of String, Boolean, Number, JSONObject and JSONArray.
Instances of this class are not thread-safe.- See Also:
- Serialized Form
-
-
Constructor Summary
Constructors Constructor Description OrderedJSONObject()
Create a new instance of this class.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description void
clear()
(non-Javadoc)java.lang.Object
clone()
Returns a shallow copy of this HashMap instance: the keys and values themselves are not cloned.java.util.Iterator
getOrder()
Method to obtain the order in which the items will be serialized.static JSONObject
parse(java.io.InputStream is)
Convert a stream of JSON text into object form.static JSONObject
parse(java.io.Reader reader)
Convert a stream (in reader form) of JSON text into object form.static JSONObject
parse(java.lang.String str)
Convert a String of JSON text into object form.java.lang.Object
put(java.lang.Object key, java.lang.Object value)
Method to put a JSON'able object into the instance.java.lang.Object
remove(java.lang.Object key)
Method to remove an entry from the OrderedJSONObject instance.-
Methods inherited from class com.ibm.json.java.JSONObject
isValidObject, isValidType, serialize, serialize, serialize, serialize, serialize, serialize, toString
-
-
-
-
Method Detail
-
parse
public static JSONObject parse(java.io.Reader reader) throws java.io.IOException
Convert a stream (in reader form) of JSON text into object form.- Parameters:
reader
- The reader from which the JSON data is read.- Returns:
- The contructed JSON Object. Note that the JSONObject will be an instance of OrderedJSONObject and as such, attribute order is maintained.
- Throws:
IOEXception
- Thrown if an underlying IO error from the reader occurs, or if malformed JSON is read,java.io.IOException
-
parse
public static JSONObject parse(java.lang.String str) throws java.io.IOException
Convert a String of JSON text into object form.- Parameters:
str
- The JSON string to parse into a Java Object.- Returns:
- The contructed JSON Object. Note that the JSONObject will be an instance of OrderedJSONObject and as such, attribute order is maintained.
- Throws:
IOEXception
- Thrown if malformed JSON is read,java.io.IOException
-
parse
public static JSONObject parse(java.io.InputStream is) throws java.io.IOException
Convert a stream of JSON text into object form.- Parameters:
is
- The InputStream from which to read the JSON. It will assume the input stream is in UTF-8 and read it as such.- Returns:
- The contructed JSON Object. Note that the JSONObject will be an instance of OrderedJSONObject and as such, attribute order is maintained.
- Throws:
IOEXception
- Thrown if an underlying IO error from the stream occurs, or if malformed JSON is read,java.io.IOException
-
put
public java.lang.Object put(java.lang.Object key, java.lang.Object value)
Method to put a JSON'able object into the instance. Note that the order of initial puts controls the order of serialization. Meaning that the first time an item is put into the object determines is position of serialization. Subsequent puts with the same key replace the existing entry value and leave serialization position alone. For moving the position, the object must be removed, then re-put.- Specified by:
put
in interfacejava.util.Map
- Overrides:
put
in classJSONObject
- See Also:
HashMap.put(java.lang.Object, java.lang.Object)
-
remove
public java.lang.Object remove(java.lang.Object key)
Method to remove an entry from the OrderedJSONObject instance.- Specified by:
remove
in interfacejava.util.Map
- Overrides:
remove
in classjava.util.HashMap
- See Also:
HashMap.remove(java.lang.Object)
-
clear
public void clear()
(non-Javadoc)- Specified by:
clear
in interfacejava.util.Map
- Overrides:
clear
in classjava.util.HashMap
- See Also:
HashMap.clear()
-
clone
public java.lang.Object clone()
Returns a shallow copy of this HashMap instance: the keys and values themselves are not cloned.- Overrides:
clone
in classjava.util.HashMap
-
getOrder
public java.util.Iterator getOrder()
Method to obtain the order in which the items will be serialized.- Returns:
- An iterator that represents the attribute names in the order that they will be serialized.
-
-