Commit Graph

361 Commits

Author SHA1 Message Date
Inderjeet Singh
cf02621275 removed unused import 2010-11-02 00:12:21 +00:00
Inderjeet Singh
a224bb1e2b added serial version id 2010-11-01 23:16:03 +00:00
Inderjeet Singh
ad7bd1f465 removed unused JsonFormatter classes. 2010-11-01 23:10:09 +00:00
Jesse Wilson
dea7ab89fe Restore pretty printing. The pretty printing format isn't as compact as the previous format - for example arrays of integers are printed one-per-line, whereas the previous format compacted these to all sit on the same line. 2010-11-01 23:03:41 +00:00
Inderjeet Singh
43f2a0012b Removed JavaCC parser definition and its generated classes. 2010-11-01 22:57:39 +00:00
Inderjeet Singh
abe244c099 renamed com.google.gson.stream.JsonSyntaxException to MalformedJsonException.
Throwing JsonSyntaxException instead of JsonParseException where we can detect a syntax error.
2010-11-01 22:48:52 +00:00
Jesse Wilson
c8c3a6965c Fix a regression that expects different type adapters for long.class and Long.class. This is a temporary fix; later we may want to always use the canonical wrapped class. 2010-11-01 22:46:20 +00:00
Jesse Wilson
20d895ff95 Fix primitive wrapping and casting.
Issue: 235
2010-11-01 22:36:30 +00:00
Joel Leitch
d0977c2e3a Exposing the declaring class for the field wrapped by FieldAttributes. 2010-11-01 22:31:48 +00:00
Inderjeet Singh
7127be7965 Updated the OSGi descriptor to 1.6 2010-11-01 22:12:58 +00:00
Inderjeet Singh
7ea5cc2b36 Added a new JsonSyntaxException to indicate syntax errors in Gson. 2010-11-01 17:53:31 +00:00
Inderjeet Singh
ebd4047707 switched to using Google Guava library instead of older collections library. 2010-11-01 17:50:48 +00:00
Inderjeet Singh
b64f69cb00 Added efficient equals and isValid static methods. 2010-11-01 16:00:01 +00:00
Jesse Wilson
d9feb90593 Small cleanup of exception conversion. 2010-10-31 04:58:23 +00:00
Jesse Wilson
b2005299e4 Make JsonSyntaxException public, so clients can differentiate between IO problems and malformed JSON. 2010-10-30 21:32:08 +00:00
Inderjeet Singh
2b993d83b6 Made the GsonBuilder registerTypeHierarchyAdapter a public method.
Updated the Gson version number to 1.6 and added @since tag for the new classes
2010-10-27 23:53:09 +00:00
Inderjeet Singh
2d7367364b Added additional functional tests involving complex protocol buffers, and protos with repeated fields.
Moved all the functional tests under a functional package.
2010-10-27 23:49:22 +00:00
Inderjeet Singh
6feb325044 Added a type adapter for serializing and deserializing protobufs 2010-10-27 23:06:26 +00:00
Inderjeet Singh
9b10e70a79 Removed the version numbers from the plugin configuration of pom.xmls. This ensures that the latest version of the plugins gets downloaded and used while building a project. 2010-10-25 23:09:24 +00:00
Inderjeet Singh
af6307a77f Implemented feedback from r607 2010-10-23 19:06:22 +00:00
Inderjeet Singh
6d9893ddf3 Added a transient map in Metadata since metadata is often of two kinds: transient and persistent. persistent part is serialized/deserialized to JSON. Fixed imports in RepositoryInMemory. 2010-10-23 15:45:33 +00:00
Inderjeet Singh
1d2648231f Revised the hashCode of Id to be based just on the value. Also, revised the equals method to return true when the only difference in the type is that one class is Foo and other is Foo<?, ?>. Added a compact toString() in the Id class that prints the type as MyType<Foo,Bar> instead of fully qualified names for each of the types.
Added tests regarding object equality for the Id class.
2010-10-23 15:34:57 +00:00
Inderjeet Singh
d3eda04f33 Added support for deserializing from null input to a null value.
Added toString() method to ObjectTypePair.
2010-10-22 16:06:59 +00:00
Inderjeet Singh
c01fd85adb Added toString() methods. 2010-10-22 15:12:05 +00:00
Inderjeet Singh
91bee2a688 Throwing JsonIOException on write failures 2010-10-18 23:58:09 +00:00
Inderjeet Singh
18a9205a04 Added an exception class to indicate IO Errors. 2010-10-18 23:54:09 +00:00
Inderjeet Singh
281ed6f866 Created a generalized key-value store,MetaDataMap, for a map of MetaData.
Moved MetaData to wsdef from wsf.
Added a Gson type adapter for Id type.
2010-10-18 15:45:35 +00:00
Inderjeet Singh
8cbdd8a030 simplified the equals method for CallPath 2010-10-17 16:04:07 +00:00
Inderjeet Singh
5adfa4bc04 Defined an interface RestResource that all resources need to extend from. Defined an Id class for a resource.
Changed a rest body spec to take a type instead of a class. This allows parameterized resource types.
Defined a repository interface with an in-memory implementation for server-side storage of rest resource instances.
2010-10-17 16:01:36 +00:00
Inderjeet Singh
6825477d75 Added a method to retrieve a Rest Response with a provided HTTP URL Connection. 2010-09-30 12:45:06 +00:00
Inderjeet Singh
ed415f692f Ensuring that the HTTP connection is closed when the rest call is finished. 2010-09-30 12:28:11 +00:00
Inderjeet Singh
1a4bea7334 removed redundant null checks.
Fixed bug in Streams.copy where it was not honoring the closeInput and closeOutput parameters. 
Suppressed spurious unused warnings
2010-09-28 15:04:02 +00:00
Inderjeet Singh
2b1f3eec15 Removed a bunch of unused code and unnecessary else statements. 2010-09-28 13:42:43 +00:00
Inderjeet Singh
e656954c16 removed spurious warnings and allowed extension of RestClient for creating testing fixtures. 2010-09-19 13:50:41 +00:00
Inderjeet Singh
9b0e7f8b84 initial check-in for implementing support for protocol buffers in Gson 2010-09-14 17:59:04 +00:00
Jesse Wilson
4c53c0640e Exhaustive test coverage for mixed streaming & binding. 2010-09-03 07:24:59 +00:00
Jesse Wilson
4e28bf3a39 Check in a passing test for issue 204. 2010-09-03 06:44:41 +00:00
Jesse Wilson
202bbfeef0 Fixing the Java 1.5 build. 2010-09-02 09:29:26 +00:00
Jesse Wilson
747e3c3051 Support mixed streaming and databinding with new APIs. 2010-09-02 00:15:23 +00:00
Jesse Wilson
ffdf0e7012 Fix some test problems.
JsonWriter was using suboptimal escape characters for newlines etc: unicode escapes rather than \x escapes.

