Commit Graph

105 Commits

Author SHA1 Message Date
jwilson
d6b982629d Test more cases of injecting JsonAdapters. 2016-10-14 08:30:25 -04:00
Jesse Wilson
c56370257e Merge pull request #197 from square/jwilson.1013.json_adapter_parameters
Permit JsonAdapters to be injected in toJson(), fromJson() methods.
2016-10-14 08:11:16 -04:00
jwilson
afbaa6a8ef Permit JsonAdapters to be injected in toJson(), fromJson() methods.
Closes: https://github.com/square/moshi/issues/142
2016-10-14 08:05:32 -04:00
Jake Wharton
059e8ef286 Merge pull request #198 from square/jwilson.1013.standard_prefixes
Omit Kotlin and Scala platform types from the class adapter.
2016-10-13 22:16:39 -04:00
jwilson
6df7fa4dd5 Don't link to Google's internal bugtracker.
Closes: https://github.com/square/moshi/issues/122
2016-10-13 22:09:19 -04:00
jwilson
10703aae65 Omit Kotlin and Scala platform types from the class adapter.
It's unlikely that these will be stable, or that they'll do anything reasonable.

Closes: https://github.com/square/moshi/issues/185
2016-10-13 22:06:45 -04:00
Jake Wharton
47972ba577 Differentiate encoding problems with a specific exception. 2016-07-08 21:19:55 -04:00
Jake Wharton
d5c646f93e Propagate adapter method exception cause. 2016-06-06 01:48:03 -04:00
Jake Wharton
a9d73f27d8 Merge pull request #166 from square/jwilson.0602.invalid_escapes
Fail on invalid escapes.
2016-06-02 10:12:59 -04:00
jwilson
14549725ef Fail on invalid escapes.
Related to https://github.com/google/gson/issues/824
2016-06-02 09:31:32 -04:00
SatoShun
067077822d Add Override annotation 2016-05-29 02:16:41 +00:00
jwilson
23e6d36a8b [maven-release-plugin] prepare for next development iteration 2016-05-28 14:27:08 -04:00
jwilson
5f0e509b8d [maven-release-plugin] prepare release moshi-parent-1.2.0 2016-05-28 14:27:04 -04:00
Jake Wharton
c4896fdaed Merge pull request #160 from square/jwilson.0502_okio180
Upgrade to Okio 1.8.0.
2016-05-02 01:34:48 -04:00
jwilson
3477c4d743 Upgrade to Okio 1.8.0. 2016-05-02 00:48:36 -04:00
Jake Wharton
360006b7bf Add writer value overload for boxed booleans.
Autoboxing resolves boxed longs and doubles to value(Number), but a boxed boolean would otherwise resolve to value(boolean) with an implicit call to booleanValue() which has the potential to throw NPEs.
2016-04-29 17:16:52 -04:00
jwilson
13ec26a96d Be more aggressive about canonicalizing types.
Unfortunately we shouldn't be relying on equals() and hashCode() of the
default implementations anywhere.
2016-04-24 10:05:03 -04:00
Tomas Kotula
739efea61d Workaround for Android ParameterizedType implementation bug 2016-04-24 09:22:50 -04:00
Jake Wharton
c5d406592d Merge pull request #156 from square/jwilson_0423_track_options_api
Track Okio snapshot API change to Options.
2016-04-23 23:34:41 -04:00
Jesse Wilson
d7bd016614 Merge pull request #149 from xizzhu/support-gingerbread
Added support for pre-Gingerbread.
2016-04-23 23:24:00 -04:00
jwilson
20a64dff7e Track Okio snapshot API change to Options.
Also rename our own Selection class to Options since it's semantically
the same thing.

https://github.com/square/okio/pull/215
2016-04-23 23:20:39 -04:00
jwilson
4925755ffa Optimize reading one of several expected values with Selection
This isn't yet public API.

This relies on an unreleased Okio API.

This has a significant impact on performance. I measured parsing performance
improve from 89k ops/sec to 140k ops/sec on one benchmark.
2016-04-17 20:15:07 -10:00
Xizhi Zhu
5ec289ff9d Added support for pre-Gingerbread. 2016-04-08 14:29:13 +03:00
jwilson
69f4a96d5e Small optimizations to JSON parsing.
Prefer LinkedHashMap for maps that will be queried heavily.

