Todd Baert
bad5b0a7f5
feat: events ( #476 )
...
* feat: events
Signed-off-by: Todd Baert <todd.baert@dynatrace.com>
* fixup: fix bad import, fix test
Signed-off-by: Todd Baert <todd.baert@dynatrace.com>
* fixup: add more coverage of internal
Signed-off-by: Todd Baert <todd.baert@dynatrace.com>
* fixup: remove unused imports
Signed-off-by: Todd Baert <todd.baert@dynatrace.com>
* fixup: unsed imports
Signed-off-by: Todd Baert <todd.baert@dynatrace.com>
* fixup: make inner static
Signed-off-by: Todd Baert <todd.baert@dynatrace.com>
* fixup: more tests, run ready immediately
Signed-off-by: Todd Baert <todd.baert@dynatrace.com>
* fixup: improve reliability of error tests
Signed-off-by: Todd Baert <todd.baert@dynatrace.com>
* Update src/main/java/dev/openfeature/sdk/OpenFeatureAPI.java
Co-authored-by: Giovanni Liva <giovanni.liva@dynatrace.com>
Signed-off-by: Todd Baert <todd.baert@dynatrace.com>
* fixup: review feedback, add comments
Signed-off-by: Todd Baert <todd.baert@dynatrace.com>
* fixup: add provider repo tests, fitest warnings
Signed-off-by: Todd Baert <todd.baert@dynatrace.com>
* Update src/main/java/dev/openfeature/sdk/OpenFeatureAPI.java
Co-authored-by: Kavindu Dodanduwa <Kavindu-Dodan@users.noreply.github.com>
Signed-off-by: Todd Baert <todd.baert@dynatrace.com>
* fixup: shorten javadoc links, shutdown tasks, use methods refs
Signed-off-by: Todd Baert <todd.baert@dynatrace.com>
* fixup: flaky test
Signed-off-by: Todd Baert <todd.baert@dynatrace.com>
* Update src/main/java/dev/openfeature/sdk/OpenFeatureClient.java
Co-authored-by: Justin Abrahms <jabrahms@ebay.com>
Signed-off-by: Todd Baert <todd.baert@dynatrace.com>
* fixup: feedback from justin
Signed-off-by: Todd Baert <todd.baert@dynatrace.com>
* fixup: improve javadoc
Signed-off-by: Todd Baert <todd.baert@dynatrace.com>
* fixup: test race condition fixes
Signed-off-by: Todd Baert <todd.baert@dynatrace.com>
---------
Signed-off-by: Todd Baert <todd.baert@dynatrace.com>
Co-authored-by: Giovanni Liva <giovanni.liva@dynatrace.com>
Co-authored-by: Kavindu Dodanduwa <Kavindu-Dodan@users.noreply.github.com>
Co-authored-by: Justin Abrahms <jabrahms@ebay.com>
2023-07-12 09:22:16 -07:00
Todd Baert
693721e36c
feat: add empty constructors to data classes ( #491 )
...
Signed-off-by: Todd Baert <todd.baert@dynatrace.com>
2023-06-28 10:40:10 -04:00
Todd Baert
ecfeddf0f6
chore: rename flag metadata ( #478 )
...
Signed-off-by: Todd Baert <todd.baert@dynatrace.com>
2023-06-16 13:53:31 -04:00
Kavindu Dodanduwa
93dde1d259
chore: expose get value for metadata ( #468 )
...
expose get value for metadata
Signed-off-by: Kavindu Dodanduwa <kavindudodanduwa@gmail.com>
Co-authored-by: Justin Abrahms <jabrahms@ebay.com>
2023-06-09 07:57:08 -07:00
Kavindu Dodanduwa
3ed40a3887
feat: add flag metadata ( #459 )
...
Signed-off-by: Kavindu Dodanduwa <kavindudodanduwa@gmail.com>
2023-06-06 21:44:49 -04:00
Lars Opitz
5f173ff860
feat: add initialize and shutdown behavior ( #456 )
...
Signed-off-by: Lars Opitz <Lars@Lars-Opitz.de>
Co-authored-by: Todd Baert <toddbaert@gmail.com>
2023-06-06 21:36:47 -04:00
Justin Abrahms
d4c43d74bc
feat: Support mapping a client to a given provider. ( #388 )
...
* Support mapping a client to a given provider.
Signed-off-by: Justin Abrahms <justin@abrah.ms>
* Add a few javadocs.
Signed-off-by: Justin Abrahms <justin@abrah.ms>
* Special case the null client name
Signed-off-by: Justin Abrahms <justin@abrah.ms>
* Add some missing test cases.
Signed-off-by: Justin Abrahms <justin@abrah.ms>
* Moving to an object map unwraps the values.
Signed-off-by: Justin Abrahms <justin@abrah.ms>
* Fix equality test.
Signed-off-by: Justin Abrahms <justin@abrah.ms>
* Carry targeting key when copying over null object.
Signed-off-by: Justin Abrahms <justin@abrah.ms>
* Test provider name, not object equality.
Signed-off-by: Justin Abrahms <justin@abrah.ms>
* Client-based getProvider is now an overload; Use read lock, not write lock.
Signed-off-by: Justin Abrahms <justin@abrah.ms>
* Update src/main/java/dev/openfeature/sdk/OpenFeatureAPI.java
Co-authored-by: Lars Opitz <lars@lars-opitz.de>
Signed-off-by: Justin Abrahms <justin@abrah.ms>
* Simplify locking logic around providers.
There's no such thing as "API without a provider set" anymore. We now default to NoOpProvider in the API (not client).
Signed-off-by: Justin Abrahms <justin@abrah.ms>
* Add a few missing tests
Signed-off-by: Justin Abrahms <justin@abrah.ms>
---------
Signed-off-by: Justin Abrahms <justin@abrah.ms>
Co-authored-by: Lars Opitz <lars@lars-opitz.de>
Co-authored-by: Michael Beemer <beeme1mr@users.noreply.github.com>
2023-05-19 15:27:31 -07:00
Todd Baert
a5c93aca0a
chore: rename integration tests e2e ( #417 )
...
* chore: rename integration tests e2e
Signed-off-by: Todd Baert <todd.baert@dynatrace.com>
* Update pom.xml
Co-authored-by: Giovanni Liva <giovanni.liva@dynatrace.com>
Signed-off-by: Todd Baert <toddbaert@gmail.com>
---------
Signed-off-by: Todd Baert <todd.baert@dynatrace.com>
Signed-off-by: Todd Baert <toddbaert@gmail.com>
Co-authored-by: Giovanni Liva <giovanni.liva@dynatrace.com>
2023-05-03 04:36:22 +00:00
Kavindu Dodanduwa
d8e7d9e10c
fix: validate list content to be values ( #350 )
...
validate list content
Signed-off-by: Kavindu Dodanduwa <kavindudodanduwa@gmail.com>
Co-authored-by: Justin Abrahms <jabrahms@ebay.com>
2023-03-22 16:46:53 +00:00
apulbere
0a27a77fc1
fix: handling of double and integer ( #316 )
...
Signed-off-by: apulbere <apulbere@yahoo.com>
2023-03-08 08:49:05 -05:00
Ryan Lamb
464820d5da
fix: Do not throw null reference exception accessing a missing item. ( #300 )
...
Signed-off-by: Ryan Lamb <4955475+kinyoklion@users.noreply.github.com>
2023-02-16 12:20:51 -08:00
Thiyagu GK
d78c99ce16
feat: remove the deprecated setTargetingKey method in EvaluationContext. ( #290 )
...
remove the deprecated setTargetingKey method in EvaluationContext.
Signed-off-by: thiyagu06 <thiyagu103@gmail.com>
2023-02-10 15:32:34 -05:00
Justin Abrahms
07ecea1bf9
chore: Update slf4j ( #284 )
...
* Update slf4j
Signed-off-by: Justin Abrahms <jabrahms@ebay.com>
* Move to a different log testing method
Signed-off-by: Justin Abrahms <jabrahms@ebay.com>
* Fix logger in another place too
Signed-off-by: Justin Abrahms <jabrahms@ebay.com>
---------
Signed-off-by: Justin Abrahms <jabrahms@ebay.com>
2023-02-10 14:09:57 -05:00
Javier Collado
bd4e12e16f
fix: MutableContext and ImmutableContext merge are made recursive ( #280 )
...
MutableContext and ImmutableContext merge are made recursive
Signed-off-by: Javier Collado <javicv@gmail.com>
Co-authored-by: Thiyagu GK <thiyagu103@gmail.com>
Co-authored-by: Todd Baert <toddbaert@gmail.com>
Co-authored-by: Michael Beemer <beeme1mr@users.noreply.github.com>
2023-02-08 12:22:43 -05:00
Kavindu Dodanduwa
93499975d0
fix: improve error logs for evaluation failure ( #276 )
...
improve error logs for evaluation failure
Signed-off-by: Kavindu Dodanduwa <kavindudodanduwa@gmail.com>
2023-02-03 11:36:51 -05:00
Thiyagu GK
6c14d87c2e
feat: added implementation of immutable evaluation context ( #210 )
...
added immutable context implementation
Signed-off-by: thiyagu06 <thiyagu103@gmail.com>
Co-authored-by: Todd Baert <toddbaert@gmail.com>
2023-01-30 23:29:50 -05:00
Todd Baert
6cb3fe485b
chore: update test annotations, spec badge ( #265 )
...
Update the test annotations with new spec verbiage, and update the spec compliance badge.
The functional changes have already been merged/released.
Signed-off-by: Todd Baert <toddbaert@gmail.com>
2023-01-26 18:52:58 +00:00
Todd Baert
d069a8fa9d
feat: add STATIC, CACHED reasons ( #240 )
...
feat: add STATIC, CACHED reasons.
Signed-off-by: Todd Baert <toddbaert@gmail.com>
Signed-off-by: Todd Baert <toddbaert@gmail.com>
2023-01-19 07:18:52 +00:00
Todd Baert
f8ac46f00a
chore: update cuke submodule, tests ( #231 )
...
* chore: update cuke submodule, tests
Signed-off-by: Todd Baert <toddbaert@gmail.com>
* fixup: add note about flagd caching
Signed-off-by: Todd Baert <toddbaert@gmail.com>
Signed-off-by: Todd Baert <toddbaert@gmail.com>
2023-01-10 09:28:17 -08:00
renovate[bot]
60d2cbbc14
chore(deps): update dependency dev.openfeature.contrib.providers:flagd to v0.5.2 ( #181 )
...
* chore(deps): update dependency dev.openfeature.contrib.providers:flagd to v0.5.2
* chore: relax gRPC deadline in integration test
Signed-off-by: Todd Baert <toddbaert@gmail.com>
Signed-off-by: Todd Baert <toddbaert@gmail.com>
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Todd Baert <toddbaert@gmail.com>
2022-11-28 14:53:49 -05:00
Todd Baert
1a40c97d23
chore: fix issues with compilation on later JDKs ( #178 )
...
chore: fix compile/lint issues on 8+
Signed-off-by: Todd Baert <toddbaert@gmail.com>
Signed-off-by: Todd Baert <toddbaert@gmail.com>
2022-11-20 23:25:45 -08:00
Todd Baert
6a299d7228
chore: update test/spec association numbers, badge ( #156 )
...
* chore: update test/spec association numbers
Signed-off-by: Todd Baert <toddbaert@gmail.com>
* chore: update spec tag
Signed-off-by: Todd Baert <toddbaert@gmail.com>
Signed-off-by: Todd Baert <toddbaert@gmail.com>
2022-10-17 14:05:26 -07:00
Robert Grassian
fad0f35fc8
fix: merge eval context ( #149 )
...
fix merge eval context
Signed-off-by: Robert Grassian <robert.grassian@split.io>
Signed-off-by: Robert Grassian <robert.grassian@split.io>
2022-10-13 16:24:25 -07:00
Todd Baert
5da918205b
chore: re-enable integration tests ( #146 )
...
Update test harness and re-enable integration test profile
2022-10-13 12:55:03 -04:00
Todd Baert
2192932863
feat!: add rw locks to client/api, hook accessor name ( #131 )
...
* fix: add read/write locks to client/api
Signed-off-by: Todd Baert <toddbaert@gmail.com>
* dont lock entire evaluation
Signed-off-by: Todd Baert <toddbaert@gmail.com>
* add tests
Signed-off-by: Todd Baert <toddbaert@gmail.com>
* fixup comment
Signed-off-by: Todd Baert <toddbaert@gmail.com>
* fixup pom comment
Signed-off-by: Todd Baert <toddbaert@gmail.com>
* increase lock granularity, imporove tests
Signed-off-by: Todd Baert <toddbaert@gmail.com>
* fix spotbugs
Signed-off-by: Todd Baert <toddbaert@gmail.com>
* remove commented test
Signed-off-by: Todd Baert <toddbaert@gmail.com>
Signed-off-by: Todd Baert <toddbaert@gmail.com>
2022-10-11 22:43:50 +00:00
Todd Baert
e9732b582d
feat!: use evaluation context interface ( #112 )
...
* POC - use evaluation context interface
Signed-off-by: Todd Baert <toddbaert@gmail.com>
* make .merge non-static
Signed-off-by: Todd Baert <toddbaert@gmail.com>
* improve naming
Signed-off-by: Todd Baert <toddbaert@gmail.com>
* add @override
Signed-off-by: Todd Baert <toddbaert@gmail.com>
* Update src/main/java/dev/openfeature/sdk/EvaluationContext.java
Co-authored-by: Justin Abrahms <jabrahms@ebay.com>
Signed-off-by: Todd Baert <toddbaert@gmail.com>
* Update src/main/java/dev/openfeature/sdk/MutableContext.java
Co-authored-by: Justin Abrahms <jabrahms@ebay.com>
Signed-off-by: Todd Baert <toddbaert@gmail.com>
* address PR feedback
Signed-off-by: Todd Baert <toddbaert@gmail.com>
Signed-off-by: Todd Baert <toddbaert@gmail.com>
Co-authored-by: Justin Abrahms <jabrahms@ebay.com>
2022-10-06 05:32:29 +00:00
Justin Abrahms
6eeeddd2ea
refactor!: Change the package name. Everyone knows it's java (or it doesn't matter) ( #111 )
...
* Change the package name. Everyone knows it's java (or it doesn't matter)
Fixes #82
Signed-off-by: Justin Abrahms <justin@abrah.ms>
* Missed 2 strings
Signed-off-by: Justin Abrahms <justin@abrah.ms>
* remove broken flagd import until changes absorbed
Signed-off-by: Todd Baert <toddbaert@gmail.com>
Signed-off-by: Justin Abrahms <justin@abrah.ms>
Signed-off-by: Todd Baert <toddbaert@gmail.com>
Co-authored-by: Todd Baert <toddbaert@gmail.com>
2022-10-05 11:46:04 -07:00
Todd Baert
84f220d813
feat!: errorCode as enum, reason as string ( #80 )
...
* feat!: errorCode as enum, reason as string
- makes errorCode an enum
- makes reason a string
- adds errorMessage to resolution/evaluation details
2022-09-30 12:41:48 -04:00
Todd Baert
f8d62eea2f
chore: add integration tests ( #77 )
...
* chore: add integration tests
Signed-off-by: Todd Baert <toddbaert@gmail.com>
* improve POM spacing
Signed-off-by: Todd Baert <toddbaert@gmail.com>
Signed-off-by: Todd Baert <toddbaert@gmail.com>
2022-09-20 09:48:34 -04:00
Thomas Poignant
2eec1a5519
feat: Add asObjectMap to get the EvaluationContext as Map<String,Object> ( #75 )
...
* Add asObjectMap to get the EvaluationContext as Map<String,Object>
Signed-off-by: Thomas Poignant <thomas.poignant@gofeatureflag.org>
* Fix liniting issue
Signed-off-by: Thomas Poignant <thomas.poignant@gofeatureflag.org>
* fix PMD issue
Signed-off-by: Thomas Poignant <thomas.poignant@gofeatureflag.org>
Signed-off-by: Thomas Poignant <thomas.poignant@gofeatureflag.org>
2022-09-16 15:17:58 +01:00
Robert Grassian
81ab0710ea
fix: isList check in Value checks type of list ( #70 )
...
* isList check of Value checks type of list
Signed-off-by: Robert Grassian <robert.grassian@split.io>
* test for empty list
Signed-off-by: Robert Grassian <robert.grassian@split.io>
Signed-off-by: Robert Grassian <robert.grassian@split.io>
2022-09-13 15:09:59 -07:00
Todd Baert
60fad0507a
Throw on invalid values
...
Signed-off-by: Todd Baert <toddbaert@gmail.com>
2022-09-09 13:59:18 -04:00
Todd Baert
5d262470e8
feat!: use value for object resolver
...
Signed-off-by: Todd Baert <toddbaert@gmail.com>
2022-09-09 11:27:29 -04:00
Todd Baert
3e62414222
feat!: use instant not zoneddatetime
...
Signed-off-by: Todd Baert <toddbaert@gmail.com>
2022-09-09 10:46:00 -04:00
Todd Baert
0152a1eef9
feat: add object to value wrapper
...
Signed-off-by: Todd Baert <toddbaert@gmail.com>
2022-09-09 10:44:12 -04:00
Todd Baert
4fa0a08389
!feat: Make evaluation context setters consistent
...
Signed-off-by: Todd Baert <toddbaert@gmail.com>
2022-09-08 11:14:29 -04:00
Todd Baert
7e6259c14f
breaking: store all numbers as doubles
...
Signed-off-by: Todd Baert <toddbaert@gmail.com>
2022-09-07 12:31:40 -04:00
Justin Abrahms
7fa39bcd04
Keep tests in line with spec changes
2022-08-29 11:18:46 -07:00
Justin Abrahms
50225388af
Remove unused parameter
2022-08-29 10:53:40 -07:00
Justin Abrahms
4ec5258d95
Remove flag eval options from provider API
2022-08-29 10:50:54 -07:00
Todd Baert
3cf5a6ffbb
fix: update provider object eval, T -> Structure
...
Signed-off-by: Todd Baert <toddbaert@gmail.com>
2022-08-28 11:43:41 -04:00
Justin Abrahms
4662444f7a
PMD fixes
...
Signed-off-by: Justin Abrahms <justin@abrah.ms>
2022-08-26 09:36:43 -07:00
Justin Abrahms
c86b4c1886
Docs for Value
...
Clear up warning of parameterized types.
Signed-off-by: Justin Abrahms <justin@abrah.ms>
2022-08-26 08:56:04 -07:00
Justin Abrahms
aeb14f61e3
Show what using EvaluationContext looks like in dev experience tests
...
Signed-off-by: Justin Abrahms <justin@abrah.ms>
2022-08-26 08:55:57 -07:00
Justin Abrahms
2ad492a79c
@Delegate was copying over methods we didn't care about, which made usage of the API ambiguous.
...
Signed-off-by: Justin Abrahms <justin@abrah.ms>
2022-08-26 08:55:54 -07:00
Justin Abrahms
2e5b26f2e4
Document what a Structure is as well as why we need to use it for providers.
...
Signed-off-by: Justin Abrahms <justin@abrah.ms>
2022-08-26 08:55:50 -07:00
Todd Baert
84dbd4c819
store times as ZonedDateTime
...
Signed-off-by: Todd Baert <toddbaert@gmail.com>
2022-08-26 10:58:37 -04:00
Todd Baert
6eed1a3107
Remove unused enum
...
Signed-off-by: Todd Baert <toddbaert@gmail.com>
2022-08-25 13:11:04 -04:00
Todd Baert
b81b944561
Adding JSON node value abstraction
...
Signed-off-by: Todd Baert <toddbaert@gmail.com>
2022-08-25 10:06:26 -04:00
Todd Baert
a862325354
Encapsuate instead of inherent Strcuture
...
Signed-off-by: Todd Baert <toddbaert@gmail.com>
2022-08-24 12:41:50 -04:00