/**
  * Convert a cookie specification string into a JSONObject. The string will contain a name value
  * pair separated by '='. The name and the value will be unescaped, possibly converting '+' and
  * '%' sequences. The cookie properties may follow, separated by ';', also represented as
  * name=value (except the secure property, which does not have a value). The name will be stored
  * under the key "name", and the value will be stored under the key "value". This method does not
  * do checking or validation of the parameters. It only converts the cookie string into a
  * JSONObject.
  *
  * @param string The cookie specification string.
  * @return A JSONObject containing "name", "value", and possibly other members.
  * @throws JSONException
  */
 public static JSONObject toJSONObject(String string) throws JSONException {
   String name;
   JSONObject jo = new JSONObject();
   Object value;
   JSONTokener x = new JSONTokener(string);
   jo.put("name", x.nextTo('='));
   x.next('=');
   jo.put("value", x.nextTo(';'));
   x.next();
   while (x.more()) {
     name = unescape(x.nextTo("=;"));
     if (x.next() != '=') {
       if (name.equals("secure")) {
         value = Boolean.TRUE;
       } else {
         throw x.syntaxError("Missing '=' in cookie parameter.");
       }
     } else {
       value = unescape(x.nextTo(';'));
       x.next();
     }
     jo.put(name, value);
   }
   return jo;
 }
 /**
  * Convert a cookie list into a JSONObject. A cookie list is a sequence of name/value pairs. The
  * names are separated from the values by '='. The pairs are separated by ';'. The names and the
  * values will be unescaped, possibly converting '+' and '%' sequences.
  *
  * <p>To add a cookie to a cooklist, cookielistJSONObject.put(cookieJSONObject.getString("name"),
  * cookieJSONObject.getString("value"));
  *
  * @param string A cookie list string
  * @return A JSONObject
  * @throws JSONException
  */
 public static JSONObject toJSONObject(String string) throws JSONException {
   JSONObject jo = new JSONObject();
   JSONTokener x = new JSONTokener(string);
   while (x.more()) {
     String name = Cookie.unescape(x.nextTo('='));
     x.next('=');
     jo.put(name, Cookie.unescape(x.nextTo(';')));
     x.next();
   }
   return jo;
 }