Loading services/core/java/com/android/server/wm/WindowTracingDataSource.java +13 −6 Original line number Diff line number Diff line Loading @@ -33,6 +33,7 @@ import android.util.Log; import android.util.proto.ProtoInputStream; import java.io.IOException; import java.lang.ref.WeakReference; import java.util.concurrent.atomic.AtomicBoolean; import java.util.function.Consumer; Loading Loading @@ -76,15 +77,15 @@ public final class WindowTracingDataSource extends DataSource<WindowTracingDataS private static final String TAG = "WindowTracingDataSource"; @NonNull private final Consumer<Config> mOnStartCallback; private final WeakReference<Consumer<Config>> mOnStartCallback; @NonNull private final Consumer<Config> mOnStopCallback; private final WeakReference<Consumer<Config>> mOnStopCallback; public WindowTracingDataSource(@NonNull Consumer<Config> onStart, @NonNull Consumer<Config> onStop) { super(DATA_SOURCE_NAME); mOnStartCallback = onStart; mOnStopCallback = onStop; mOnStartCallback = new WeakReference(onStart); mOnStopCallback = new WeakReference(onStop); Producer.init(InitArguments.DEFAULTS); DataSourceParams params = Loading @@ -102,12 +103,18 @@ public final class WindowTracingDataSource extends DataSource<WindowTracingDataS return new Instance(this, instanceIndex, config != null ? config : CONFIG_DEFAULT) { @Override protected void onStart(StartCallbackArguments args) { mOnStartCallback.accept(mConfig); Consumer<Config> callback = mOnStartCallback.get(); if (callback != null) { callback.accept(mConfig); } } @Override protected void onStop(StopCallbackArguments args) { mOnStopCallback.accept(mConfig); Consumer<Config> callback = mOnStopCallback.get(); if (callback != null) { callback.accept(mConfig); } } }; } Loading Loading
services/core/java/com/android/server/wm/WindowTracingDataSource.java +13 −6 Original line number Diff line number Diff line Loading @@ -33,6 +33,7 @@ import android.util.Log; import android.util.proto.ProtoInputStream; import java.io.IOException; import java.lang.ref.WeakReference; import java.util.concurrent.atomic.AtomicBoolean; import java.util.function.Consumer; Loading Loading @@ -76,15 +77,15 @@ public final class WindowTracingDataSource extends DataSource<WindowTracingDataS private static final String TAG = "WindowTracingDataSource"; @NonNull private final Consumer<Config> mOnStartCallback; private final WeakReference<Consumer<Config>> mOnStartCallback; @NonNull private final Consumer<Config> mOnStopCallback; private final WeakReference<Consumer<Config>> mOnStopCallback; public WindowTracingDataSource(@NonNull Consumer<Config> onStart, @NonNull Consumer<Config> onStop) { super(DATA_SOURCE_NAME); mOnStartCallback = onStart; mOnStopCallback = onStop; mOnStartCallback = new WeakReference(onStart); mOnStopCallback = new WeakReference(onStop); Producer.init(InitArguments.DEFAULTS); DataSourceParams params = Loading @@ -102,12 +103,18 @@ public final class WindowTracingDataSource extends DataSource<WindowTracingDataS return new Instance(this, instanceIndex, config != null ? config : CONFIG_DEFAULT) { @Override protected void onStart(StartCallbackArguments args) { mOnStartCallback.accept(mConfig); Consumer<Config> callback = mOnStartCallback.get(); if (callback != null) { callback.accept(mConfig); } } @Override protected void onStop(StopCallbackArguments args) { mOnStopCallback.accept(mConfig); Consumer<Config> callback = mOnStopCallback.get(); if (callback != null) { callback.accept(mConfig); } } }; } Loading