From d8d01b4a6f8389a947193f5b30bb84808986a752 Mon Sep 17 00:00:00 2001 From: Pascal Hartig Date: Wed, 20 Feb 2019 02:48:37 -0800 Subject: [PATCH] Remove global state for perf logger Summary: Instead of installing some global mutable thing, pass it down. This also eliminates the rather gnarly side-effect of instantiating some visitor and suddenly logging information in an entirely different place. Reviewed By: oprisnik Differential Revision: D14131253 fbshipit-source-id: 760c6a3f85056e334ac1149c76ca4126fbfa7da4 --- .../flipper/perflogger/FlipperPerfLogger.java | 36 ++++++------------- .../perflogger/NoOpFlipperPerfLogger.java | 19 ++++++++++ .../perflogger/PerfLoggerDelegate.java | 11 ------ .../PerfLoggerDelegateInstaller.java | 9 ----- 4 files changed, 29 insertions(+), 46 deletions(-) create mode 100644 android/src/main/java/com/facebook/flipper/perflogger/NoOpFlipperPerfLogger.java delete mode 100644 android/src/main/java/com/facebook/flipper/perflogger/PerfLoggerDelegate.java delete mode 100644 android/src/main/java/com/facebook/flipper/perflogger/PerfLoggerDelegateInstaller.java diff --git a/android/src/main/java/com/facebook/flipper/perflogger/FlipperPerfLogger.java b/android/src/main/java/com/facebook/flipper/perflogger/FlipperPerfLogger.java index 9ad970ee9..53b009397 100644 --- a/android/src/main/java/com/facebook/flipper/perflogger/FlipperPerfLogger.java +++ b/android/src/main/java/com/facebook/flipper/perflogger/FlipperPerfLogger.java @@ -1,32 +1,16 @@ -// Copyright 2004-present Facebook. All Rights Reserved. - +/** + * Copyright (c) Facebook, Inc. and its 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.flipper.perflogger; -import android.support.annotation.Nullable; +public interface FlipperPerfLogger { -public class FlipperPerfLogger { + void startMarker(String name); - @Nullable private static PerfLoggerDelegate mDelegate; + void endMarker(String name); - public static void startMarker(String name) { - if (mDelegate != null) { - mDelegate.starMarker(name); - } - } - - public static void endMarker(String name) { - if (mDelegate != null) { - mDelegate.endMarker(name); - } - } - - public static void cancelMarker(String name) { - if (mDelegate != null) { - mDelegate.cancelMarker(name); - } - } - - static void setDelegate(PerfLoggerDelegate delegate) { - mDelegate = delegate; - } + void cancelMarker(String name); } diff --git a/android/src/main/java/com/facebook/flipper/perflogger/NoOpFlipperPerfLogger.java b/android/src/main/java/com/facebook/flipper/perflogger/NoOpFlipperPerfLogger.java new file mode 100644 index 000000000..0e63044da --- /dev/null +++ b/android/src/main/java/com/facebook/flipper/perflogger/NoOpFlipperPerfLogger.java @@ -0,0 +1,19 @@ +/** + * Copyright (c) Facebook, Inc. and its 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.flipper.perflogger; + +public class NoOpFlipperPerfLogger implements FlipperPerfLogger { + + @Override + public void startMarker(String name) {} + + @Override + public void endMarker(String name) {} + + @Override + public void cancelMarker(String name) {} +} diff --git a/android/src/main/java/com/facebook/flipper/perflogger/PerfLoggerDelegate.java b/android/src/main/java/com/facebook/flipper/perflogger/PerfLoggerDelegate.java deleted file mode 100644 index d034553ce..000000000 --- a/android/src/main/java/com/facebook/flipper/perflogger/PerfLoggerDelegate.java +++ /dev/null @@ -1,11 +0,0 @@ -// Copyright 2004-present Facebook. All Rights Reserved. - -package com.facebook.flipper.perflogger; - -public interface PerfLoggerDelegate { - void starMarker(String name); - - void endMarker(String name); - - void cancelMarker(String name); -} diff --git a/android/src/main/java/com/facebook/flipper/perflogger/PerfLoggerDelegateInstaller.java b/android/src/main/java/com/facebook/flipper/perflogger/PerfLoggerDelegateInstaller.java deleted file mode 100644 index d43e4a963..000000000 --- a/android/src/main/java/com/facebook/flipper/perflogger/PerfLoggerDelegateInstaller.java +++ /dev/null @@ -1,9 +0,0 @@ -// Copyright 2004-present Facebook. All Rights Reserved. - -package com.facebook.flipper.perflogger; - -public class PerfLoggerDelegateInstaller { - public static void install(PerfLoggerDelegate delegate) { - FlipperPerfLogger.setDelegate(delegate); - } -}