datarouter-prov code clean - remove tabs
[dmaap/datarouter.git] / datarouter-prov / src / main / java / org / onap / dmaap / datarouter / provisioning / utils / LOGJSONObject.java
index cbe87da..afb0de2 100644 (file)
@@ -9,9 +9,9 @@ package org.onap.dmaap.datarouter.provisioning.utils;
  * * Licensed under the Apache License, Version 2.0 (the "License");
  * * you may not use this file except in compliance with the License.
  * * You may obtain a copy of the License at
- * * 
+ * *
  *  *      http://www.apache.org/licenses/LICENSE-2.0
- * * 
+ * *
  *  * Unless required by applicable law or agreed to in writing, software
  * * distributed under the License is distributed on an "AS IS" BASIS,
  * * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
@@ -71,7 +71,7 @@ import org.json.JSONTokener;
  * <pre>
  * myString = new JSONObject().put(&quot;JSON&quot;, &quot;Hello, World!&quot;).toString();
  * </pre>
- *
+ * <p>
  * produces the string <code>{"JSON": "Hello, World"}</code>.
  * <p>
  * The texts produced by the <code>toString</code> methods strictly conform to
@@ -101,27 +101,28 @@ public class LOGJSONObject {
     /**
      * The maximum number of keys in the key pool.
      */
-     private static final int keyPoolSize = 100;
+    private static final int keyPoolSize = 100;
 
-   /**
+    /**
      * Key pooling is like string interning, but without permanently tying up
      * memory. To help conserve memory, storage of duplicated key strings in
      * JSONObjects will be avoided by using a key pool to manage unique key
      * string objects. This is used by JSONObject.put(string, object).
      */
-     private static Map<String,Object> keyPool = new LinkedHashMap<String,Object>(keyPoolSize);
+    private static Map<String, Object> keyPool = new LinkedHashMap<String, Object>(keyPoolSize);
 
     /**
      * JSONObject.NULL is equivalent to the value that JavaScript calls null,
      * whilst Java's null is equivalent to the value that JavaScript calls
      * undefined.
      */
-     private static final class Null {
+    private static final class Null {
 
         /**
          * There is only intended to be a single instance of the NULL object,
          * so the clone method returns itself.
-         * @return     NULL.
+         *
+         * @return NULL.
          */
         protected final Object clone() {
             return this;
@@ -129,9 +130,10 @@ public class LOGJSONObject {
 
         /**
          * A Null object is equal to the null value and to itself.
-         * @param object    An object to test for nullness.
+         *
+         * @param object An object to test for nullness.
          * @return true if the object parameter is the JSONObject.NULL object
-         *  or null.
+         * or null.
          */
         public boolean equals(Object object) {
             return object == null || object == this;
@@ -139,6 +141,7 @@ public class LOGJSONObject {
 
         /**
          * Get the "null" string value.
+         *
          * @return The string "null".
          */
         public String toString() {
@@ -150,7 +153,7 @@ public class LOGJSONObject {
     /**
      * The map where the JSONObject's properties are kept.
      */
-    private final Map<String,Object> map;
+    private final Map<String, Object> map;
 
 
     /**
@@ -166,7 +169,7 @@ public class LOGJSONObject {
      * Construct an empty JSONObject.
      */
     public LOGJSONObject() {
-        this.map = new LinkedHashMap<String,Object>();
+        this.map = new LinkedHashMap<String, Object>();
     }
 
 
@@ -174,10 +177,11 @@ public class LOGJSONObject {
      * Construct a JSONObject from a subset of another JSONObject.
      * An array of strings is used to identify the keys that should be copied.
      * Missing keys are ignored.
-     * @param jo A JSONObject.
+     *
+     * @param jo    A JSONObject.
      * @param names An array of strings.
      * @throws JSONException
-     * @exception JSONException If a value is a non-finite number or if a name is duplicated.
+     * @throws JSONException If a value is a non-finite number or if a name is duplicated.
      */
     public LOGJSONObject(LOGJSONObject jo, String[] names) {
         this();
@@ -192,9 +196,10 @@ public class LOGJSONObject {
 
     /**
      * Construct a JSONObject from a JSONTokener.
+     *
      * @param x A JSONTokener object containing the source string.
      * @throws JSONException If there is a syntax error in the source string
-     *  or a duplicated key.
+     *                       or a duplicated key.
      */
     public LOGJSONObject(JSONTokener x) throws JSONException {
         this();
@@ -204,16 +209,16 @@ public class LOGJSONObject {
         if (x.nextClean() != '{') {
             throw x.syntaxError("A JSONObject text must begin with '{'");
         }
-        for (;;) {
+        for (; ; ) {
             c = x.nextClean();
             switch (c) {
-            case 0:
-                throw x.syntaxError("A JSONObject text must end with '}'");
-            case '}':
-                return;
-            default:
-                x.back();
-                key = x.nextValue().toString();
+                case 0:
+                    throw x.syntaxError("A JSONObject text must end with '}'");
+                case '}':
+                    return;
+                default:
+                    x.back();
+                    key = x.nextValue().toString();
             }
 
 // The key is followed by ':'. We will also tolerate '=' or '=>'.
@@ -231,17 +236,17 @@ public class LOGJSONObject {
 // Pairs are separated by ','. We will also tolerate ';'.
 
             switch (x.nextClean()) {
-            case ';':
-            case ',':
-                if (x.nextClean() == '}') {
+                case ';':
+                case ',':
+                    if (x.nextClean() == '}') {
+                        return;
+                    }
+                    x.back();
+                    break;
+                case '}':
                     return;
-                }
-                x.back();
-                break;
-            case '}':
-                return;
-            default:
-                throw x.syntaxError("Expected a ',' or '}'");
+                default:
+                    throw x.syntaxError("Expected a ',' or '}'");
             }
         }
     }
@@ -251,15 +256,15 @@ public class LOGJSONObject {
      * Construct a JSONObject from a Map.
      *
      * @param map A map object that can be used to initialize the contents of
-     *  the JSONObject.
+     *            the JSONObject.
      * @throws JSONException
      */
-    public LOGJSONObject(Map<String,Object> map) {
-        this.map = new LinkedHashMap<String,Object>();
+    public LOGJSONObject(Map<String, Object> map) {
+        this.map = new LinkedHashMap<String, Object>();
         if (map != null) {
-            Iterator<Map.Entry<String,Object>> i = map.entrySet().iterator();
+            Iterator<Map.Entry<String, Object>> i = map.entrySet().iterator();
             while (i.hasNext()) {
-                Map.Entry<String,Object> e = i.next();
+                Map.Entry<String, Object> e = i.next();
                 Object value = e.getValue();
                 if (value != null) {
                     this.map.put(e.getKey(), wrap(value));
@@ -276,17 +281,17 @@ public class LOGJSONObject {
      * with <code>"get"</code> or <code>"is"</code> followed by an uppercase letter,
      * the method is invoked, and a key and the value returned from the getter method
      * are put into the new JSONObject.
-     *
+     * <p>
      * The key is formed by removing the <code>"get"</code> or <code>"is"</code> prefix.
      * If the second remaining character is not upper case, then the first
      * character is converted to lower case.
-     *
+     * <p>
      * For example, if an object has a method named <code>"getName"</code>, and
      * if the result of calling <code>object.getName()</code> is <code>"Larry Fine"</code>,
      * then the JSONObject will contain <code>"name": "Larry Fine"</code>.
      *
      * @param bean An object that has getter methods that should be used
-     * to make a JSONObject.
+     *             to make a JSONObject.
      */
     public LOGJSONObject(Object bean) {
         this();
@@ -300,10 +305,11 @@ public class LOGJSONObject {
      * from the names array, and the values will be the field values associated
      * with those keys in the object. If a key is not found or not visible,
      * then it will not be copied into the new JSONObject.
+     *
      * @param object An object that has fields that should be used to make a
-     * JSONObject.
-     * @param names An array of strings, the names of the fields to be obtained
-     * from the object.
+     *               JSONObject.
+     * @param names  An array of strings, the names of the fields to be obtained
+     *               from the object.
      */
     public LOGJSONObject(Object object, String names[]) {
         this();
@@ -321,11 +327,12 @@ public class LOGJSONObject {
     /**
      * Construct a JSONObject from a source JSON text string.
      * This is the most commonly used JSONObject constructor.
-     * @param source    A string beginning
-     *  with <code>{</code>&nbsp;<small>(left brace)</small> and ending
-     *  with <code>}</code>&nbsp;<small>(right brace)</small>.
-     * @exception JSONException If there is a syntax error in the source
-     *  string or a duplicated key.
+     *
+     * @param source A string beginning
+     *               with <code>{</code>&nbsp;<small>(left brace)</small> and ending
+     *               with <code>}</code>&nbsp;<small>(right brace)</small>.
+     * @throws JSONException If there is a syntax error in the source
+     *                       string or a duplicated key.
      */
     public LOGJSONObject(String source) throws JSONException {
         this(new JSONTokener(source));
@@ -334,8 +341,9 @@ public class LOGJSONObject {
 
     /**
      * Construct a JSONObject from a ResourceBundle.
+     *
      * @param baseName The ResourceBundle base name.
-     * @param locale The Locale to load the ResourceBundle for.
+     * @param locale   The Locale to load the ResourceBundle for.
      * @throws JSONException If any JSONExceptions are detected.
      */
     public LOGJSONObject(String baseName, Locale locale) throws JSONException {
@@ -354,7 +362,7 @@ public class LOGJSONObject {
 // segment except the last. Add the value using the last segment's name into
 // the deepest nested JSONObject.
 
-                String[] path = ((String)key).split("\\.");
+                String[] path = ((String) key).split("\\.");
                 int last = path.length - 1;
                 LOGJSONObject target = this;
                 for (int i = 0; i < last; i += 1) {
@@ -366,7 +374,7 @@ public class LOGJSONObject {
                     }
                     target = nextTarget;
                 }
-                target.put(path[last], bundle.getString((String)key));
+                target.put(path[last], bundle.getString((String) key));
             }
         }
     }
@@ -378,19 +386,20 @@ public class LOGJSONObject {
      * JSONArray is stored under the key to hold all of the accumulated values.
      * If there is already a JSONArray, then the new value is appended to it.
      * In contrast, the put method replaces the previous value.
-     *
+     * <p>
      * If only one value is accumulated that is not a JSONArray, then the
      * result will be the same as using put. But if multiple values are
      * accumulated, then the result will be like append.
+     *
      * @param key   A key string.
      * @param value An object to be accumulated under the key.
      * @return this.
      * @throws JSONException If the value is an invalid number
-     *  or if the key is null.
+     *                       or if the key is null.
      */
     public LOGJSONObject accumulate(
-        String key,
-        Object value
+            String key,
+            Object value
     ) throws JSONException {
         testValidity(value);
         Object object = this.opt(key);
@@ -399,7 +408,7 @@ public class LOGJSONObject {
                     ? new JSONArray().put(value)
                     : value);
         } else if (object instanceof JSONArray) {
-            ((JSONArray)object).put(value);
+            ((JSONArray) object).put(value);
         } else {
             this.put(key, new JSONArray().put(object).put(value));
         }
@@ -412,11 +421,12 @@ public class LOGJSONObject {
      * JSONObject, then the key is put in the JSONObject with its value being a
      * JSONArray containing the value parameter. If the key was already
      * associated with a JSONArray, then the value parameter is appended to it.
+     *
      * @param key   A key string.
      * @param value An object to be accumulated under the key.
      * @return this.
      * @throws JSONException If the key is null or if the current value
-     *  associated with the key is not a JSONArray.
+     *                       associated with the key is not a JSONArray.
      */
     public LOGJSONObject append(String key, Object value) throws JSONException {
         testValidity(value);
@@ -424,7 +434,7 @@ public class LOGJSONObject {
         if (object == null) {
             this.put(key, new JSONArray().put(value));
         } else if (object instanceof JSONArray) {
-            this.put(key, ((JSONArray)object).put(value));
+            this.put(key, ((JSONArray) object).put(value));
         } else {
             throw new JSONException("JSONObject[" + key +
                     "] is not a JSONArray.");
@@ -436,7 +446,8 @@ public class LOGJSONObject {
     /**
      * Produce a string from a double. The string "null" will be returned if
      * the number is not finite.
-     * @param  d A double.
+     *
+     * @param d A double.
      * @return A String.
      */
     public static String doubleToString(double d) {
@@ -463,9 +474,9 @@ public class LOGJSONObject {
     /**
      * Get the value object associated with a key.
      *
-     * @param key   A key string.
-     * @return      The object associated with the key.
-     * @throws      JSONException if the key is not found.
+     * @param key A key string.
+     * @return The object associated with the key.
+     * @throws JSONException if the key is not found.
      */
     public Object get(String key) throws JSONException {
         if (key == null) {
@@ -483,20 +494,19 @@ public class LOGJSONObject {
     /**
      * Get the boolean value associated with a key.
      *
-     * @param key   A key string.
-     * @return      The truth.
-     * @throws      JSONException
-     *  if the value is not a Boolean or the String "true" or "false".
+     * @param key A key string.
+     * @return The truth.
+     * @throws JSONException if the value is not a Boolean or the String "true" or "false".
      */
     public boolean getBoolean(String key) throws JSONException {
         Object object = this.get(key);
         if (object.equals(Boolean.FALSE) ||
                 (object instanceof String &&
-                ((String)object).equalsIgnoreCase("false"))) {
+                        ((String) object).equalsIgnoreCase("false"))) {
             return false;
         } else if (object.equals(Boolean.TRUE) ||
                 (object instanceof String &&
-                ((String)object).equalsIgnoreCase("true"))) {
+                        ((String) object).equalsIgnoreCase("true"))) {
             return true;
         }
         throw new JSONException("JSONObject[" + quote(key) +
@@ -506,20 +516,21 @@ public class LOGJSONObject {
 
     /**
      * Get the double value associated with a key.
-     * @param key   A key string.
-     * @return      The numeric value.
+     *
+     * @param key A key string.
+     * @return The numeric value.
      * @throws JSONException if the key is not found or
-     *  if the value is not a Number object and cannot be converted to a number.
+     *                       if the value is not a Number object and cannot be converted to a number.
      */
     public double getDouble(String key) throws JSONException {
         Object object = this.get(key);
         try {
             return object instanceof Number
-                ? ((Number)object).doubleValue()
-                : Double.parseDouble((String)object);
+                    ? ((Number) object).doubleValue()
+                    : Double.parseDouble((String) object);
         } catch (Exception e) {
             throw new JSONException("JSONObject[" + quote(key) +
-                "] is not a number.");
+                    "] is not a number.");
         }
     }
 
@@ -527,20 +538,20 @@ public class LOGJSONObject {
     /**
      * Get the int value associated with a key.
      *
-     * @param key   A key string.
-     * @return      The integer value.
-     * @throws   JSONException if the key is not found or if the value cannot
-     *  be converted to an integer.
+     * @param key A key string.
+     * @return The integer value.
+     * @throws JSONException if the key is not found or if the value cannot
+     *                       be converted to an integer.
      */
     public int getInt(String key) throws JSONException {
         Object object = this.get(key);
         try {
             return object instanceof Number
-                ? ((Number)object).intValue()
-                : Integer.parseInt((String)object);
+                    ? ((Number) object).intValue()
+                    : Integer.parseInt((String) object);
         } catch (Exception e) {
             throw new JSONException("JSONObject[" + quote(key) +
-                "] is not an int.");
+                    "] is not an int.");
         }
     }
 
@@ -548,15 +559,15 @@ public class LOGJSONObject {
     /**
      * Get the JSONArray value associated with a key.
      *
-     * @param key   A key string.
-     * @return      A JSONArray which is the value.
-     * @throws      JSONException if the key is not found or
-     *  if the value is not a JSONArray.
+     * @param key A key string.
+     * @return A JSONArray which is the value.
+     * @throws JSONException if the key is not found or
+     *                       if the value is not a JSONArray.
      */
     public JSONArray getJSONArray(String key) throws JSONException {
         Object object = this.get(key);
         if (object instanceof JSONArray) {
-            return (JSONArray)object;
+            return (JSONArray) object;
         }
         throw new JSONException("JSONObject[" + quote(key) +
                 "] is not a JSONArray.");
@@ -566,15 +577,15 @@ public class LOGJSONObject {
     /**
      * Get the JSONObject value associated with a key.
      *
-     * @param key   A key string.
-     * @return      A JSONObject which is the value.
-     * @throws      JSONException if the key is not found or
-     *  if the value is not a JSONObject.
+     * @param key A key string.
+     * @return A JSONObject which is the value.
+     * @throws JSONException if the key is not found or
+     *                       if the value is not a JSONObject.
      */
     public LOGJSONObject getJSONObject(String key) throws JSONException {
         Object object = this.get(key);
         if (object instanceof LOGJSONObject) {
-            return (LOGJSONObject)object;
+            return (LOGJSONObject) object;
         }
         throw new JSONException("JSONObject[" + quote(key) +
                 "] is not a JSONObject.");
@@ -584,20 +595,20 @@ public class LOGJSONObject {
     /**
      * Get the long value associated with a key.
      *
-     * @param key   A key string.
-     * @return      The long value.
-     * @throws   JSONException if the key is not found or if the value cannot
-     *  be converted to a long.
+     * @param key A key string.
+     * @return The long value.
+     * @throws JSONException if the key is not found or if the value cannot
+     *                       be converted to a long.
      */
     public long getLong(String key) throws JSONException {
         Object object = this.get(key);
         try {
             return object instanceof Number
-                ? ((Number)object).longValue()
-                : Long.parseLong((String)object);
+                    ? ((Number) object).longValue()
+                    : Long.parseLong((String) object);
         } catch (Exception e) {
             throw new JSONException("JSONObject[" + quote(key) +
-                "] is not a long.");
+                    "] is not a long.");
         }
     }
 
@@ -649,24 +660,25 @@ public class LOGJSONObject {
     /**
      * Get the string associated with a key.
      *
-     * @param key   A key string.
-     * @return      A string which is the value.
-     * @throws   JSONException if there is no string value for the key.
+     * @param key A key string.
+     * @return A string which is the value.
+     * @throws JSONException if there is no string value for the key.
      */
     public String getString(String key) throws JSONException {
         Object object = this.get(key);
         if (object instanceof String) {
-            return (String)object;
+            return (String) object;
         }
         throw new JSONException("JSONObject[" + quote(key) +
-            "] not a string.");
+                "] not a string.");
     }
 
 
     /**
      * Determine if the JSONObject contains a specific key.
-     * @param key   A key string.
-     * @return      true if the key exists in the JSONObject.
+     *
+     * @param key A key string.
+     * @return true if the key exists in the JSONObject.
      */
     public boolean has(String key) {
         return this.map.containsKey(key);
@@ -677,23 +689,24 @@ public class LOGJSONObject {
      * Increment a property of a JSONObject. If there is no such property,
      * create one with a value of 1. If there is such a property, and if
      * it is an Integer, Long, Double, or Float, then add one to it.
-     * @param key  A key string.
+     *
+     * @param key A key string.
      * @return this.
      * @throws JSONException If there is already a property with this name
-     * that is not an Integer, Long, Double, or Float.
+     *                       that is not an Integer, Long, Double, or Float.
      */
     public LOGJSONObject increment(String key) throws JSONException {
         Object value = this.opt(key);
         if (value == null) {
             this.put(key, 1);
         } else if (value instanceof Integer) {
-            this.put(key, ((Integer)value).intValue() + 1);
+            this.put(key, ((Integer) value).intValue() + 1);
         } else if (value instanceof Long) {
-            this.put(key, ((Long)value).longValue() + 1);
+            this.put(key, ((Long) value).longValue() + 1);
         } else if (value instanceof Double) {
-            this.put(key, ((Double)value).doubleValue() + 1);
+            this.put(key, ((Double) value).doubleValue() + 1);
         } else if (value instanceof Float) {
-            this.put(key, ((Float)value).floatValue() + 1);
+            this.put(key, ((Float) value).floatValue() + 1);
         } else {
             throw new JSONException("Unable to increment [" + quote(key) + "].");
         }
@@ -703,10 +716,11 @@ public class LOGJSONObject {
 
     /**
      * Determine if the value associated with the key is null or if there is
-     *  no value.
-     * @param key   A key string.
-     * @return      true if there is no value associated with the key or if
-     *  the value is the JSONObject.NULL object.
+     * no value.
+     *
+     * @param key A key string.
+     * @return true if there is no value associated with the key or if
+     * the value is the JSONObject.NULL object.
      */
     public boolean isNull(String key) {
         return LOGJSONObject.NULL.equals(this.opt(key));
@@ -746,6 +760,7 @@ public class LOGJSONObject {
     /**
      * Produce a JSONArray containing the names of the elements of this
      * JSONObject.
+     *
      * @return A JSONArray containing the key strings, or null if the JSONObject
      * is empty.
      */
@@ -760,7 +775,8 @@ public class LOGJSONObject {
 
     /**
      * Produce a string from a Number.
-     * @param  number A Number
+     *
+     * @param number A Number
      * @return A String.
      * @throws JSONException If n is a non-finite number.
      */
@@ -789,8 +805,9 @@ public class LOGJSONObject {
 
     /**
      * Get an optional value associated with a key.
-     * @param key   A key string.
-     * @return      An object which is the value, or null if there is no value.
+     *
+     * @param key A key string.
+     * @return An object which is the value, or null if there is no value.
      */
     public Object opt(String key) {
         return key == null ? null : this.map.get(key);
@@ -802,8 +819,8 @@ public class LOGJSONObject {
      * It returns false if there is no such key, or if the value is not
      * Boolean.TRUE or the String "true".
      *
-     * @param key   A key string.
-     * @return      The truth.
+     * @param key A key string.
+     * @return The truth.
      */
     public boolean optBoolean(String key) {
         return this.optBoolean(key, false);
@@ -815,9 +832,9 @@ public class LOGJSONObject {
      * It returns the defaultValue if there is no such key, or if it is not
      * a Boolean or the String "true" or "false" (case insensitive).
      *
-     * @param key              A key string.
-     * @param defaultValue     The default.
-     * @return      The truth.
+     * @param key          A key string.
+     * @param defaultValue The default.
+     * @return The truth.
      */
     public boolean optBoolean(String key, boolean defaultValue) {
         try {
@@ -834,8 +851,8 @@ public class LOGJSONObject {
      * If the value is a string, an attempt will be made to evaluate it as
      * a number.
      *
-     * @param key   A string which is the key.
-     * @return      An object which is the value.
+     * @param key A string which is the key.
+     * @return An object which is the value.
      */
     public double optDouble(String key) {
         return this.optDouble(key, Double.NaN);
@@ -848,9 +865,9 @@ public class LOGJSONObject {
      * If the value is a string, an attempt will be made to evaluate it as
      * a number.
      *
-     * @param key   A key string.
-     * @param defaultValue     The default.
-     * @return      An object which is the value.
+     * @param key          A key string.
+     * @param defaultValue The default.
+     * @return An object which is the value.
      */
     public double optDouble(String key, double defaultValue) {
         try {
@@ -867,8 +884,8 @@ public class LOGJSONObject {
      * If the value is a string, an attempt will be made to evaluate it as
      * a number.
      *
-     * @param key   A key string.
-     * @return      An object which is the value.
+     * @param key A key string.
+     * @return An object which is the value.
      */
     public int optInt(String key) {
         return this.optInt(key, 0);
@@ -881,9 +898,9 @@ public class LOGJSONObject {
      * If the value is a string, an attempt will be made to evaluate it as
      * a number.
      *
-     * @param key   A key string.
-     * @param defaultValue     The default.
-     * @return      An object which is the value.
+     * @param key          A key string.
+     * @param defaultValue The default.
+     * @return An object which is the value.
      */
     public int optInt(String key, int defaultValue) {
         try {
@@ -899,12 +916,12 @@ public class LOGJSONObject {
      * It returns null if there is no such key, or if its value is not a
      * JSONArray.
      *
-     * @param key   A key string.
-     * @return      A JSONArray which is the value.
+     * @param key A key string.
+     * @return A JSONArray which is the value.
      */
     public JSONArray optJSONArray(String key) {
         Object o = this.opt(key);
-        return o instanceof JSONArray ? (JSONArray)o : null;
+        return o instanceof JSONArray ? (JSONArray) o : null;
     }
 
 
@@ -913,12 +930,12 @@ public class LOGJSONObject {
      * It returns null if there is no such key, or if its value is not a
      * JSONObject.
      *
-     * @param key   A key string.
-     * @return      A JSONObject which is the value.
+     * @param key A key string.
+     * @return A JSONObject which is the value.
      */
     public LOGJSONObject optJSONObject(String key) {
         Object object = this.opt(key);
-        return object instanceof LOGJSONObject ? (LOGJSONObject)object : null;
+        return object instanceof LOGJSONObject ? (LOGJSONObject) object : null;
     }
 
 
@@ -928,8 +945,8 @@ public class LOGJSONObject {
      * If the value is a string, an attempt will be made to evaluate it as
      * a number.
      *
-     * @param key   A key string.
-     * @return      An object which is the value.
+     * @param key A key string.
+     * @return An object which is the value.
      */
     public long optLong(String key) {
         return this.optLong(key, 0);
@@ -944,7 +961,7 @@ public class LOGJSONObject {
      *
      * @param key          A key string.
      * @param defaultValue The default.
-     * @return             An object which is the value.
+     * @return An object which is the value.
      */
     public long optLong(String key, long defaultValue) {
         try {
@@ -960,8 +977,8 @@ public class LOGJSONObject {
      * It returns an empty string if there is no such key. If the value is not
      * a string and is not null, then it is converted to a string.
      *
-     * @param key   A key string.
-     * @return      A string which is the value.
+     * @param key A key string.
+     * @return A string which is the value.
      */
     public String optString(String key) {
         return this.optString(key, "");
@@ -972,9 +989,9 @@ public class LOGJSONObject {
      * Get an optional string associated with a key.
      * It returns the defaultValue if there is no such key.
      *
-     * @param key   A key string.
-     * @param defaultValue     The default.
-     * @return      A string which is the value.
+     * @param key          A key string.
+     * @param defaultValue The default.
+     * @return A string which is the value.
      */
     public String optString(String key, String defaultValue) {
         Object object = this.opt(key);
@@ -1015,10 +1032,10 @@ public class LOGJSONObject {
                             key = key.toLowerCase();
                         } else if (!Character.isUpperCase(key.charAt(1))) {
                             key = key.substring(0, 1).toLowerCase() +
-                                key.substring(1);
+                                    key.substring(1);
                         }
 
-                        Object result = method.invoke(bean, (Object[])null);
+                        Object result = method.invoke(bean, (Object[]) null);
                         if (result != null) {
                             this.map.put(key, wrap(result));
                         }
@@ -1047,9 +1064,10 @@ public class LOGJSONObject {
     /**
      * Put a key/value pair in the JSONObject, where the value will be a
      * JSONArray which is produced from a Collection.
+     *
      * @param key   A key string.
      * @param value A Collection value.
-     * @return      this.
+     * @return this.
      * @throws JSONException
      */
     public LOGJSONObject put(String key, Collection<Object> value) throws JSONException {
@@ -1103,9 +1121,10 @@ public class LOGJSONObject {
     /**
      * Put a key/value pair in the JSONObject, where the value will be a
      * JSONObject which is produced from a Map.
+     *
      * @param key   A key string.
      * @param value A Map value.
-     * @return      this.
+     * @return this.
      * @throws JSONException
      */
     public LOGJSONObject put(String key, Map<String, Object> value) throws JSONException {
@@ -1117,13 +1136,14 @@ public class LOGJSONObject {
     /**
      * Put a key/value pair in the JSONObject. If the value is null,
      * then the key will be removed from the JSONObject if it is present.
+     *
      * @param key   A key string.
      * @param value An object which is the value. It should be of one of these
-     *  types: Boolean, Double, Integer, JSONArray, JSONObject, Long, String,
-     *  or the JSONObject.NULL object.
+     *              types: Boolean, Double, Integer, JSONArray, JSONObject, Long, String,
+     *              or the JSONObject.NULL object.
      * @return this.
      * @throws JSONException If the value is non-finite number
-     *  or if the key is null.
+     *                       or if the key is null.
      */
     public LOGJSONObject put(String key, Object value) throws JSONException {
         String pooled;
@@ -1132,7 +1152,7 @@ public class LOGJSONObject {
         }
         if (value != null) {
             testValidity(value);
-            pooled = (String)keyPool.get(key);
+            pooled = (String) keyPool.get(key);
             if (pooled == null) {
                 if (keyPool.size() >= keyPoolSize) {
                     keyPool = new LinkedHashMap<String, Object>(keyPoolSize);
@@ -1153,6 +1173,7 @@ public class LOGJSONObject {
      * Put a key/value pair in the JSONObject, but only if the key and the
      * value are both non-null, and only if there is not already a member
      * with that name.
+     *
      * @param key
      * @param value
      * @return his.
@@ -1172,10 +1193,11 @@ public class LOGJSONObject {
     /**
      * Put a key/value pair in the JSONObject, but only if the
      * key and the value are both non-null.
+     *
      * @param key   A key string.
      * @param value An object which is the value. It should be of one of these
-     *  types: Boolean, Double, Integer, JSONArray, JSONObject, Long, String,
-     *  or the JSONObject.NULL object.
+     *              types: Boolean, Double, Integer, JSONArray, JSONObject, Long, String,
+     *              or the JSONObject.NULL object.
      * @return this.
      * @throws JSONException If the value is a non-finite number.
      */
@@ -1192,8 +1214,9 @@ public class LOGJSONObject {
      * right places. A backslash will be inserted within </, producing <\/,
      * allowing JSON text to be delivered in HTML. In JSON text, a string
      * cannot contain a control character or an unescaped quote or backslash.
+     *
      * @param string A String
-     * @return  A String correctly formatted for insertion in a JSON text.
+     * @return A String correctly formatted for insertion in a JSON text.
      */
     public static String quote(String string) {
         StringWriter sw = new StringWriter();
@@ -1224,42 +1247,42 @@ public class LOGJSONObject {
             b = c;
             c = string.charAt(i);
             switch (c) {
-            case '\\':
-            case '"':
-                w.write('\\');
-                w.write(c);
-                break;
-            case '/':
-                if (b == '<') {
+                case '\\':
+                case '"':
                     w.write('\\');
-                }
-                w.write(c);
-                break;
-            case '\b':
-                w.write("\\b");
-                break;
-            case '\t':
-                w.write("\\t");
-                break;
-            case '\n':
-                w.write("\\n");
-                break;
-            case '\f':
-                w.write("\\f");
-                break;
-            case '\r':
-                w.write("\\r");
-                break;
-            default:
-                if (c < ' ' || (c >= '\u0080' && c < '\u00a0')
-                        || (c >= '\u2000' && c < '\u2100')) {
-                    w.write("\\u");
-                    hhhh = Integer.toHexString(c);
-                    w.write("0000", 0, 4 - hhhh.length());
-                    w.write(hhhh);
-                } else {
                     w.write(c);
-                }
+                    break;
+                case '/':
+                    if (b == '<') {
+                        w.write('\\');
+                    }
+                    w.write(c);
+                    break;
+                case '\b':
+                    w.write("\\b");
+                    break;
+                case '\t':
+                    w.write("\\t");
+                    break;
+                case '\n':
+                    w.write("\\n");
+                    break;
+                case '\f':
+                    w.write("\\f");
+                    break;
+                case '\r':
+                    w.write("\\r");
+                    break;
+                default:
+                    if (c < ' ' || (c >= '\u0080' && c < '\u00a0')
+                            || (c >= '\u2000' && c < '\u2100')) {
+                        w.write("\\u");
+                        hhhh = Integer.toHexString(c);
+                        w.write("0000", 0, 4 - hhhh.length());
+                        w.write(hhhh);
+                    } else {
+                        w.write(c);
+                    }
             }
         }
         w.write('"');
@@ -1268,6 +1291,7 @@ public class LOGJSONObject {
 
     /**
      * Remove a name and its value, if present.
+     *
      * @param key The name to be removed.
      * @return The value that was associated with the name,
      * or null if there was no value.
@@ -1279,6 +1303,7 @@ public class LOGJSONObject {
     /**
      * Try to convert a string into a number, boolean, or null. If the string
      * can't be converted, return the string.
+     *
      * @param string A String.
      * @return A simple JSON value.
      */
@@ -1322,7 +1347,7 @@ public class LOGJSONObject {
                         return myLong;
                     }
                 }
-            }  catch (Exception ignore) {
+            } catch (Exception ignore) {
             }
         }
         return string;
@@ -1331,20 +1356,21 @@ public class LOGJSONObject {
 
     /**
      * Throw an exception if the object is a NaN or infinite number.
+     *
      * @param o The object to test.
      * @throws JSONException If o is a non-finite number.
      */
     public static void testValidity(Object o) throws JSONException {
         if (o != null) {
             if (o instanceof Double) {
-                if (((Double)o).isInfinite() || ((Double)o).isNaN()) {
+                if (((Double) o).isInfinite() || ((Double) o).isNaN()) {
                     throw new JSONException(
-                        "JSON does not allow non-finite numbers.");
+                            "JSON does not allow non-finite numbers.");
                 }
             } else if (o instanceof Float) {
-                if (((Float)o).isInfinite() || ((Float)o).isNaN()) {
+                if (((Float) o).isInfinite() || ((Float) o).isNaN()) {
                     throw new JSONException(
-                        "JSON does not allow non-finite numbers.");
+                            "JSON does not allow non-finite numbers.");
                 }
             }
         }
@@ -1354,8 +1380,9 @@ public class LOGJSONObject {
     /**
      * Produce a JSONArray containing the values of the members of this
      * JSONObject.
+     *
      * @param names A JSONArray containing a list of key strings. This
-     * determines the sequence of the values in the result.
+     *              determines the sequence of the values in the result.
      * @return A JSONArray of values.
      * @throws JSONException If any of the values are non-finite numbers.
      */
@@ -1378,9 +1405,9 @@ public class LOGJSONObject {
      * Warning: This method assumes that the data structure is acyclical.
      *
      * @return a printable, displayable, portable, transmittable
-     *  representation of the object, beginning
-     *  with <code>{</code>&nbsp;<small>(left brace)</small> and ending
-     *  with <code>}</code>&nbsp;<small>(right brace)</small>.
+     * representation of the object, beginning
+     * with <code>{</code>&nbsp;<small>(left brace)</small> and ending
+     * with <code>}</code>&nbsp;<small>(right brace)</small>.
      */
     public String toString() {
         try {
@@ -1395,12 +1422,13 @@ public class LOGJSONObject {
      * Make a prettyprinted JSON text of this JSONObject.
      * <p>
      * Warning: This method assumes that the data structure is acyclical.
+     *
      * @param indentFactor The number of spaces to add to each level of
-     *  indentation.
+     *                     indentation.
      * @return a printable, displayable, portable, transmittable
-     *  representation of the object, beginning
-     *  with <code>{</code>&nbsp;<small>(left brace)</small> and ending
-     *  with <code>}</code>&nbsp;<small>(right brace)</small>.
+     * representation of the object, beginning
+     * with <code>{</code>&nbsp;<small>(left brace)</small> and ending
+     * with <code>}</code>&nbsp;<small>(right brace)</small>.
      * @throws JSONException If the object contains an invalid number.
      */
     public String toString(int indentFactor) throws JSONException {
@@ -1424,27 +1452,28 @@ public class LOGJSONObject {
      *
      * <p>
      * Warning: This method assumes that the data structure is acyclical.
+     *
      * @param value The value to be serialized.
      * @return a printable, displayable, transmittable
-     *  representation of the object, beginning
-     *  with <code>{</code>&nbsp;<small>(left brace)</small> and ending
-     *  with <code>}</code>&nbsp;<small>(right brace)</small>.
+     * representation of the object, beginning
+     * with <code>{</code>&nbsp;<small>(left brace)</small> and ending
+     * with <code>}</code>&nbsp;<small>(right brace)</small>.
      * @throws JSONException If the value is or contains an invalid number.
      */
     @SuppressWarnings("unchecked")
-       public static String valueToString(Object value) throws JSONException {
+    public static String valueToString(Object value) throws JSONException {
         if (value == null || value.equals(null)) {
             return "null";
         }
         if (value instanceof JSONString) {
             Object object;
             try {
-                object = ((JSONString)value).toJSONString();
+                object = ((JSONString) value).toJSONString();
             } catch (Exception e) {
                 throw new JSONException(e);
             }
             if (object instanceof String) {
-                return (String)object;
+                return (String) object;
             }
             throw new JSONException("Bad value from toJSONString: " + object);
         }
@@ -1456,10 +1485,10 @@ public class LOGJSONObject {
             return value.toString();
         }
         if (value instanceof Map) {
-            return new LOGJSONObject((Map<String, Object>)value).toString();
+            return new LOGJSONObject((Map<String, Object>) value).toString();
         }
         if (value instanceof Collection) {
-            return new JSONArray((Collection<Object>)value).toString();
+            return new JSONArray((Collection<Object>) value).toString();
         }
         if (value.getClass().isArray()) {
             return new JSONArray(value).toString();
@@ -1467,78 +1496,78 @@ public class LOGJSONObject {
         return quote(value.toString());
     }
 
-     /**
-      * Wrap an object, if necessary. If the object is null, return the NULL
-      * object. If it is an array or collection, wrap it in a JSONArray. If
-      * it is a map, wrap it in a JSONObject. If it is a standard property
-      * (Double, String, et al) then it is already wrapped. Otherwise, if it
-      * comes from one of the java packages, turn it into a string. And if
-      * it doesn't, try to wrap it in a JSONObject. If the wrapping fails,
-      * then null is returned.
-      *
-      * @param object The object to wrap
-      * @return The wrapped value
-      */
-     @SuppressWarnings("unchecked")
-       public static Object wrap(Object object) {
-         try {
-             if (object == null) {
-                 return NULL;
-             }
-             if (object instanceof LOGJSONObject || object instanceof JSONArray  ||
-                     NULL.equals(object)      || object instanceof JSONString ||
-                     object instanceof Byte   || object instanceof Character  ||
-                     object instanceof Short  || object instanceof Integer    ||
-                     object instanceof Long   || object instanceof Boolean    ||
-                     object instanceof Float  || object instanceof Double     ||
-                     object instanceof String) {
-                 return object;
-             }
-
-             if (object instanceof Collection) {
-                 return new JSONArray((Collection<Object>)object);
-             }
-             if (object.getClass().isArray()) {
-                 return new JSONArray(object);
-             }
-             if (object instanceof Map) {
-                 return new LOGJSONObject((Map<String, Object>)object);
-             }
-             Package objectPackage = object.getClass().getPackage();
-             String objectPackageName = objectPackage != null
-                 ? objectPackage.getName()
-                 : "";
-             if (
-                 objectPackageName.startsWith("java.") ||
-                 objectPackageName.startsWith("javax.") ||
-                 object.getClass().getClassLoader() == null
-             ) {
-                 return object.toString();
-             }
-             return new LOGJSONObject(object);
-         } catch(Exception exception) {
-             return null;
-         }
-     }
-
-
-     /**
-      * Write the contents of the JSONObject as JSON text to a writer.
-      * For compactness, no whitespace is added.
-      * <p>
-      * Warning: This method assumes that the data structure is acyclical.
-      *
-      * @return The writer.
-      * @throws JSONException
-      */
-     public Writer write(Writer writer) throws JSONException {
+    /**
+     * Wrap an object, if necessary. If the object is null, return the NULL
+     * object. If it is an array or collection, wrap it in a JSONArray. If
+     * it is a map, wrap it in a JSONObject. If it is a standard property
+     * (Double, String, et al) then it is already wrapped. Otherwise, if it
+     * comes from one of the java packages, turn it into a string. And if
+     * it doesn't, try to wrap it in a JSONObject. If the wrapping fails,
+     * then null is returned.
+     *
+     * @param object The object to wrap
+     * @return The wrapped value
+     */
+    @SuppressWarnings("unchecked")
+    public static Object wrap(Object object) {
+        try {
+            if (object == null) {
+                return NULL;
+            }
+            if (object instanceof LOGJSONObject || object instanceof JSONArray ||
+                    NULL.equals(object) || object instanceof JSONString ||
+                    object instanceof Byte || object instanceof Character ||
+                    object instanceof Short || object instanceof Integer ||
+                    object instanceof Long || object instanceof Boolean ||
+                    object instanceof Float || object instanceof Double ||
+                    object instanceof String) {
+                return object;
+            }
+
+            if (object instanceof Collection) {
+                return new JSONArray((Collection<Object>) object);
+            }
+            if (object.getClass().isArray()) {
+                return new JSONArray(object);
+            }
+            if (object instanceof Map) {
+                return new LOGJSONObject((Map<String, Object>) object);
+            }
+            Package objectPackage = object.getClass().getPackage();
+            String objectPackageName = objectPackage != null
+                    ? objectPackage.getName()
+                    : "";
+            if (
+                    objectPackageName.startsWith("java.") ||
+                            objectPackageName.startsWith("javax.") ||
+                            object.getClass().getClassLoader() == null
+                    ) {
+                return object.toString();
+            }
+            return new LOGJSONObject(object);
+        } catch (Exception exception) {
+            return null;
+        }
+    }
+
+
+    /**
+     * Write the contents of the JSONObject as JSON text to a writer.
+     * For compactness, no whitespace is added.
+     * <p>
+     * Warning: This method assumes that the data structure is acyclical.
+     *
+     * @return The writer.
+     * @throws JSONException
+     */
+    public Writer write(Writer writer) throws JSONException {
         return this.write(writer, 0, 0);
     }
 
 
     @SuppressWarnings("unchecked")
-       static final Writer writeValue(Writer writer, Object value,
-            int indentFactor, int indent) throws JSONException, IOException {
+    static final Writer writeValue(Writer writer, Object value,
+                                   int indentFactor, int indent) throws JSONException, IOException {
         if (value == null || value.equals(null)) {
             writer.write("null");
         } else if (value instanceof LOGJSONObject) {
@@ -1631,5 +1660,5 @@ public class LOGJSONObject {
         } catch (IOException exception) {
             throw new JSONException(exception);
         }
-     }
+    }
 }