Please rename this class to Json**. JSON** ones the copied ones from Douglas Crockford's JSON-java lib. There are few Json** ones in the same package which are ours. There is also README file in this package explaining this. I know this is not perfect but it works.
On Fri, Mar 29, 2013 at 3:50 AM, <ivaynb...@apache.org> wrote: > Updated Branches: > refs/heads/master bf13599b1 -> b29bb9052 > > > added a more efficient json stringer impl > > > Project: http://git-wip-us.apache.org/repos/asf/wicket/repo > Commit: http://git-wip-us.apache.org/repos/asf/wicket/commit/b29bb905 > Tree: http://git-wip-us.apache.org/repos/asf/wicket/tree/b29bb905 > Diff: http://git-wip-us.apache.org/repos/asf/wicket/diff/b29bb905 > > Branch: refs/heads/master > Commit: b29bb90525a50d78023e5b7b4b43dfcf64bf0900 > Parents: bf13599 > Author: Igor Vaynberg <igor.vaynb...@gmail.com> > Authored: Thu Mar 28 18:50:16 2013 -0700 > Committer: Igor Vaynberg <igor.vaynb...@gmail.com> > Committed: Thu Mar 28 18:50:23 2013 -0700 > > ---------------------------------------------------------------------- > .../wicket/ajax/json/JSONSequenceStringer.java | 60 +++++++++++++++ > 1 files changed, 60 insertions(+), 0 deletions(-) > ---------------------------------------------------------------------- > > > > http://git-wip-us.apache.org/repos/asf/wicket/blob/b29bb905/wicket-core/src/main/java/org/apache/wicket/ajax/json/JSONSequenceStringer.java > ---------------------------------------------------------------------- > diff --git > a/wicket-core/src/main/java/org/apache/wicket/ajax/json/JSONSequenceStringer.java > b/wicket-core/src/main/java/org/apache/wicket/ajax/json/JSONSequenceStringer.java > new file mode 100644 > index 0000000..ffe7d15 > --- /dev/null > +++ > b/wicket-core/src/main/java/org/apache/wicket/ajax/json/JSONSequenceStringer.java > @@ -0,0 +1,60 @@ > +/* > + * Licensed to the Apache Software Foundation (ASF) under one or more > + * contributor license agreements. See the NOTICE file distributed with > + * this work for additional information regarding copyright ownership. > + * The ASF licenses this file to You 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. > + * See the License for the specific language governing permissions and > + * limitations under the License. > + */ > +package org.apache.wicket.ajax.json; > + > +import java.io.IOException; > + > +import org.apache.wicket.util.io.StringBufferWriter; > + > +import com.sun.istack.internal.Nullable; > + > +/** > + * An efficient implementation of a JSON stringer. The efficiency comes > from the fact that istead of > + * a {@link String} this class can return a {@link CharSequence}. This is > better for downstream > + * method that can accept a {@link CharSequence} becuase it requires one > less memory copy of the > + * internal {@link AppendingStringBufferWriter} to a {@link String} to > get the JSON. > + * > + * @author igor > + */ > +public class JSONSequenceStringer extends JSONWriter > +{ > + public JSONSequenceStringer() > + { > + super(new StringBufferWriter()); > + } > + > + /** > + * @return JSON text as a {@link CharSequence} > + */ > + @Nullable > + public CharSequence toCharSequence() > + { > + > + if (mode != 'd') > + return null; > + > + try > + { > + writer.flush(); > + } > + catch (IOException e) > + { > + throw new RuntimeException(e); > + } > + return ((StringBufferWriter)writer).getStringBuffer(); > + } > +} > > -- Martin Grigorov jWeekend Training, Consulting, Development http://jWeekend.com <http://jweekend.com/>