Debugger, minor: Update getActiveFilters() implementation, use prepend()

This commit is contained in:
Yan Zhulanow
2019-11-21 00:13:19 +09:00
parent c196ce5f09
commit 26371ea023
@@ -24,7 +24,6 @@ import com.intellij.debugger.jdi.StackFrameProxyImpl;
import com.intellij.debugger.jdi.ThreadReferenceProxyImpl; import com.intellij.debugger.jdi.ThreadReferenceProxyImpl;
import com.intellij.debugger.settings.DebuggerSettings; import com.intellij.debugger.settings.DebuggerSettings;
import com.intellij.openapi.diagnostic.Logger; import com.intellij.openapi.diagnostic.Logger;
import com.intellij.openapi.extensions.Extensions;
import com.intellij.ui.classFilter.ClassFilter; import com.intellij.ui.classFilter.ClassFilter;
import com.intellij.ui.classFilter.DebuggerClassFilterProvider; import com.intellij.ui.classFilter.DebuggerClassFilterProvider;
import com.sun.jdi.Location; import com.sun.jdi.Location;
@@ -34,13 +33,12 @@ import com.sun.jdi.ThreadReference;
import com.sun.jdi.request.EventRequest; import com.sun.jdi.request.EventRequest;
import com.sun.jdi.request.EventRequestManager; import com.sun.jdi.request.EventRequestManager;
import com.sun.jdi.request.StepRequest; import com.sun.jdi.request.StepRequest;
import one.util.streamex.StreamEx;
import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable; import org.jetbrains.annotations.Nullable;
import org.jetbrains.kotlin.idea.debugger.NoStrataPositionManagerHelperKt; import org.jetbrains.kotlin.idea.debugger.NoStrataPositionManagerHelperKt;
import org.jetbrains.kotlin.psi.KtFunctionLiteral; import org.jetbrains.kotlin.psi.KtFunctionLiteral;
import org.jetbrains.kotlin.psi.KtNamedFunction; import org.jetbrains.kotlin.psi.KtNamedFunction;
import java.util.ArrayList;
import java.util.List; import java.util.List;
@@ -171,27 +169,16 @@ public class DebuggerSteppingHelper {
// copied from DebugProcessImpl.getActiveFilters // copied from DebugProcessImpl.getActiveFilters
@NotNull @NotNull
private static List<ClassFilter> getActiveFilters() { private static List<ClassFilter> getActiveFilters() {
List<ClassFilter> activeFilters = new ArrayList<>();
DebuggerSettings settings = DebuggerSettings.getInstance(); DebuggerSettings settings = DebuggerSettings.getInstance();
StreamEx<ClassFilter> stream = StreamEx.of(DebuggerClassFilterProvider.EP_NAME.getExtensionList())
.flatCollection(DebuggerClassFilterProvider::getFilters);
if (settings.TRACING_FILTERS_ENABLED) { if (settings.TRACING_FILTERS_ENABLED) {
for (ClassFilter filter : settings.getSteppingFilters()) { stream = stream.prepend(settings.getSteppingFilters());
if (filter.isEnabled()) {
activeFilters.add(filter);
}
}
} }
//noinspection deprecation return stream.filter(ClassFilter::isEnabled).toList();
for (DebuggerClassFilterProvider provider : Extensions.getExtensions(DebuggerClassFilterProvider.EP_NAME)) {
for (ClassFilter filter : provider.getFilters()) {
if (filter.isEnabled()) {
activeFilters.add(filter);
}
}
}
return activeFilters;
} }
// copied from DebugProcessImpl.getActiveFilters // copied from DebugProcessImpl.getCurrentClassName
@Nullable @Nullable
private static String getCurrentClassName(ThreadReferenceProxyImpl thread) { private static String getCurrentClassName(ThreadReferenceProxyImpl thread) {
try { try {