Commit Graph

1002 Commits

Author SHA1 Message Date
Jake Wharton
371aff7ce4 Switch default Queue implementation to ArrayDeque.
Now that we require Java 1.6 or newer this much more efficient implementation can be used as the default.
2016-04-27 00:37:28 -04:00
Jake Wharton
8537c8932f Optimize list allocation for every reflective field.
The common cases (no @SerializedName and a single-value @SerializedName) now use a specialized one-element collection. Cases with alternate names use a much more space efficient ArrayList which is exactly sized.

This is also a performance win for adapter initialization since an index-based loop was used on the returned type for which LinkedList is not suited for.
2016-04-27 00:28:51 -04:00
Ryan Harter
a851569ab9 Adds getters for config fields.
This adds simple getters for certain config fields that would be helpful in custom
TypeAdapters to deal with situations like this:
https://github.com/rharter/auto-value-gson/issues/18
2016-04-26 15:30:01 -04:00
Jake Wharton
59edfc1caf Add boxed boolean value() overload.
When calling value() with a Boolean overload resolution would choose value(boolean) which would throw an NPE on null. The other boxed types are all numbers which would resolve to value(Number) and behave correctly.
2016-04-22 19:52:38 -04:00
Jesse Wilson
0f66f4fac4 Merge pull request #829 from ionspin/master
Check if class can be instantiated based on class modifiers. Fix for #817
2016-04-22 06:47:08 -10:00
Ugljesa Jovanovic
ab40462cc7 Check if class can be instantiated based on class modifiers. If not throw an unsupported operation exception. 2016-04-20 10:43:34 +02:00
gavlyukovskiy
966de9e60d fixed throwing RuntimeException instead of JsonIOException 2016-04-15 21:00:59 +03:00
Scott Brown
9c4f352320 minor javadoc fix ... @code block not treated as html 2016-04-08 19:34:05 -06:00
Inderjeet Singh
34d7521d95 moved the JsonSerializationContext/JsonDeserializationContext fields to where they are used.
Also moved TreeTypeAdapter to internal.bind package for potential use in JsonAdapterAnnotationFactory.
2016-03-28 14:46:02 -07:00
Scott Brown
0669ff7fd1 allow unquoted long and integer keys 2016-03-12 11:52:13 -07:00
qwwdfsad
31dcfa3ad6 More appropriate usage of null key surrogate in Gson#getAdapter for backward compatibility 2016-03-05 02:08:26 +03:00
qwwdfsad
c5611847a3 Gson synchronized map replaced with concurrent hash map 2016-03-05 00:28:25 +03:00
Inderjeet Singh
416ddb101d [maven-release-plugin] prepare for next development iteration 2016-02-26 18:31:14 -08:00
Inderjeet Singh
fe62b04148 [maven-release-plugin] prepare release gson-parent-2.6.2 2016-02-26 18:22:26 -08:00
Inderjeet Singh
0dfa28ac3e previous mvn release:prepare failed but updated GitHub anyway. Fixing that. 2016-02-26 18:19:41 -08:00
Inderjeet Singh
607bcaaf9d [maven-release-plugin] prepare for next development iteration 2016-02-26 18:14:54 -08:00
Inderjeet Singh
1ab73ffd21 incorporated code review feedback by eliminating the stringified type adapter. 2016-02-26 09:25:23 -08:00
Inderjeet Singh
1fa43821e8 removed unneeded null check. 2016-02-25 19:37:07 -08:00
Inderjeet Singh
79a00cd906 incorporated code review feedback. Simplified the code, merged Device and Control and removed unnecessary fields. 2016-02-25 17:38:48 -08:00
Inderjeet Singh
c731abb293 Fixed a regression in Gson 2.6 where Gson caused NPE if the TypeAdapterFactory.create() returned null. 2016-02-25 13:56:42 -08:00
Sean Bright
4eff1a855f Restore OSGi manifest headers
Commit 2016e95 removed the necessary MANIFEST.MF headers for Gson to
resolve in an OSGi environment. This patch restores them.
2016-02-24 09:14:09 -05:00
Dongjoon Hyun
aa209fa255 Fix some typos in gson comments. 2016-02-15 14:11:23 -08:00
jwilson
796b4ca26d [maven-release-plugin] prepare for next development iteration 2016-02-11 22:53:04 -05:00
jwilson
3c9b9af0a1 [maven-release-plugin] prepare release gson-parent-2.6.1 2016-02-11 22:52:59 -05:00
jwilson
85722329db [maven-release-plugin] prepare for next development iteration 2016-02-11 13:03:12 -05:00
jwilson
b8220eb195 [maven-release-plugin] prepare release gson-parent-2.6 2016-02-11 13:03:10 -05:00
jwilson
2016e9553e Simplify Gson poms.
A lot of the configuration in these poms has been taken over by improvements
to the Maven release plugin.
2016-02-11 12:56:33 -05:00
inder123
8383f5c7fa Merge pull request #769 from paniko0/master
timezones without minutes should be valid according RFC3339
2016-02-02 20:23:52 -08:00
Jake Wharton
c8627c8ab8 Update reader and writer for RFC 7159. 2016-01-18 15:07:33 -05:00
inder123
2ab776b5f5 Merge pull request #771 from google/jw/global-leniency
Add setting for leniency on Gson instance.
2016-01-18 14:03:23 -05:00
Jake Wharton
3360c93a76 Add setting for leniency on Gson instance.
Add a JsonReader factory (for parity with the JsonWriter one) which provides a configured instance using the Gson settings.
2016-01-18 12:08:11 -05:00
Jerzy Chalupski
23e2916947 Make TypeAdapters created by @JsonAdapter null-safe 2016-01-18 16:41:07 +01:00
Psidium
61f58baaf9 fix typo in JsonArray docs 2016-01-12 11:02:42 -02:00
Danillo Souza
ed6298c98a timezones without minutes should are valid according RFC3339 2016-01-11 15:33:55 -02:00
inder123
1f803bd37d Merge pull request #761 from google/jw/nuke-synthetics
Remove synthetic accessors from being generated.
2015-12-27 14:08:23 -05:00
Jake Wharton
7a1c94f986 Remove synthetic accessors from being generated. 2015-12-27 01:39:19 -05:00
inder123
59a8fb5c5e Update pom.xml 2015-12-14 16:48:49 -08:00
Inderjeet Singh
2b4ac2334e [maven-release-plugin] prepare for next development iteration 2015-11-23 19:32:33 -08:00
Inderjeet Singh
d7d064feb8 [maven-release-plugin] prepare release gson-parent-2.5 2015-11-23 19:32:26 -08:00
Gorik
d86dfdec7c Removed unused code in ISO8601Utils 2015-11-23 01:21:41 -05:00
Gorik
bcd52a1fdc Added ISO8601 complete support for date deserialization 2015-11-23 01:11:41 -05:00
inder123
e48c780389 Merge pull request #733 from google/java_util_additional_classes
Supported Currency and added additional tests for Vector, Stack and Properties.
2015-11-17 17:57:59 -08:00
Inderjeet Singh
c935f89b23 Added the cause to Assertions 2015-11-16 09:16:23 -08:00
Inderjeet Singh
05b17f9271 Adding details in the throw exception on a missing field. 2015-11-16 09:12:23 -08:00
Inderjeet Singh
10cefa49d2 added tests for Properties 2015-11-06 16:17:47 -08:00
Inderjeet Singh
01944b246b additional tests for PriorityQueue, Vector and Stack. 2015-11-06 16:16:56 -08:00
Inderjeet Singh
47cc34548d added currency class 2015-11-06 15:41:15 -08:00
Inderjeet Singh
457f53f08f renamed JavaUtilConcurrentLocksTest to JavaUtilConcurrentAtomicTest 2015-11-06 15:24:15 -08:00
Inderjeet Singh
da4334b8df fixed typos 2015-11-05 21:43:10 -08:00
Inderjeet Singh
11b26b5256 Added support for AtomicLongArray.
Also added tests to ensure LongSerializationPolicy is honored.
2015-11-05 14:15:46 -08:00