Joel Leitch
56aa828350
Minor clean-up in Gson class.
2011-01-22 22:43:43 +00:00
Joel Leitch
fb7bd7b1b7
Deprecate the old FieldNamingStrategy interface and open up the FieldNamingStrategy2 instead to take its place.
2011-01-22 22:27:30 +00:00
Joel Leitch
b883f8f4aa
Add new "Mode" enum and carry mode through Gson so exclusion strategies know whether it is currently serializing or deserializing.
...
Deprecate old ExclusionStrategy code since this new approach is more powerful.
2011-01-22 22:15:06 +00:00
Inderjeet Singh
2b9f81e8b5
Registering default type hierarchy adapters first and allow users to override them.
...
This allows the default EnumTypeAdapter to be overridden for a specific hierachy adapter for Enum with anonymized sub-classes.
2011-01-19 23:28:28 +00:00
Inderjeet Singh
edc71130c4
removed unneeded suppression of warnings.
2011-01-19 07:34:44 +00:00
Jesse Wilson
37dc0f8d3e
Type adapter for maps. Supports both complex and non-complex keys.
2011-01-12 00:17:21 +00:00
Joel Leitch
439d931c5a
Removing unused methods on Cache and synchronizing it since FieldAttributes contains a static instance of this type.
2011-01-10 23:20:37 +00:00
Joel Leitch
1e2fbd81f5
Adding default type adapter for InetAddress.
2011-01-10 23:03:48 +00:00
Joel Leitch
3926afbd30
Removing unused files with the new Types class.
2011-01-10 22:47:42 +00:00
Inderjeet Singh
8380d28e6f
removed compiler warnings
2010-12-06 19:47:41 +00:00
Jesse Wilson
883ce465d5
Second half of adopting Guice's types code.
...
This removes a bunch of unnecessary public APIs and looks more like the GSON code that existed before this whole exercise. We no longer use TypeToken.isAssignable. I wrote a test that demonstrates at least one problem with that method, so I've deprecated it. We should be able to remove it release-after-next; nobody should be using this method anyway.
There are still some things that are public that shouldn't be. In particular there's some APIs in Types that are needed by TypeToken, which is unfortunately in a different package. Traditionally the fix is to create an 'internal' package and make the shared code public in the internal package. I'm not sure what we want to do for GSON; we could also use reflection (yuck) or duplicate the code (yuck).
2010-12-03 18:12:26 +00:00
Jesse Wilson
d1ddab2e6f
Swap out GSON's type mechanics with the Type resolution code from Guice.
...
The most significant impact of this change is that fields whose types are type parameters should now GSONify just fine. For example, consider the class below.
abstract class Foo<A, B> {
A a;
B b;
List<A> list;
Map<A, List<B>> map;
}
class RealFoo extends Foo<String, Integer> {...}
This is a reasonable checkpoint but some work still needs to be done for this. In particular, the level of visibility of methods in TypeToken and Type should be reconsidered; we're exposing more than we need to!
2010-12-03 08:07:13 +00:00
Inderjeet Singh
6818edecf9
enabled GsonBuilder.registerTypeHierarchyAdapter since head is now for Gson 1.7
2010-11-25 00:16:06 +00:00
Jesse Wilson
1c5f5132d8
Revert most of r677: Required strings to be quoted even in lenient mode. As far as Inderjeet and I can tell, this is consistent with Gson 1.5.
2010-11-24 23:22:13 +00:00
Inderjeet Singh
db3f19e881
dropping GsonBuilder.registerTypeHierarchyAdapter() from 1.6 release.
2010-11-24 23:13:29 +00:00
Joel Leitch
0a3f5fa801
Required strings to be quoted even in lenient mode.
...
As far as Inderjeet and I can tell, this is consistent with Gson 1.5.
2010-11-16 22:14:40 +00:00
Inderjeet Singh
520259fefa
removed eclipse warnings.
2010-11-12 19:21:16 +00:00
Joel Leitch
7d055fcb51
Fixing fromJson type casting.
2010-11-11 18:22:45 +00:00
Inderjeet Singh
eac1505670
Removed eclipse warnings about unneeded else statements and rawtypes/unchecked access.
2010-11-11 07:29:55 +00:00
Joel Leitch
32afd1a4e4
Fixing parsing of unquoted strings to be (somewhat) consistent with previous versions of Gson. The difference with this version is that Gson will throw a more specific exception rather than JsonParseException.
2010-11-10 02:02:57 +00:00
Jesse Wilson
103edb9c36
Don't return null on an unexpected EOF unless the document is empty. This brings us back to compatibility with GSON 1.5.
2010-11-08 19:16:05 +00:00
Jesse Wilson
4d0cd67cde
Addressing code review feedback from r585 and r648.
2010-11-08 01:22:21 +00:00
Joel Leitch
f6a332971f
Warning fixes.
2010-11-05 22:47:13 +00:00
Inderjeet Singh
f4098b5cf7
implemented feedback from r585
2010-11-05 22:18:35 +00:00
Inderjeet Singh
c3bae2d35e
incorporating code review comments from r648
2010-11-05 21:51:29 +00:00
Jesse Wilson
832257234d
New overloads for constructing MalformedJsonException
2010-11-05 20:58:41 +00:00
Joel Leitch
bdf5bef887
Fix JavaDoc on JsonSyntaxException
2010-11-05 20:34:27 +00:00
Inderjeet Singh
0b4bf7706a
Changed JsonParser API to throw specific JsonIOException,JsonSyntaxException instead of the general JsonParseException
2010-11-05 20:31:52 +00:00
Inderjeet Singh
7b99419aea
Removed compiler warnings.
2010-11-03 23:14:42 +00:00
Inderjeet Singh
10db917e93
Updated fromJson and toJson signatures to indicate the kind of exceptions (JsonIOException, JsonSyntaxException) that can be thrown.
2010-11-03 19:46:29 +00:00
Inderjeet Singh
83539c534c
removed compiler warnings.
...
Added default serial version id for MalformedJsonException.
2010-11-03 13:28:09 +00:00
Joel Leitch
c6a4f55d1a
Fix for Issue #40 .
2010-11-02 03:32:39 +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
7ea5cc2b36
Added a new JsonSyntaxException to indicate syntax errors in Gson.
2010-11-01 17:53:31 +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
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
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
2b1f3eec15
Removed a bunch of unused code and unnecessary else statements.
2010-09-28 13:42:43 +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