From 7a942baa90ced9c58d4e2b1fabc394abcb5d659b Mon Sep 17 00:00:00 2001 From: Hannes Achleitner Date: Wed, 13 Apr 2022 08:38:42 +0200 Subject: [PATCH] enable logging by delegation --- timber/src/main/java/timber/log/Timber.kt | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) diff --git a/timber/src/main/java/timber/log/Timber.kt b/timber/src/main/java/timber/log/Timber.kt index 85a551b2..044aa22f 100644 --- a/timber/src/main/java/timber/log/Timber.kt +++ b/timber/src/main/java/timber/log/Timber.kt @@ -193,13 +193,18 @@ class Timber private constructor() { } /** A [Tree] for debug builds. Automatically infers the tag from the calling class. */ - open class DebugTree : Tree() { - private val fqcnIgnore = listOf( - Timber::class.java.name, - Timber.Forest::class.java.name, - Tree::class.java.name, - DebugTree::class.java.name - ) + open class DebugTree(delegator: Class<*>? = null) : Tree() { + + private val fqcnIgnore : MutableList = listOf( + Timber::class.java.name, + Timber.Forest::class.java.name, + Tree::class.java.name, + DebugTree::class.java.name + ).toMutableList() + + init { + delegator?.let { fqcnIgnore.add(it.name) } + } override val tag: String? get() = super.tag ?: Throwable().stackTrace