title: How to serialize a JsonObject without too much quotes?
body: <p>I'm writing a small fluent wrapper over com.google.gson.JsonObject.</p>
  
  <p>When I serialize my Json, I get:</p>
  
  <pre><code>{"key1":"value1","key2":"value2","key3":"{\"innerKey\":\"value3\"}"}
  </code></pre>
  
  <p>How do I get rid of the redundant quotes?</p>
  
  <p>My code:</p>
  
  <pre><code>public class JsonBuilder {
      private final JsonObject json = new JsonObject();
      private final Map&lt;String, JsonBuilder&gt; children = newHashMap();
  
      public String toJson() {
          for (Map.Entry&lt;String, JsonBuilder&gt; entry : children.entrySet()) {
              String value = entry.getValue().toJson();
              add(entry.getKey(), value);
          }
          children.clear();
  
          return json.toString();
      }
  
      public JsonBuilder add(String key, String value) {
          json.addProperty(key, value);
          return this;
      }
  
      public JsonBuilder add(String key, JsonBuilder value) {
          Preconditions.checkArgument(!children.containsKey(key));
          children.put(key, value);
          return this;
      }
  }
  
  String json = new JsonBuilder()
      .add("key1", "value1")
      .add("key2", "value2")
      .add("key3", new JsonBuilder()
          .add("innerKey", "value3"))
      .toJson();
  </code></pre>