From 7a458025cada2bb1b3d12247b68f102b7432bcdd Mon Sep 17 00:00:00 2001 From: Thomas Nardone Date: Wed, 3 Apr 2024 16:15:45 -0700 Subject: [PATCH] Convert debug/holder module (#43747) Summary: Pull Request resolved: https://github.com/facebook/react-native/pull/43747 Convert module to Kotlin. changelog: [internal] internal Reviewed By: cortinico Differential Revision: D55598977 fbshipit-source-id: d289e230bae721de6d7d209663fcdc35ec37fbac --- .../facebook/debug/holder/NoopPrinter.java | 31 ------------------- .../com/facebook/debug/holder/NoopPrinter.kt | 21 +++++++++++++ .../com/facebook/debug/holder/Printer.java | 20 ------------ .../java/com/facebook/debug/holder/Printer.kt | 20 ++++++++++++ .../facebook/debug/holder/PrinterHolder.java | 29 ----------------- .../facebook/debug/holder/PrinterHolder.kt | 13 ++++++++ 6 files changed, 54 insertions(+), 80 deletions(-) delete mode 100644 packages/react-native/ReactAndroid/src/main/java/com/facebook/debug/holder/NoopPrinter.java create mode 100644 packages/react-native/ReactAndroid/src/main/java/com/facebook/debug/holder/NoopPrinter.kt delete mode 100644 packages/react-native/ReactAndroid/src/main/java/com/facebook/debug/holder/Printer.java create mode 100644 packages/react-native/ReactAndroid/src/main/java/com/facebook/debug/holder/Printer.kt delete mode 100644 packages/react-native/ReactAndroid/src/main/java/com/facebook/debug/holder/PrinterHolder.java create mode 100644 packages/react-native/ReactAndroid/src/main/java/com/facebook/debug/holder/PrinterHolder.kt diff --git a/packages/react-native/ReactAndroid/src/main/java/com/facebook/debug/holder/NoopPrinter.java b/packages/react-native/ReactAndroid/src/main/java/com/facebook/debug/holder/NoopPrinter.java deleted file mode 100644 index 177a47af734..00000000000 --- a/packages/react-native/ReactAndroid/src/main/java/com/facebook/debug/holder/NoopPrinter.java +++ /dev/null @@ -1,31 +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.debug.holder; - -import com.facebook.debug.debugoverlay.model.DebugOverlayTag; -import com.facebook.infer.annotation.Nullsafe; - -/** No-op implementation of {@link Printer}. */ -@Nullsafe(Nullsafe.Mode.LOCAL) -public class NoopPrinter implements Printer { - - public static final NoopPrinter INSTANCE = new NoopPrinter(); - - private NoopPrinter() {} - - @Override - public void logMessage(DebugOverlayTag tag, String message, Object... args) {} - - @Override - public void logMessage(DebugOverlayTag tag, String message) {} - - @Override - public boolean shouldDisplayLogMessage(final DebugOverlayTag tag) { - return false; - } -} diff --git a/packages/react-native/ReactAndroid/src/main/java/com/facebook/debug/holder/NoopPrinter.kt b/packages/react-native/ReactAndroid/src/main/java/com/facebook/debug/holder/NoopPrinter.kt new file mode 100644 index 00000000000..fb3bb08f173 --- /dev/null +++ b/packages/react-native/ReactAndroid/src/main/java/com/facebook/debug/holder/NoopPrinter.kt @@ -0,0 +1,21 @@ +/* + * 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.debug.holder + +import com.facebook.debug.debugoverlay.model.DebugOverlayTag + +/** No-op implementation of [Printer]. */ +public object NoopPrinter : Printer { + + public override fun logMessage(tag: DebugOverlayTag, message: String, vararg args: Any?): Unit = + Unit + + public override fun logMessage(tag: DebugOverlayTag, message: String): Unit = Unit + + public override fun shouldDisplayLogMessage(tag: DebugOverlayTag): Boolean = false +} diff --git a/packages/react-native/ReactAndroid/src/main/java/com/facebook/debug/holder/Printer.java b/packages/react-native/ReactAndroid/src/main/java/com/facebook/debug/holder/Printer.java deleted file mode 100644 index e5649667b59..00000000000 --- a/packages/react-native/ReactAndroid/src/main/java/com/facebook/debug/holder/Printer.java +++ /dev/null @@ -1,20 +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.debug.holder; - -import com.facebook.debug.debugoverlay.model.DebugOverlayTag; - -/** Interface to debugging tool. */ -public interface Printer { - - void logMessage(final DebugOverlayTag tag, final String message, Object... args); - - void logMessage(final DebugOverlayTag tag, final String message); - - boolean shouldDisplayLogMessage(final DebugOverlayTag tag); -} diff --git a/packages/react-native/ReactAndroid/src/main/java/com/facebook/debug/holder/Printer.kt b/packages/react-native/ReactAndroid/src/main/java/com/facebook/debug/holder/Printer.kt new file mode 100644 index 00000000000..64f783fb945 --- /dev/null +++ b/packages/react-native/ReactAndroid/src/main/java/com/facebook/debug/holder/Printer.kt @@ -0,0 +1,20 @@ +/* + * 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.debug.holder + +import com.facebook.debug.debugoverlay.model.DebugOverlayTag + +/** Interface to debugging tool. */ +public interface Printer { + + public fun logMessage(tag: DebugOverlayTag, message: String, vararg args: Any?) + + public fun logMessage(tag: DebugOverlayTag, message: String) + + public fun shouldDisplayLogMessage(tag: DebugOverlayTag): Boolean +} diff --git a/packages/react-native/ReactAndroid/src/main/java/com/facebook/debug/holder/PrinterHolder.java b/packages/react-native/ReactAndroid/src/main/java/com/facebook/debug/holder/PrinterHolder.java deleted file mode 100644 index 2795d4fdcf5..00000000000 --- a/packages/react-native/ReactAndroid/src/main/java/com/facebook/debug/holder/PrinterHolder.java +++ /dev/null @@ -1,29 +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.debug.holder; - -import com.facebook.infer.annotation.Nullsafe; - -/** Holder for debugging tool instance. */ -@Nullsafe(Nullsafe.Mode.LOCAL) -public class PrinterHolder { - - private static Printer sPrinter = NoopPrinter.INSTANCE; - - public static void setPrinter(Printer printer) { - if (printer == null) { - sPrinter = NoopPrinter.INSTANCE; - } else { - sPrinter = printer; - } - } - - public static Printer getPrinter() { - return sPrinter; - } -} diff --git a/packages/react-native/ReactAndroid/src/main/java/com/facebook/debug/holder/PrinterHolder.kt b/packages/react-native/ReactAndroid/src/main/java/com/facebook/debug/holder/PrinterHolder.kt new file mode 100644 index 00000000000..97a140274a0 --- /dev/null +++ b/packages/react-native/ReactAndroid/src/main/java/com/facebook/debug/holder/PrinterHolder.kt @@ -0,0 +1,13 @@ +/* + * 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.debug.holder + +/** Holder for debugging tool instance. */ +public object PrinterHolder { + @JvmStatic public var printer: Printer = NoopPrinter +}