Skip to content

Commit 9cf8a97

Browse files
authored
Merge pull request #17223 from wordpress-mobile/analysis/wordpress-lifecycle-event-deprecated-warnings
[Compile Warnings As Errors] WordPress Module - Resolve `LifecycleEvent` Deprecated Warnings
2 parents d25d86d + b60be53 commit 9cf8a97

File tree

6 files changed

+25
-45
lines changed

6 files changed

+25
-45
lines changed

WordPress/src/main/java/org/wordpress/android/AppInitializer.kt

Lines changed: 5 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -28,9 +28,8 @@ import androidx.core.provider.FontRequest
2828
import androidx.emoji.text.EmojiCompat
2929
import androidx.emoji.text.EmojiCompat.InitCallback
3030
import androidx.emoji.text.FontRequestEmojiCompatConfig
31-
import androidx.lifecycle.Lifecycle
32-
import androidx.lifecycle.LifecycleObserver
33-
import androidx.lifecycle.OnLifecycleEvent
31+
import androidx.lifecycle.DefaultLifecycleObserver
32+
import androidx.lifecycle.LifecycleOwner
3433
import androidx.lifecycle.ProcessLifecycleOwner
3534
import androidx.work.WorkManager
3635
import com.android.volley.RequestQueue
@@ -128,7 +127,7 @@ import javax.inject.Singleton
128127
class AppInitializer @Inject constructor(
129128
wellSqlInitializer: WellSqlInitializer,
130129
private val application: Application
131-
) : LifecycleObserver {
130+
) : DefaultLifecycleObserver {
132131
@Inject lateinit var dispatcher: Dispatcher
133132
@Inject lateinit var accountStore: AccountStore
134133
@Inject lateinit var siteStore: SiteStore
@@ -678,16 +677,12 @@ class AppInitializer @Inject constructor(
678677
EmojiCompat.init(config)
679678
}
680679

681-
@Suppress("unused")
682-
@OnLifecycleEvent(Lifecycle.Event.ON_START)
683-
fun onAppComesFromBackground() {
680+
override fun onStart(owner: LifecycleOwner) {
684681
applicationLifecycleMonitor.onAppComesFromBackground()
685682
appConfig.refresh()
686683
}
687684

688-
@Suppress("unused")
689-
@OnLifecycleEvent(Lifecycle.Event.ON_STOP)
690-
fun onAppGoesToBackground() {
685+
override fun onStop(owner: LifecycleOwner) {
691686
applicationLifecycleMonitor.onAppGoesToBackground()
692687
}
693688

WordPress/src/main/java/org/wordpress/android/ui/posts/PostListEventListener.kt

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
package org.wordpress.android.ui.posts
22

3+
import androidx.lifecycle.DefaultLifecycleObserver
34
import androidx.lifecycle.Lifecycle
4-
import androidx.lifecycle.LifecycleObserver
5-
import androidx.lifecycle.OnLifecycleEvent
5+
import androidx.lifecycle.LifecycleOwner
66
import kotlinx.coroutines.CoroutineDispatcher
77
import kotlinx.coroutines.CoroutineScope
88
import kotlinx.coroutines.Job
@@ -59,7 +59,7 @@ class PostListEventListener(
5959
private val triggerPreviewStateUpdate: (PostListRemotePreviewState, PostInfoType) -> Unit,
6060
private val isRemotePreviewingFromPostsList: () -> Boolean,
6161
private val hasRemoteAutoSavePreviewError: () -> Boolean
62-
) : LifecycleObserver, CoroutineScope {
62+
) : DefaultLifecycleObserver, CoroutineScope {
6363
init {
6464
dispatcher.register(this)
6565
EventBus.getDefault().register(this)
@@ -94,9 +94,7 @@ class PostListEventListener(
9494
* Handles the [Lifecycle.Event.ON_DESTROY] event to cleanup the registration for dispatcher and removing the
9595
* observer for lifecycle.
9696
*/
97-
@Suppress("unused")
98-
@OnLifecycleEvent(Lifecycle.Event.ON_DESTROY)
99-
private fun onDestroy() {
97+
override fun onDestroy(owner: LifecycleOwner) {
10098
job.cancel()
10199
lifecycle.removeObserver(this)
102100
dispatcher.unregister(this)

WordPress/src/main/java/org/wordpress/android/ui/posts/editor/StoriesEventListener.kt

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -3,10 +3,10 @@ package org.wordpress.android.ui.posts.editor
33
import android.app.Activity
44
import android.net.Uri
55
import androidx.appcompat.app.AlertDialog.Builder
6+
import androidx.lifecycle.DefaultLifecycleObserver
67
import androidx.lifecycle.Lifecycle
78
import androidx.lifecycle.Lifecycle.State.CREATED
8-
import androidx.lifecycle.LifecycleObserver
9-
import androidx.lifecycle.OnLifecycleEvent
9+
import androidx.lifecycle.LifecycleOwner
1010
import com.google.android.material.dialog.MaterialAlertDialogBuilder
1111
import com.wordpress.stories.compose.frame.StorySaveEvents.FrameSaveCompleted
1212
import com.wordpress.stories.compose.frame.StorySaveEvents.FrameSaveFailed
@@ -56,7 +56,7 @@ class StoriesEventListener @Inject constructor(
5656
private val loadStoryFromStoriesPrefsUseCase: LoadStoryFromStoriesPrefsUseCase,
5757
private val storiesPrefs: StoriesPrefs,
5858
private val storyRepositoryWrapper: StoryRepositoryWrapper
59-
) : LifecycleObserver {
59+
) : DefaultLifecycleObserver {
6060
private lateinit var lifecycle: Lifecycle
6161
private lateinit var site: SiteModel
6262
private lateinit var editPostRepository: EditPostRepository
@@ -89,9 +89,7 @@ class StoriesEventListener @Inject constructor(
8989
* Handles the [Lifecycle.Event.ON_DESTROY] event to cleanup the registration for dispatcher and removing the
9090
* observer for lifecycle .
9191
*/
92-
@Suppress("unused")
93-
@OnLifecycleEvent(Lifecycle.Event.ON_DESTROY)
94-
private fun onDestroy() {
92+
override fun onDestroy(owner: LifecycleOwner) {
9593
lifecycle.removeObserver(this)
9694
pauseListening()
9795
}

WordPress/src/main/java/org/wordpress/android/ui/stories/media/StoryMediaSaveUploadBridge.kt

Lines changed: 4 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -2,11 +2,8 @@ package org.wordpress.android.ui.stories.media
22

33
import android.content.Context
44
import android.net.Uri
5-
import androidx.lifecycle.Lifecycle.Event.ON_CREATE
6-
import androidx.lifecycle.Lifecycle.Event.ON_DESTROY
7-
import androidx.lifecycle.LifecycleObserver
5+
import androidx.lifecycle.DefaultLifecycleObserver
86
import androidx.lifecycle.LifecycleOwner
9-
import androidx.lifecycle.OnLifecycleEvent
107
import com.wordpress.stories.compose.frame.StorySaveEvents.StorySaveResult
118
import com.wordpress.stories.compose.story.StoryFrameItem
129
import kotlinx.coroutines.CoroutineDispatcher
@@ -62,7 +59,7 @@ class StoryMediaSaveUploadBridge @Inject constructor(
6259
private val eventBusWrapper: EventBusWrapper,
6360
private val storyRepositoryWrapper: StoryRepositoryWrapper,
6461
@Named(UI_THREAD) private val mainDispatcher: CoroutineDispatcher
65-
) : CoroutineScope, LifecycleObserver {
62+
) : CoroutineScope, DefaultLifecycleObserver {
6663
// region Fields
6764
private var job: Job = Job()
6865
private lateinit var appContext: Context
@@ -74,15 +71,11 @@ class StoryMediaSaveUploadBridge @Inject constructor(
7471
@Inject lateinit var storiesTrackerHelper: StoriesTrackerHelper
7572
@Inject lateinit var saveStoryGutenbergBlockUseCase: SaveStoryGutenbergBlockUseCase
7673

77-
@Suppress("unused")
78-
@OnLifecycleEvent(ON_CREATE)
79-
fun onCreate(source: LifecycleOwner) {
74+
override fun onCreate(owner: LifecycleOwner) {
8075
eventBusWrapper.register(this)
8176
}
8277

83-
@Suppress("unused")
84-
@OnLifecycleEvent(ON_DESTROY)
85-
fun onDestroy(source: LifecycleOwner) {
78+
override fun onDestroy(owner: LifecycleOwner) {
8679
// note: not sure whether this is ever going to get called if we attach it to the lifecycle of the Application
8780
// class, but leaving it here prepared for the case when this class is attached to some other LifeCycleOwner
8881
// other than the Application.

WordPress/src/main/java/org/wordpress/android/ui/uploads/UploadStarter.kt

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,10 @@
11
package org.wordpress.android.ui.uploads
22

33
import android.content.Context
4-
import androidx.lifecycle.Lifecycle.Event
5-
import androidx.lifecycle.LifecycleObserver
4+
import androidx.lifecycle.DefaultLifecycleObserver
5+
import androidx.lifecycle.LifecycleOwner
66
import androidx.lifecycle.LiveData
77
import androidx.lifecycle.Observer
8-
import androidx.lifecycle.OnLifecycleEvent
98
import androidx.lifecycle.ProcessLifecycleOwner
109
import kotlinx.coroutines.CoroutineDispatcher
1110
import kotlinx.coroutines.CoroutineScope
@@ -70,9 +69,8 @@ class UploadStarter @Inject constructor(
7069
/**
7170
* The hook for making this class automatically launch uploads whenever the app is placed in the foreground.
7271
*/
73-
private val processLifecycleObserver = object : LifecycleObserver {
74-
@OnLifecycleEvent(Event.ON_START)
75-
fun onAppComesFromBackground() {
72+
private val processLifecycleObserver = object : DefaultLifecycleObserver {
73+
override fun onStart(owner: LifecycleOwner) {
7674
queueUploadFromAllSites()
7775
}
7876
}

WordPress/src/main/java/org/wordpress/android/viewmodel/posts/PostFetcher.kt

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
package org.wordpress.android.viewmodel.posts
22

3+
import androidx.lifecycle.DefaultLifecycleObserver
34
import androidx.lifecycle.Lifecycle
4-
import androidx.lifecycle.LifecycleObserver
5-
import androidx.lifecycle.OnLifecycleEvent
5+
import androidx.lifecycle.LifecycleOwner
66
import org.greenrobot.eventbus.Subscribe
77
import org.greenrobot.eventbus.ThreadMode
88
import org.wordpress.android.fluxc.Dispatcher
@@ -20,7 +20,7 @@ import org.wordpress.android.fluxc.store.PostStore.RemotePostPayload
2020
class PostFetcher constructor(
2121
private val lifecycle: Lifecycle,
2222
private val dispatcher: Dispatcher
23-
) : LifecycleObserver {
23+
) : DefaultLifecycleObserver {
2424
private val ongoingRequests = HashSet<RemoteId>()
2525

2626
init {
@@ -32,9 +32,7 @@ class PostFetcher constructor(
3232
* Handles the [Lifecycle.Event.ON_DESTROY] event to cleanup the registration for dispatcher and removing the
3333
* observer for lifecycle.
3434
*/
35-
@Suppress("unused")
36-
@OnLifecycleEvent(Lifecycle.Event.ON_DESTROY)
37-
private fun onDestroy() {
35+
override fun onDestroy(owner: LifecycleOwner) {
3836
lifecycle.removeObserver(this)
3937
dispatcher.unregister(this)
4038
}

0 commit comments

Comments
 (0)