From b69854ea63624507263d37c4a0629bb2db885c80 Mon Sep 17 00:00:00 2001 From: Nitser Date: Tue, 1 Oct 2019 16:58:33 +0300 Subject: [PATCH 1/7] add methods for all lifecycle events --- .../LifecycleLoggingObserver.kt | 35 ++++++++++++++++--- 1 file changed, 31 insertions(+), 4 deletions(-) diff --git a/navigation/src/main/java/ru/touchin/roboswag/components/navigation/viewcontrollers/LifecycleLoggingObserver.kt b/navigation/src/main/java/ru/touchin/roboswag/components/navigation/viewcontrollers/LifecycleLoggingObserver.kt index 82ffac4..56f4bf0 100644 --- a/navigation/src/main/java/ru/touchin/roboswag/components/navigation/viewcontrollers/LifecycleLoggingObserver.kt +++ b/navigation/src/main/java/ru/touchin/roboswag/components/navigation/viewcontrollers/LifecycleLoggingObserver.kt @@ -6,11 +6,38 @@ import androidx.lifecycle.OnLifecycleEvent import ru.touchin.roboswag.core.log.Lc import ru.touchin.roboswag.core.log.LcGroup -class LifecycleLoggingObserver : LifecycleObserver { +class LifecycleLoggingObserver ( + private val call: Any +) : LifecycleObserver { - @OnLifecycleEvent(Lifecycle.Event.ON_ANY) - fun onAnyLifecycleEvent() { - LcGroup.UI_LIFECYCLE.i(Lc.getCodePoint(this)) + @OnLifecycleEvent(Lifecycle.Event.ON_CREATE) + fun onCreateLifecycleEvent() { + LcGroup.UI_LIFECYCLE.i(Lc.getCodePoint(call, "onCreate")) + } + + @OnLifecycleEvent(Lifecycle.Event.ON_START) + fun onStartLifecycleEvent() { + LcGroup.UI_LIFECYCLE.i(Lc.getCodePoint(call, "onStop")) + } + + @OnLifecycleEvent(Lifecycle.Event.ON_RESUME) + fun onResumeLifecycleEvent() { + LcGroup.UI_LIFECYCLE.i(Lc.getCodePoint(call, "onResume")) + } + + @OnLifecycleEvent(Lifecycle.Event.ON_PAUSE) + fun onPauseLifecycleEvent() { + LcGroup.UI_LIFECYCLE.i(Lc.getCodePoint(call, "onPause")) + } + + @OnLifecycleEvent(Lifecycle.Event.ON_STOP) + fun onStopLifecycleEvent() { + LcGroup.UI_LIFECYCLE.i(Lc.getCodePoint(call, "onStop")) + } + + @OnLifecycleEvent(Lifecycle.Event.ON_DESTROY) + fun onDestroyLifecycleEvent() { + LcGroup.UI_LIFECYCLE.i(Lc.getCodePoint(call, "onDestroy")) } } From d13e9a0c21282608229301d160553bb71cfa1a88 Mon Sep 17 00:00:00 2001 From: Nitser Date: Tue, 1 Oct 2019 16:59:52 +0300 Subject: [PATCH 2/7] add new method for onLyfecycleMethod string --- .../main/java/ru/touchin/roboswag/core/log/Lc.java | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/logging/src/main/java/ru/touchin/roboswag/core/log/Lc.java b/logging/src/main/java/ru/touchin/roboswag/core/log/Lc.java index 5bc99f7..e464f02 100644 --- a/logging/src/main/java/ru/touchin/roboswag/core/log/Lc.java +++ b/logging/src/main/java/ru/touchin/roboswag/core/log/Lc.java @@ -257,6 +257,20 @@ public final class Lc { + (caller != null ? " of object " + caller.getClass().getSimpleName() + '(' + Integer.toHexString(caller.hashCode()) + ')' : ""); } + /** + * Returns line of code from where this method called. + * + * @param caller Object who is calling for code point; + * @param methodName String represents lifecycle method in which it was called + * @return String represents code point. + */ + @Non + @NonNull + public static String getCodePoint(@Nullable final Object caller, final String methodName) { + return methodName + + (caller != null ? " of object " + caller.getClass().getSimpleName() + '(' + Integer.toHexString(caller.hashCode()) + ')' : ""); + } + /** * Prints stacktrace in log with specified tag. * From c7fe4af9fc360ca2aeb91ce075cb6c2cfdf63d9b Mon Sep 17 00:00:00 2001 From: Nitser Date: Tue, 1 Oct 2019 17:01:04 +0300 Subject: [PATCH 3/7] passes the calling class --- .../components/navigation_new/fragments/BaseFragment.kt | 2 +- .../roboswag/components/navigation/activities/BaseActivity.kt | 2 +- .../components/navigation/viewcontrollers/ViewController.kt | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/navigation-new/src/main/java/ru/touchin/roboswag/components/navigation_new/fragments/BaseFragment.kt b/navigation-new/src/main/java/ru/touchin/roboswag/components/navigation_new/fragments/BaseFragment.kt index 8bfadcd..830952a 100644 --- a/navigation-new/src/main/java/ru/touchin/roboswag/components/navigation_new/fragments/BaseFragment.kt +++ b/navigation-new/src/main/java/ru/touchin/roboswag/components/navigation_new/fragments/BaseFragment.kt @@ -74,7 +74,7 @@ open class BaseFragment(@Layo override fun onViewCreated(view: View, savedInstanceState: Bundle?) { super.onViewCreated(view, savedInstanceState) - lifecycle.addObserver(LifecycleLoggingObserver()) + lifecycle.addObserver(LifecycleLoggingObserver(this)) butterKnifeUnbinder = ButterKnife.bind(this, view) } diff --git a/navigation/src/main/java/ru/touchin/roboswag/components/navigation/activities/BaseActivity.kt b/navigation/src/main/java/ru/touchin/roboswag/components/navigation/activities/BaseActivity.kt index 1897cc1..8fced4c 100644 --- a/navigation/src/main/java/ru/touchin/roboswag/components/navigation/activities/BaseActivity.kt +++ b/navigation/src/main/java/ru/touchin/roboswag/components/navigation/activities/BaseActivity.kt @@ -39,7 +39,7 @@ abstract class BaseActivity : AppCompatActivity() { open val keyboardBehaviorDetector: KeyboardBehaviorDetector? = null init { - lifecycle.addObserver(LifecycleLoggingObserver()) + lifecycle.addObserver(LifecycleLoggingObserver(this)) } override fun onCreate(savedInstanceState: Bundle?, persistentState: PersistableBundle?) { diff --git a/navigation/src/main/java/ru/touchin/roboswag/components/navigation/viewcontrollers/ViewController.kt b/navigation/src/main/java/ru/touchin/roboswag/components/navigation/viewcontrollers/ViewController.kt index 878c226..3a47352 100644 --- a/navigation/src/main/java/ru/touchin/roboswag/components/navigation/viewcontrollers/ViewController.kt +++ b/navigation/src/main/java/ru/touchin/roboswag/components/navigation/viewcontrollers/ViewController.kt @@ -69,7 +69,7 @@ open class ViewController( val view: View = creationContext.inflater.inflate(layoutRes, creationContext.container, false) init { - lifecycle.addObserver(LifecycleLoggingObserver()) + lifecycle.addObserver(LifecycleLoggingObserver(this)) } override fun getLifecycle(): Lifecycle = fragment.viewLifecycleOwner.lifecycle From 79bc62e6474cc071c88bcd422b8430979f577104 Mon Sep 17 00:00:00 2001 From: Nitser Date: Tue, 1 Oct 2019 17:14:46 +0300 Subject: [PATCH 4/7] change return string --- logging/src/main/java/ru/touchin/roboswag/core/log/Lc.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/logging/src/main/java/ru/touchin/roboswag/core/log/Lc.java b/logging/src/main/java/ru/touchin/roboswag/core/log/Lc.java index e464f02..816378d 100644 --- a/logging/src/main/java/ru/touchin/roboswag/core/log/Lc.java +++ b/logging/src/main/java/ru/touchin/roboswag/core/log/Lc.java @@ -268,7 +268,7 @@ public final class Lc { @NonNull public static String getCodePoint(@Nullable final Object caller, final String methodName) { return methodName - + (caller != null ? " of object " + caller.getClass().getSimpleName() + '(' + Integer.toHexString(caller.hashCode()) + ')' : ""); + + (caller != null ? " of object " + caller.getClass().getSimpleName()); } /** From 684c67fb85d326c0a38a192ff7292649d6789081 Mon Sep 17 00:00:00 2001 From: Nitser Date: Tue, 1 Oct 2019 17:16:06 +0300 Subject: [PATCH 5/7] rename call class --- .../viewcontrollers/LifecycleLoggingObserver.kt | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/navigation/src/main/java/ru/touchin/roboswag/components/navigation/viewcontrollers/LifecycleLoggingObserver.kt b/navigation/src/main/java/ru/touchin/roboswag/components/navigation/viewcontrollers/LifecycleLoggingObserver.kt index 56f4bf0..33c0a8e 100644 --- a/navigation/src/main/java/ru/touchin/roboswag/components/navigation/viewcontrollers/LifecycleLoggingObserver.kt +++ b/navigation/src/main/java/ru/touchin/roboswag/components/navigation/viewcontrollers/LifecycleLoggingObserver.kt @@ -7,37 +7,37 @@ import ru.touchin.roboswag.core.log.Lc import ru.touchin.roboswag.core.log.LcGroup class LifecycleLoggingObserver ( - private val call: Any + private val call: lifecycleOwner ) : LifecycleObserver { @OnLifecycleEvent(Lifecycle.Event.ON_CREATE) fun onCreateLifecycleEvent() { - LcGroup.UI_LIFECYCLE.i(Lc.getCodePoint(call, "onCreate")) + LcGroup.UI_LIFECYCLE.i(Lc.getCodePoint(lifecycleOwner, "onCreate")) } @OnLifecycleEvent(Lifecycle.Event.ON_START) fun onStartLifecycleEvent() { - LcGroup.UI_LIFECYCLE.i(Lc.getCodePoint(call, "onStop")) + LcGroup.UI_LIFECYCLE.i(Lc.getCodePoint(lifecycleOwner, "onStop")) } @OnLifecycleEvent(Lifecycle.Event.ON_RESUME) fun onResumeLifecycleEvent() { - LcGroup.UI_LIFECYCLE.i(Lc.getCodePoint(call, "onResume")) + LcGroup.UI_LIFECYCLE.i(Lc.getCodePoint(lifecycleOwner, "onResume")) } @OnLifecycleEvent(Lifecycle.Event.ON_PAUSE) fun onPauseLifecycleEvent() { - LcGroup.UI_LIFECYCLE.i(Lc.getCodePoint(call, "onPause")) + LcGroup.UI_LIFECYCLE.i(Lc.getCodePoint(lifecycleOwner, "onPause")) } @OnLifecycleEvent(Lifecycle.Event.ON_STOP) fun onStopLifecycleEvent() { - LcGroup.UI_LIFECYCLE.i(Lc.getCodePoint(call, "onStop")) + LcGroup.UI_LIFECYCLE.i(Lc.getCodePoint(lifecycleOwner, "onStop")) } @OnLifecycleEvent(Lifecycle.Event.ON_DESTROY) fun onDestroyLifecycleEvent() { - LcGroup.UI_LIFECYCLE.i(Lc.getCodePoint(call, "onDestroy")) + LcGroup.UI_LIFECYCLE.i(Lc.getCodePoint(lifecycleOwner, "onDestroy")) } } From bbfb4ea273faab94e7c55a25fafad695715135e8 Mon Sep 17 00:00:00 2001 From: Nitser Date: Tue, 1 Oct 2019 17:20:19 +0300 Subject: [PATCH 6/7] fix getCodePoint method --- logging/src/main/java/ru/touchin/roboswag/core/log/Lc.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/logging/src/main/java/ru/touchin/roboswag/core/log/Lc.java b/logging/src/main/java/ru/touchin/roboswag/core/log/Lc.java index 816378d..5faf95c 100644 --- a/logging/src/main/java/ru/touchin/roboswag/core/log/Lc.java +++ b/logging/src/main/java/ru/touchin/roboswag/core/log/Lc.java @@ -268,7 +268,7 @@ public final class Lc { @NonNull public static String getCodePoint(@Nullable final Object caller, final String methodName) { return methodName - + (caller != null ? " of object " + caller.getClass().getSimpleName()); + + (caller != null ? " of object " + caller.getClass().getSimpleName() : ""); } /** From ff76eccc19c3edab03fe3d1db69943948b4000bf Mon Sep 17 00:00:00 2001 From: Nitser Date: Tue, 1 Oct 2019 17:32:52 +0300 Subject: [PATCH 7/7] fix variable bug --- .../navigation/viewcontrollers/LifecycleLoggingObserver.kt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/navigation/src/main/java/ru/touchin/roboswag/components/navigation/viewcontrollers/LifecycleLoggingObserver.kt b/navigation/src/main/java/ru/touchin/roboswag/components/navigation/viewcontrollers/LifecycleLoggingObserver.kt index 33c0a8e..43ef959 100644 --- a/navigation/src/main/java/ru/touchin/roboswag/components/navigation/viewcontrollers/LifecycleLoggingObserver.kt +++ b/navigation/src/main/java/ru/touchin/roboswag/components/navigation/viewcontrollers/LifecycleLoggingObserver.kt @@ -7,7 +7,7 @@ import ru.touchin.roboswag.core.log.Lc import ru.touchin.roboswag.core.log.LcGroup class LifecycleLoggingObserver ( - private val call: lifecycleOwner + private val lifecycleOwner: Any ) : LifecycleObserver { @OnLifecycleEvent(Lifecycle.Event.ON_CREATE)