John J. Aylward
643b25140f
Updates for populateMap based on discussion in #279 and #264
2017-07-07 20:48:42 -04:00
Sean Leary
1add1247fa
Merge pull request #348 from johnjaylward/ArrayPerformance
...
Capacity improvements for internal structures
2017-06-12 02:05:26 -05:00
Sean Leary
5b2e5e7579
Merge pull request #347 from ttulka/master
...
a comment added to explain the use of HashMap
2017-06-11 23:32:06 -05:00
Tomas Tulka
246350bbcd
comment added to explain the reason that JSON object is unordered
...
to avoid implementators' misconceptions and tries to reimplement the
JSON object to keep the elements order
2017-06-09 09:00:17 +02:00
John J. Aylward
2fbe4d96cf
change JSONObject(Map) constructor to use the default capacity when a null map is passed
2017-06-08 12:18:04 -04:00
John J. Aylward
9c092753b0
* Updates array constructor and bulk operations to best guess capacity information
...
* Update JSONObject to allow best guess for initial capacity.
2017-06-08 11:22:23 -04:00
Tomas Tulka
d0f5607998
a comment added to explain the use of HashMap
...
to avoid misconception of contributors about using HashMap to implement
a JSON object as a unordered collection by the definition
2017-06-08 08:03:14 +02:00
John J. Aylward
ad6bdd715d
Adds JSONException for write value errors so serialization errors can be tracked easier
2017-06-05 20:51:57 -04:00
John J. Aylward
f76fbe7005
fixes comments
2017-05-31 18:13:40 -04:00
John J. Aylward
4f5bf16676
* Adds protected entrySet accessor to JSONObject
...
* Updates loops that request key/value pairs to use the new entrySet accessor
2017-05-23 12:48:44 -04:00
John J. Aylward
757b6edb03
Merge branch 'master' of github.com:stleary/JSON-java into OptimizeOpt
2017-05-21 13:12:24 -04:00
John J. Aylward
849b392c01
updates the getNumber/optNumber to not return invalid Doubles
2017-05-18 19:49:50 -04:00
John J. Aylward
a7f8ff24df
correct string check for JSONObject optBigDecimal and optBigInteger
2017-05-18 14:41:42 -04:00
John J. Aylward
1ab5260a7a
* Adds methods getNUmber and getFloat to JSONArray and JSONObject
...
* Extracts the stringToNumber logic that the optNumber method uses to reuse it between classes
* Fixes -0 issue with optNumber/getNumber
2017-05-18 14:24:34 -04:00
John J. Aylward
c28a2bdf39
* reverts changes to getDouble and related optDouble and optFloat
...
* Updates optNumber to be smarter about which object it uses to parse strings
2017-05-18 13:07:32 -04:00
John J. Aylward
382f62e781
* Prevent exceptions in cases where the value is not a string.
...
* Don't call toString when we know it's a string, just cast
2017-05-18 11:41:51 -04:00
John J. Aylward
0c7bd725a6
fixes for javadoc
2017-05-17 11:34:37 -04:00
John J. Aylward
fcdb8671b2
grr, forgot to save changes on last commit
2017-05-17 11:32:44 -04:00
John J. Aylward
c46774cf13
* Update opt* methods for JSONArray
...
* Add support to JSONArray and JSONObject to optionally get raw number values
* Add support to JSONArray and JSONObject to optionally get float values
2017-05-17 11:29:26 -04:00
John J. Aylward
bd4b180f4e
Support for float to BigDecimal in optBigDecimal
2017-05-17 10:51:06 -04:00
John J. Aylward
a8d4e4734f
adjustments to opt methods in reference to https://github.com/stleary/JSON-java/issues/334
2017-05-16 19:38:01 -04:00
John J. Aylward
4865f51dd5
change float double literals to be more standard as 1.0f and 1.0d respectively
2017-05-16 15:38:54 -04:00
John J. Aylward
c870094f69
Fixes spelling in comments and removes compile time warnings
2017-05-16 15:35:05 -04:00
alessandro rao
9e0fc5e680
Allow user to invoke query and optQuery ,with a JSONPointer,directly
...
from JSONArray or JSONObject
2017-02-25 13:27:50 +01:00
John J. Aylward
eb806f4c14
make sure locale independent data is not upper/lowercased incorrectly. See #315
2017-02-10 10:07:28 -05:00
John J. Aylward
88f65c5bea
Merge branch 'master' of github.com:stleary/JSON-java into NumberOutputFix
...
# Conflicts:
# JSONObject.java
2016-08-26 11:32:35 -04:00
John J. Aylward
2f2cd4dfc5
Fix for number output bug.
...
java.lang.Number is currently output without any validation. For all java.* Numbers, this is fine, but for custom Number implementations like Complex or Fraction, the resulting JSON output may be invalid.
For example: If a Fraction implementation defines its' toString method as `return numerator + "/" + denominator`, then the resulting JSON output would be something like this:
```json
{ "fraction" : 1/2 }
```
This is not valid JSON.
This commit verifies that the string representation of the number is close to a JSON formatted number by use of the BigDecimal constructor. If the constructor throws a NumberFormatException, then the string value is instead quoted as a string. The example above would instead output like the following:
```json
{ "fraction" : "1/2" }
```
2016-08-17 12:54:30 -04:00
John J. Aylward
349a209df3
Merge remote-tracking branch 'upstream/master' into EnumCleanup
2016-08-15 10:25:27 -04:00
John J. Aylward
7851e9b2e8
revert back changes to Number support
2016-08-15 10:24:38 -04:00
Sean Leary
7232a95c0b
Update JSONObject.java
...
Fixed some typos committed in #249 , since reverted, tracking issue is #263
2016-08-15 01:58:54 -05:00
John J. Aylward
91107e3e82
Adds support to JSONObject wrap and write methods to explicitly handle Enums.
...
The new way enums are handled is to always place the actual enum in the
JSONObject/JSONArray. When writing, we always write the actual "name"
of the enum, so even with a toString override on the enum class, the
value remains consistant and compatible with the optEnum/getEnum methods.
The constructor JSONObject(Object) functions the same way as before when
passing an enum and is consistent with other "value" types. For example,
when creating a JSONObject with Long, Boolean, BigDecimal as the constructor
parameter, the value will be treated as a "bean".
2016-08-11 12:22:31 -04:00
Sean Leary
45a7decba4
Revert "reduces the use of unnecessary exceptions"
2016-08-09 14:22:06 -05:00
Nils Faupel
3890bfae52
reduce the use of unnecessary exceptions
2016-07-19 19:59:30 +02:00
Nils Faupel
abf2963bbe
Revert "reduces the use of unnecessary exceptions"
...
This reverts commit 7627d40d10
.
2016-07-19 19:00:42 +02:00
Simulant
7627d40d10
reduces the use of unnecessary exceptions
2016-07-08 22:17:05 +02:00
Sean Leary
612dafc750
Update JSONObject.java
2016-05-20 21:10:17 -05:00
Sean Leary
b2bde1f468
Merge pull request #234 from erosb/master
...
fixing stleary/JSON-Java#233
2016-05-20 21:03:06 -05:00
Bence Erős
56be31e7a8
fixing stleary/JSON-Java#233
2016-05-16 14:53:34 +02:00
stleary
4a458a9f1c
add timestamps to recent commits, javadocs for JSONObject, JSONArray queryFrom() methods
2016-05-14 09:22:18 -05:00
Sean Leary
8a72509e6e
Merge pull request #222 from erosb/master
...
JSON Pointer implementation
2016-05-13 22:46:52 -05:00
Sean Leary
cad23423ab
Update JSONObject.java
...
Forgot to update date of last change
2016-05-02 22:11:20 -05:00
stleary
1ca8933a8f
fix to compile with 1.6.0_45
2016-04-28 22:12:16 -05:00
Bence Erős
45bd72c15d
added JSONObject#query() and JSONPointer#query() methods
2016-04-26 23:48:14 +02:00
Sean Leary
25a87975be
Update date of merge.
2016-03-05 15:20:20 -06:00
Joe Ferner
f024b52108
Adds JSONArray toList method and JSONObject toMap method
2016-02-27 11:20:25 -05:00
skreutzer
60349ece54
Java 1.6 compatibility.
2016-02-08 23:30:27 -05:00
Sean Leary
93c79ca566
Version date
2016-01-30 15:44:41 -06:00
John J. Aylward
3007fc8ebe
Removes custom XML stringToValue method in favor of keeping a consistent
...
implementation in JSONObject
2016-01-27 15:03:19 -05:00
John J. Aylward
39b1c0cb66
fixes error in -0 check
2016-01-27 10:45:23 -05:00
John J. Aylward
07b2d65e30
Fixes #187 -0 now returns as a double.
2016-01-27 10:39:31 -05:00