Skip to content

Commit 1a5564e

Browse files
committed
Merge branch 'hotfix/5.234.2'
2 parents 5519012 + a6078c9 commit 1a5564e

File tree

4 files changed

+19
-6
lines changed

4 files changed

+19
-6
lines changed

app/version/version.properties

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
VERSION=5.234.1
1+
VERSION=5.234.2

remote-messaging/remote-messaging-impl/src/main/java/com/duckduckgo/remote/messaging/impl/di/RMFMapperModule.kt

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,7 @@ import com.squareup.moshi.JsonAdapter
3434
import com.squareup.moshi.Moshi
3535
import com.squareup.moshi.adapters.PolymorphicJsonAdapterFactory
3636
import com.squareup.moshi.kotlin.reflect.KotlinJsonAdapterFactory
37+
import dagger.Lazy
3738
import dagger.Module
3839
import dagger.Provides
3940
import dagger.SingleInstanceIn
@@ -45,7 +46,7 @@ object RMFMapperModule {
4546
@Provides
4647
@SingleInstanceIn(AppScope::class)
4748
fun providesMessageMapper(
48-
messageAdapter: JsonAdapter<RemoteMessage>,
49+
messageAdapter: Lazy<JsonAdapter<RemoteMessage>>,
4950
): MessageMapper {
5051
return MessageMapper(messageAdapter)
5152
}

remote-messaging/remote-messaging-impl/src/main/java/com/duckduckgo/remote/messaging/impl/mappers/MessageMapper.kt

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -18,18 +18,19 @@ package com.duckduckgo.remote.messaging.impl.mappers
1818

1919
import com.duckduckgo.remote.messaging.api.RemoteMessage
2020
import com.squareup.moshi.JsonAdapter
21+
import dagger.Lazy
2122

2223
class MessageMapper(
23-
private val messageAdapter: JsonAdapter<RemoteMessage>,
24+
private val messageAdapter: Lazy<JsonAdapter<RemoteMessage>>,
2425
) {
2526

2627
fun toString(sitePayload: RemoteMessage): String {
27-
return messageAdapter.toJson(sitePayload)
28+
return messageAdapter.get().toJson(sitePayload)
2829
}
2930

3031
fun fromMessage(payload: String): RemoteMessage? {
3132
return runCatching {
32-
messageAdapter.fromJson(payload)
33+
messageAdapter.get().fromJson(payload)
3334
}.getOrNull()
3435
}
3536
}

remote-messaging/remote-messaging-impl/src/test/java/com/duckduckgo/remote/messaging/fixtures/TestMessageMapper.kt

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,18 @@
1616

1717
package com.duckduckgo.remote.messaging.fixtures
1818

19+
import com.duckduckgo.remote.messaging.api.RemoteMessage
1920
import com.duckduckgo.remote.messaging.impl.di.RMFMapperModule
2021
import com.duckduckgo.remote.messaging.impl.mappers.MessageMapper
22+
import com.squareup.moshi.JsonAdapter
23+
import dagger.Lazy
2124

22-
fun getMessageMapper() = MessageMapper(RMFMapperModule.provideMoshiAdapter(messageActionPlugins))
25+
fun getMessageMapper(): MessageMapper {
26+
val lazyAdapter = object : Lazy<JsonAdapter<RemoteMessage>> {
27+
override fun get(): JsonAdapter<RemoteMessage> {
28+
return RMFMapperModule.provideMoshiAdapter(messageActionPlugins)
29+
}
30+
}
31+
32+
return MessageMapper(lazyAdapter)
33+
}

0 commit comments

Comments
 (0)