Elias Ross
f6336650f2
2.3 merge update: Also fix for quote evaluation
...
This is a problem in JsonPath where the left-hand side string value was being
quoted by mistake.
Issue 410 on github: https://github.com/json-path/JsonPath/issues/
Also fix issue 409 as well. This should improve performance a bit when parsing.
There are casts because the compiler in IntelliJ was confused as to what overloaded
method to call. Casts don't really hurt.
7 years ago
Ihor Herasymenko
9862f8e56e
#403 : Enable path caching withing all the operations
8 years ago
Jochen Berger
ed9fd3adf7
convert lists and maps for ValueNode ( fixes #378 )
8 years ago
Greenwood
a2936ebd68
inverting the relationship between root scanner and function such that the function takes a parameter which is the scanner expression
8 years ago
Greenwood
851249861e
Issue #191 is a bug - supports result set functions via patterns such as $.max($..allTheNumberThings)
...
$.max($.foo, $.bar) is already supported - consiquently $.max($..allTheNumberThings) should also work.
8 years ago
Jochen Berger
d5acf25b9f
fix evaluation of `empty` with wrapping providers ( fixes #366 )
8 years ago
Daniel Halperin
c9527bf89e
Rename subset to subsetof
8 years ago
Ari Fogel
32adc12c9c
implement subset filter operator, update readme
8 years ago
jonny
2757a3b345
new line feed
8 years ago
Kalle Stenflo
257c36c00a
Make ParseContext from JsonPath.using thread safe #187
8 years ago
Kalle Stenflo
45a4e5e9ef
Accept URLs as input but deprecate URL methods #218 .
8 years ago
Greenwood
3e7707a3d4
replacing space with tabs, IDE formatting issue
8 years ago
Greenwood
07f49c4f17
addressing @jochenberger's code review comments, Created by... is IntelliJ auto-creation -- added Apache license headers
8 years ago
mattg
b2c752cb5f
missed one file, removed args
8 years ago
mattg
cece640892
removing dead constructor arg
8 years ago
mattg
eb0503db1d
removing commented out code
8 years ago
mattg
e739514e64
update of javadoc
8 years ago
mattg
ca1fe5612d
update of javadoc
8 years ago
mattg
925fb7d6c3
removing unused import - fixing 2nd call to get() to avoid recomputation
8 years ago
mattg
3a69db83f0
Fixes Issue #234 using late binding, ideally this might be a lambda that encapsulates its state -- given support for JDK 6+, its encapsulated state is maintained in an implementation of the interface ILateBindingValue, one for PATH functions one for JSON - its likely the JSON version doesn't have a purpose unless the JSON dynamically changes as a result of the function implementation but its better to create another impl for JSON if in the future JSON can be dynamically changed via functions(?)
...
The fault is in the Parameter object which obviously cached its value and when the outside reference changes its oblivious to that state change due to its internal cached instance of the state. Cache.getCache()... that singleton call inside of JsonContext then grabs an instance of the cached parameter, it would be thread unsafe to simple invalidate the cache because who knows for whom the cache is being invalidated.
Not caching function paths isn't an answer -- the input to a function could itself be another function - meaning the input (parameter) value would never be observed to the wrapping function and things such as take the $.max(3, 4, 5, $.avg(...)) would yield an answer without average being computed.
8 years ago
jochenberger
d900f7aa41
FIx typo in exception message
8 years ago
jochenberger
7ac3039965
Restore accidentally removed line
8 years ago
jochenberger
81d64ed2ae
Use json-smart to detect whether the String is JSON
8 years ago
jochenberger
2774037a5b
Fix JSON detection
8 years ago
Jochen Berger
43414d8457
support negative array indexes
8 years ago
jochenberger
01118a7214
Don't create appender when not needed, remove unused variable declaration
8 years ago
Jochen Berger
3aae70f752
avoid some costly calls to String#trim()
8 years ago
jochenberger
3588439e6b
Make inner class static
8 years ago
jochenberger
7e85a14247
Make LimitingEvaluationListener *static*
8 years ago
jochenberger
ed783b5806
Don't initialize Configuration if we don't need it
8 years ago
jochenberger
6cf30fd1a0
Update ValueNode.java
8 years ago
Jochen Berger
db59d0ba21
use json-smart to parse the query
8 years ago
Ari Fogel
38c7e791f6
implement not (!) operator in filter expressions
8 years ago
kysnm
0ea1cb59ad
The conditions the same as the other
9 years ago
kysnm
2572cbab02
Property must be separated by commas
9 years ago
Jochen Berger
8b26fae7b4
fix and test for 'not exists' serialization ( fixes #178 )
9 years ago
Jochen Berger
a8bc2af229
remove the get_json function that was accidentally introduced when merging #167 ( fixes #180 )
9 years ago
Jochen Berger
7115c6155f
fix detection of trailing comma
9 years ago
Jochen Berger
f3ac1a0d15
fail when there are multiple commas between subscriptions
9 years ago
Jochen Berger
4bfa932cdf
fail when there are spaces inside array indexes
9 years ago
Jochen Berger
c521615a5a
speed up the abort of an evaluation. It's quite expensive to create an exception and fill its stack. As we don't care about the stack anyway, we don't fill it, also we cache a single exception instance
9 years ago
mchmielarz
1e3f11cbc2
Solution proposal for #181
9 years ago
Alexey Makeyev
0d235b9ca6
more generic fix for issue #175
9 years ago
Alexey Makeyev
58c454b52d
Fix issue #175 - Size evaluation could break indefinite path evaluation
9 years ago
Alexey Makeyev
67b3ce7888
fix for incorrect handling of logical operator priorities
9 years ago
Kalle Stenflo
d3231e7f04
Some methods (i.e. DocumentContext's set) fail when JSON name has ' in it #171
9 years ago
Matthew J Greenwood
e6d2546c42
removed getLastElement
9 years ago
Matthew J Greenwood
5e2ef13c64
added negative test cases - removed readPosition from function parameter parser, ready for review
9 years ago
Matthew J Greenwood
5d8e209141
Added an append function such that JSON can be appended to the current document and then a function executed over the result.
9 years ago
Matthew J Greenwood
01bdbe2cc3
fixing broken tests
...
changing format of functions path expr with/without args
removing errant unwrap call - added to test
9 years ago