JsonObjectTest was banning empty and whitespace-only keys. These values are permitted as of r585.
2010-09-02 00:10:26 +00:00
Jesse Wilson
fa40b4c63a Rename GsonReader to Streams; check that class in. 2010-09-02 00:10:02 +00:00
Jesse Wilson
78d1011ec5 Test escaping HTML characters! 2010-09-02 00:03:18 +00:00
Jesse Wilson
486820f515 Fix some test problems.
JsonWriter was using suboptimal escape characters for newlines etc: unicode escapes rather than \x escapes.

JsonObjectTest was banning empty and whitespace-only keys. These values are permitted as of r585.
2010-08-28 08:18:13 +00:00
Jesse Wilson
ff7aa3f331 Escape only the required characters when emitting JSON. This means that instead of emitting
["foo\nbar", "baz"]

we'll emit this:

  ["foo
bar", baz"]

This simple change measured about ~35% faster for in-memory writes!
2010-08-28 07:29:22 +00:00
Jesse Wilson
7e1e4eab07 Remove the constraint that map keys mustn't be the empty string.
See bug 227.
2010-08-28 05:02:33 +00:00
Jesse Wilson
69ecb9465a Test case demonstrating that issue 212 is fixed. We got comment parsing support for free when we switched to JsonReader. 2010-08-27 07:33:33 +00:00
Jesse Wilson
d5741b321f Don't exclude enum constants, even if they are anonymous.
See issue 226.
2010-08-27 07:26:35 +00:00
Jesse Wilson
eb7b1e4ac7 Test attempting (and failing) to reproduce issue 215. 2010-08-27 07:10:00 +00:00
Jesse Wilson
7a7bbf754c Use JsonReader internally rather than JsonParserJavacc.
For raw parsing (ie. new JsonParser().parse()) the parse time has improved substantially. For example, JsonParserJavacc parsed my 48KiB buzz feed in 4.8ms. JsonReader parses the same feed in 0.9ms.

http://microbenchmarks.appspot.com/run/limpbizkit@gmail.com/com.google.gson.GsonBenchmark/430001
2010-08-27 05:59:18 +00:00
Jesse Wilson
765a9f1ecd Brand new classes for streaming JSON efficiently.
Notable features:
 - Efficiency. The parser is faster than the current javacc parser. It's also faster than popular libraries for JSON streaming.
 - Toggle lenient/strict
 - Toggle pretty/compact
 - Friendly error messages on bad JSON
 - GSON-quality Javadoc
 - Non-execute prefix handling

This doesn't wire JsonReader up into Gson just yet. That's coming soon...
2010-08-26 08:44:02 +00:00