Inline a single-line method to refill the buffer.
2016-04-06 00:39:04 -04:00
Jake Wharton
827f89adc8 Merge pull request #139 from square/jwilson_0313_promote_unquoted_keys
Confirm Moshi can handle unquoted numeric keys.
2016-03-13 16:01:38 -04:00
jwilson
41730edd4d Confirm Moshi can handle unquoted numeric keys.
See also https://github.com/google/gson/pull/809/files
2016-03-13 15:53:23 -04:00
Jesse Wilson
33e1fb1bb5 Merge pull request #127 from square/jw/redundant
Remove redundant loop variable.
2016-01-21 16:46:43 -05:00
Jake Wharton
82e70e9cce Remove redundant loop variable. 2016-01-21 11:16:09 -05:00
Jake Wharton
dc154c733a Missing @Override annotations. 2016-01-21 11:15:34 -05:00
Jesse Wilson
b8e6dc403e Merge pull request #125 from square/jw/iface-and-impl
Break apart Okio-based JSON reader and writer.
2016-01-21 10:17:08 -05:00
Jake Wharton
1071cec7d1 Break apart Okio-based JSON reader and writer. 2016-01-20 23:43:05 -05:00
jwilson
ad3506ffed [maven-release-plugin] prepare for next development iteration 2016-01-18 17:17:10 -05:00
jwilson
30a4c3c92e [maven-release-plugin] prepare release moshi-parent-1.1.0 2016-01-18 17:17:08 -05:00
jwilson
324a59e0c9 Use an array indexed by ordinal to go from enum to name. 2016-01-18 16:57:07 -05:00
Jesse Wilson
8a5c0f387b Merge pull request #119 from serj-lotutovici/sl/json_for_enums
Enable Json annotation for enum values.
2016-01-18 16:52:02 -05:00
Jake Wharton
97d2bf5e66 Update reader and writer to RFC 7159. 2016-01-18 00:54:54 -05:00
Serj Lotutovici
d1b1def4a1 Enable Json annotation for enum values. 2016-01-08 00:16:59 +01:00
Jake Wharton
6b945e5df7 Remove creation of synthetic accessor methods. 2015-12-22 02:45:31 -05:00
Phelipe Alves de Souza
86c9c6cbfa Increasing the code coverage of AdapterMethodsFactory 2015-11-04 19:55:35 -05:00
Prateek Srivastava
28d758d62b Presize Lists
Avoids unnecessary work due to growing the list.
2015-11-01 11:10:05 -08:00
Serj Lotutovici
ee01275c76 Create new builder from Moshi instance 2015-10-21 12:01:43 +02:00
edwardaa
04be7b8ec6 Doc fix for JsonWriter.serializeNulls 2015-10-03 15:20:59 +08:00
David Mihola
7970c36893 Make two methods on Types public.
To facilitate custom JsonAdapter.Factory implementations.
2015-09-29 10:44:41 +02:00
jwilson
e6a77041a1 [maven-release-plugin] prepare for next development iteration 2015-09-27 13:25:21 -04:00
jwilson
e93e6574ca [maven-release-plugin] prepare release moshi-parent-1.0.0 2015-09-27 13:25:18 -04:00
jwilson
e181db0015 JsonReader.of() and JsonWriter.of() instead of constructors.
This opens the door to later implementations of these types that write
to something other than a stream. In particular, we could have a
JsonReader that reads from a DOM-like object, or a JsonWriter that
creates such an object.
2015-09-27 12:09:32 -04:00
jwilson
f7b09188a8 Audit @link for should-be @linkplain uses.
Closes https://github.com/square/moshi/issues/37
2015-09-27 11:27:55 -04:00
jwilson
9d9f12f808 Adapter caching, plus other ergonomic features.
This adds a toString() to most adapters. The format isn't perfect, but
it should make step-debugging easier.

Define the precedence order of adapter factories.

Forbid registering adapters with annotation literals if those annotations
need values to be provided.
2015-09-26 15:18:48 -04:00
Serj Lotutovici
80953219bd ObjectJsonAdapter should not fail on null values.
Closes #79
2015-09-17 09:46:00 +02:00
jwilson
a167913e5d Make four methods on Types public.
Not Moshi's responsibility, but pragmatic.

Closes https://github.com/square/moshi/issues/73
2015-08-21 00:02:07 -04:00