Skip to content

Commit 0d94b7c

Browse files
chore: upgrade openfeature kotlin sdk (#274)
Co-authored-by: Bence Hornák <[email protected]>
1 parent 7e67755 commit 0d94b7c

File tree

16 files changed

+35
-37
lines changed

16 files changed

+35
-37
lines changed

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ The DevCycle Android SDK includes support for [OpenFeature](https://openfeature.
2828

2929
```kotlin
3030
import com.devcycle.sdk.android.openfeature.DevCycleProvider
31-
import dev.openfeature.sdk.OpenFeatureAPI
31+
import dev.openfeature.kotlin.sdk.OpenFeatureAPI
3232

3333
// Initialize the DevCycle provider
3434
val provider = DevCycleProvider(

android-client-sdk/build.gradle

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -138,8 +138,8 @@ dependencies {
138138
implementation("org.jetbrains.kotlin:kotlin-reflect:$kotlin_reflect_version")
139139
implementation("androidx.core:core-ktx:$androidx_version")
140140

141-
// OpenFeature Android SDK
142-
implementation("dev.openfeature:android-sdk:0.4.1")
141+
// OpenFeature Kotlin SDK
142+
implementation("dev.openfeature:kotlin-sdk:0.6.2")
143143

144144
testImplementation("org.junit.jupiter:junit-jupiter-api:$junit_version")
145145
testRuntimeOnly("org.junit.jupiter:junit-jupiter-engine:$junit_version")

android-client-sdk/proguard-rules.pro

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -118,5 +118,5 @@
118118

119119
# OpenFeature integration classes
120120
-keep class com.devcycle.sdk.android.openfeature.** { *; }
121-
-keep class dev.openfeature.sdk.** { *; }
122-
-dontwarn dev.openfeature.sdk.**
121+
-keep class dev.openfeature.kotlin.sdk.** { *; }
122+
-dontwarn dev.openfeature.kotlin.sdk.**

android-client-sdk/src/main/java/com/devcycle/sdk/android/openfeature/DevCycleContextMapper.kt

Lines changed: 7 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,8 @@
11
package com.devcycle.sdk.android.openfeature
22

33
import com.devcycle.sdk.android.model.DevCycleUser
4-
import com.devcycle.sdk.android.util.DevCycleLogger
5-
import dev.openfeature.sdk.EvaluationContext
6-
import dev.openfeature.sdk.Value
4+
import dev.openfeature.kotlin.sdk.EvaluationContext
5+
import dev.openfeature.kotlin.sdk.Value
76

87
object DevCycleContextMapper {
98

@@ -15,7 +14,7 @@ object DevCycleContextMapper {
1514
var hasStandardAttributes = false
1615
var isAnonymousExplicitlySet = false
1716

18-
context.getTargetingKey()?.takeIf { it.isNotEmpty() }?.let {
17+
context.getTargetingKey().takeIf { it.isNotEmpty() }?.let {
1918
userId = it
2019
} ?: run {
2120
context.getValue("user_id")?.takeIf { it is Value.String }?.asString()?.let {
@@ -176,14 +175,14 @@ object DevCycleContextMapper {
176175
is Value.Structure -> {
177176
// Access structure directly
178177
val structureMap = value.structure
179-
structureMap?.mapValues { (_, v) ->
180-
convertValueToAny(v)
181-
}?.filterValues { it != null }
178+
structureMap.mapValues { (_, v) ->
179+
convertValueToAny(v)
180+
}.filterValues { it != null }
182181
}
183182
is Value.List -> {
184183
// Access list directly
185184
val list = value.list
186-
list?.mapNotNull { convertValueToAny(it) } ?: emptyList<Any>()
185+
list.mapNotNull { convertValueToAny(it) }
187186
}
188187
else -> {
189188
// Ensure the string representation is safe

android-client-sdk/src/main/java/com/devcycle/sdk/android/openfeature/DevCycleEventMapper.kt

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,8 @@
11
package com.devcycle.sdk.android.openfeature
22

33
import com.devcycle.sdk.android.model.DevCycleEvent
4-
import com.devcycle.sdk.android.util.DevCycleLogger
5-
import dev.openfeature.sdk.TrackingEventDetails
6-
import dev.openfeature.sdk.Value
4+
import dev.openfeature.kotlin.sdk.TrackingEventDetails
5+
import dev.openfeature.kotlin.sdk.Value
76
import java.math.BigDecimal
87

98
object DevCycleEventMapper {
@@ -55,14 +54,14 @@ object DevCycleEventMapper {
5554
is Value.Structure -> {
5655
// Recursively unwrap nested structure
5756
val structureMap = value.structure
58-
structureMap?.mapValues { (_, v) ->
57+
structureMap.mapValues { (_, v) ->
5958
unwrapValue(v)
60-
}?.filterValues { it != null }
59+
}.filterValues { it != null }
6160
}
6261
is Value.List -> {
6362
// Recursively unwrap nested list
6463
val list = value.list
65-
list?.mapNotNull { unwrapValue(it) }
64+
list.mapNotNull { unwrapValue(it) }
6665
}
6766
else -> null
6867
}

android-client-sdk/src/main/java/com/devcycle/sdk/android/openfeature/DevCycleProvider.kt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,8 +8,8 @@ import com.devcycle.sdk.android.model.BaseConfigVariable
88
import com.devcycle.sdk.android.model.DevCycleUser
99
import com.devcycle.sdk.android.model.Variable
1010
import com.devcycle.sdk.android.util.DevCycleLogger
11-
import dev.openfeature.sdk.*
12-
import dev.openfeature.sdk.exceptions.OpenFeatureError
11+
import dev.openfeature.kotlin.sdk.*
12+
import dev.openfeature.kotlin.sdk.exceptions.OpenFeatureError
1313
import kotlinx.coroutines.suspendCancellableCoroutine
1414
import org.json.JSONArray
1515
import org.json.JSONObject

android-client-sdk/src/main/java/com/devcycle/sdk/android/openfeature/DevCycleProviderMetadata.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
package com.devcycle.sdk.android.openfeature
22

3-
import dev.openfeature.sdk.ProviderMetadata
3+
import dev.openfeature.kotlin.sdk.ProviderMetadata
44

55
class DevCycleProviderMetadata(
66
override val name: String = "DevCycle"

android-client-sdk/src/main/java/com/devcycle/sdk/android/openfeature/JsonValueConverter.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
package com.devcycle.sdk.android.openfeature
22

3-
import dev.openfeature.sdk.Value
3+
import dev.openfeature.kotlin.sdk.Value
44
import org.json.JSONArray
55
import org.json.JSONObject
66

android-client-sdk/src/test/java/com/devcycle/sdk/android/openfeature/DevCycleContextMapperTest.kt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,8 @@ package com.devcycle.sdk.android.openfeature
22

33
import com.devcycle.sdk.android.util.JSONMapper
44
import com.fasterxml.jackson.core.type.TypeReference
5-
import dev.openfeature.sdk.ImmutableContext
6-
import dev.openfeature.sdk.Value
5+
import dev.openfeature.kotlin.sdk.ImmutableContext
6+
import dev.openfeature.kotlin.sdk.Value
77
import org.junit.jupiter.api.Test
88
import org.junit.jupiter.api.Assertions.*
99

android-client-sdk/src/test/java/com/devcycle/sdk/android/openfeature/DevCycleEventMapperTest.kt

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,9 @@ package com.devcycle.sdk.android.openfeature
22

33
import com.devcycle.sdk.android.util.JSONMapper
44
import com.fasterxml.jackson.core.type.TypeReference
5-
import dev.openfeature.sdk.ImmutableStructure
6-
import dev.openfeature.sdk.TrackingEventDetails
7-
import dev.openfeature.sdk.Value
5+
import dev.openfeature.kotlin.sdk.ImmutableStructure
6+
import dev.openfeature.kotlin.sdk.TrackingEventDetails
7+
import dev.openfeature.kotlin.sdk.Value
88
import org.junit.jupiter.api.Test
99
import org.junit.jupiter.api.Assertions.*
1010
import java.math.BigDecimal

0 commit comments

Comments
 (0)