From a90bc9a7663d550fbd006a88ab34ae183ff8e2be Mon Sep 17 00:00:00 2001 From: David Vacca Date: Fri, 28 Mar 2025 21:36:54 -0700 Subject: [PATCH] Mark SingleThreadAsserter as @LegacyArchitecture (#50307) Summary: Pull Request resolved: https://github.com/facebook/react-native/pull/50307 Mark SingleThreadAsserter as LegacyArchitecture changelog: [internal] internal Reviewed By: alanleedev Differential Revision: D71820293 fbshipit-source-id: a974ee65b2659028d14f73504f73db2b3ae63f70 --- .../ReactAndroid/api/ReactAndroid.api | 5 ---- .../react/common/SingleThreadAsserter.kt | 23 ------------------- .../react/uimanager/ShadowNodeRegistry.kt | 14 ++++++++++- 3 files changed, 13 insertions(+), 29 deletions(-) delete mode 100644 packages/react-native/ReactAndroid/src/main/java/com/facebook/react/common/SingleThreadAsserter.kt diff --git a/packages/react-native/ReactAndroid/api/ReactAndroid.api b/packages/react-native/ReactAndroid/api/ReactAndroid.api index 29da2733ae0..3354d7c7377 100644 --- a/packages/react-native/ReactAndroid/api/ReactAndroid.api +++ b/packages/react-native/ReactAndroid/api/ReactAndroid.api @@ -1776,11 +1776,6 @@ public abstract interface class com/facebook/react/common/ShakeDetector$ShakeLis public abstract fun onShake ()V } -public final class com/facebook/react/common/SingleThreadAsserter { - public fun ()V - public final fun assertNow ()V -} - public abstract interface class com/facebook/react/common/SurfaceDelegate { public abstract fun createContentView (Ljava/lang/String;)V public abstract fun destroyContentView ()V diff --git a/packages/react-native/ReactAndroid/src/main/java/com/facebook/react/common/SingleThreadAsserter.kt b/packages/react-native/ReactAndroid/src/main/java/com/facebook/react/common/SingleThreadAsserter.kt deleted file mode 100644 index dea4cebe617..00000000000 --- a/packages/react-native/ReactAndroid/src/main/java/com/facebook/react/common/SingleThreadAsserter.kt +++ /dev/null @@ -1,23 +0,0 @@ -/* - * Copyright (c) Meta Platforms, Inc. and affiliates. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - */ - -package com.facebook.react.common - -import com.facebook.infer.annotation.Assertions - -/** Simple class for asserting that operations only run on a single thread. */ -public class SingleThreadAsserter { - private var thread: Thread? = null - - public fun assertNow() { - val currentThread = Thread.currentThread() - if (thread == null) { - thread = currentThread - } - Assertions.assertCondition(thread == currentThread) - } -} diff --git a/packages/react-native/ReactAndroid/src/main/java/com/facebook/react/uimanager/ShadowNodeRegistry.kt b/packages/react-native/ReactAndroid/src/main/java/com/facebook/react/uimanager/ShadowNodeRegistry.kt index d7ade8a4be7..3bb62722925 100644 --- a/packages/react-native/ReactAndroid/src/main/java/com/facebook/react/uimanager/ShadowNodeRegistry.kt +++ b/packages/react-native/ReactAndroid/src/main/java/com/facebook/react/uimanager/ShadowNodeRegistry.kt @@ -10,7 +10,7 @@ package com.facebook.react.uimanager import android.util.SparseArray import android.util.SparseBooleanArray import android.view.View -import com.facebook.react.common.SingleThreadAsserter +import com.facebook.infer.annotation.Assertions import com.facebook.react.common.annotations.internal.LegacyArchitecture import com.facebook.react.common.annotations.internal.LegacyArchitectureLogLevel import com.facebook.react.common.annotations.internal.LegacyArchitectureLogger @@ -88,4 +88,16 @@ internal class ShadowNodeRegistry { "ShadowNodeRegistry", LegacyArchitectureLogLevel.WARNING) } } + + inner class SingleThreadAsserter { + private var thread: Thread? = null + + public fun assertNow() { + val currentThread = Thread.currentThread() + if (thread == null) { + thread = currentThread + } + Assertions.assertCondition(thread == currentThread) + } + } }