TreeObserverFactory, change file name to match type

Summary: ^

Reviewed By: LukeDefeo

Differential Revision: D39575384

fbshipit-source-id: 30ca896d93c4f3641f748123af024354c10de8b8
This commit is contained in:
Lorenzo Blasa
2022-09-20 05:15:50 -07:00
committed by Facebook GitHub Bot
parent 7f103ee293
commit d85e8a0949

View File

@@ -22,10 +22,12 @@ class TreeObserverFactory {
builders.add(builder) builders.add(builder)
} }
// TODO: Not very efficient, need to cache this. Builders cannot be removed
fun hasObserverFor(node: Any): Boolean { fun hasObserverFor(node: Any): Boolean {
return builders.any { it.canBuildFor(node) } return builders.any { it.canBuildFor(node) }
} }
// TODO: Not very efficient, need to cache this. Builders cannot be removed.
fun createObserver(node: Any, context: Context): TreeObserver<*>? { fun createObserver(node: Any, context: Context): TreeObserver<*>? {
return builders.find { it.canBuildFor(node) }?.build(context) return builders.find { it.canBuildFor(node) }?.build(context)
} }
@@ -33,6 +35,7 @@ class TreeObserverFactory {
companion object { companion object {
fun withDefaults(): TreeObserverFactory { fun withDefaults(): TreeObserverFactory {
val factory = TreeObserverFactory() val factory = TreeObserverFactory()
// TODO: Only builder for DecorView, maybe more are needed.
factory.register(DecorViewTreeObserverBuilder) factory.register(DecorViewTreeObserverBuilder)
return factory return factory