Skip to content

Commit d1b7bc4

Browse files
committed
add a sane default Settings object similar to swift.
1 parent b7fbef2 commit d1b7bc4

File tree

1 file changed

+24
-1
lines changed
  • core/src/main/java/com/segment/analytics/kotlin/core

1 file changed

+24
-1
lines changed

core/src/main/java/com/segment/analytics/kotlin/core/State.kt

Lines changed: 24 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,30 @@ data class System(
3131
storage.read(Storage.Constants.Settings) ?: ""
3232
)
3333
} catch (ignored: Exception) {
34-
configuration.defaultSettings
34+
35+
// This could be an empty Settings...
36+
if (configuration.defaultSettings.integrations.contains("Segment.io")) {
37+
configuration.defaultSettings
38+
} else {
39+
Settings(
40+
integrations = buildJsonObject {
41+
put(
42+
"Segment.io",
43+
buildJsonObject {
44+
put(
45+
"apiKey",
46+
configuration.writeKey
47+
)
48+
put("apiHost", Constants.DEFAULT_API_HOST)
49+
})
50+
},
51+
plan = emptyJsonObject,
52+
edgeFunction = emptyJsonObject,
53+
middlewareSettings = emptyJsonObject
54+
)
55+
}
56+
57+
3558
}
3659
return System(
3760
configuration = configuration,

0 commit comments

Comments
 (0)