diff --git a/java/debugger/impl/src/com/intellij/debugger/InstanceFilter.java b/java/debugger/impl/src/com/intellij/debugger/InstanceFilter.java index 757da4c35a5e..09be13076ca1 100644 --- a/java/debugger/impl/src/com/intellij/debugger/InstanceFilter.java +++ b/java/debugger/impl/src/com/intellij/debugger/InstanceFilter.java @@ -20,6 +20,8 @@ import com.intellij.openapi.util.InvalidDataException; import com.intellij.openapi.util.JDOMExternalizable; import com.intellij.openapi.util.WriteExternalException; import com.intellij.ui.classFilter.ClassFilter; +import com.intellij.util.xmlb.annotations.Attribute; +import com.intellij.util.xmlb.annotations.Tag; import com.intellij.util.xmlb.annotations.Transient; import org.jdom.Element; @@ -28,10 +30,13 @@ import org.jdom.Element; * Date: Aug 29, 2003 * Time: 2:49:27 PM */ +@Tag("instance-filter") public class InstanceFilter implements JDOMExternalizable{ public static final InstanceFilter[] EMPTY_ARRAY = new InstanceFilter[0]; - + + @Attribute("id") public long ID = 0; + @Attribute("enabled") public boolean ENABLED = true; public InstanceFilter() { @@ -47,6 +52,7 @@ public class InstanceFilter implements JDOMExternalizable{ return ID; } + @Transient public boolean isEnabled() { return ENABLED; } diff --git a/java/debugger/impl/src/org/jetbrains/java/debugger/breakpoints/properties/JavaBreakpointProperties.java b/java/debugger/impl/src/org/jetbrains/java/debugger/breakpoints/properties/JavaBreakpointProperties.java index 47e35bb86c15..daab63a93265 100644 --- a/java/debugger/impl/src/org/jetbrains/java/debugger/breakpoints/properties/JavaBreakpointProperties.java +++ b/java/debugger/impl/src/org/jetbrains/java/debugger/breakpoints/properties/JavaBreakpointProperties.java @@ -17,6 +17,9 @@ package org.jetbrains.java.debugger.breakpoints.properties; import com.intellij.debugger.InstanceFilter; import com.intellij.ui.classFilter.ClassFilter; +import com.intellij.util.xmlb.annotations.AbstractCollection; +import com.intellij.util.xmlb.annotations.OptionTag; +import com.intellij.util.xmlb.annotations.Tag; import com.intellij.xdebugger.breakpoints.XBreakpointProperties; import org.jetbrains.annotations.Nullable; @@ -24,16 +27,22 @@ import org.jetbrains.annotations.Nullable; * @author egor */ public class JavaBreakpointProperties extends XBreakpointProperties { + @OptionTag("count-filter-enabled") public boolean COUNT_FILTER_ENABLED = false; + @OptionTag("count-filter") public int COUNT_FILTER = 0; + @OptionTag("class-filters-enabled") public boolean CLASS_FILTERS_ENABLED = false; private ClassFilter[] myClassFilters; private ClassFilter[] myClassExclusionFilters; + @OptionTag("instance-filters-enabled") public boolean INSTANCE_FILTERS_ENABLED = false; private InstanceFilter[] myInstanceFilters; + @Tag("instance-filters") + @AbstractCollection(surroundWithTag = false) public InstanceFilter[] getInstanceFilters() { return myInstanceFilters != null ? myInstanceFilters : InstanceFilter.EMPTY_ARRAY; } @@ -49,6 +58,8 @@ public class JavaBreakpointProperties extend myInstanceFilters = filters; } + @Tag("class-filters") + @AbstractCollection(surroundWithTag = false) public final ClassFilter[] getClassFilters() { return myClassFilters != null ? myClassFilters : ClassFilter.EMPTY_ARRAY; } @@ -57,6 +68,8 @@ public class JavaBreakpointProperties extend myClassFilters = classFilters; } + @Tag("class-exclusion-filters") + @AbstractCollection(surroundWithTag = false) public ClassFilter[] getClassExclusionFilters() { return myClassExclusionFilters != null ? myClassExclusionFilters : ClassFilter.EMPTY_ARRAY; } diff --git a/java/debugger/impl/src/org/jetbrains/java/debugger/breakpoints/properties/JavaFieldBreakpointProperties.java b/java/debugger/impl/src/org/jetbrains/java/debugger/breakpoints/properties/JavaFieldBreakpointProperties.java index 83f60613fbf0..13b760e81428 100644 --- a/java/debugger/impl/src/org/jetbrains/java/debugger/breakpoints/properties/JavaFieldBreakpointProperties.java +++ b/java/debugger/impl/src/org/jetbrains/java/debugger/breakpoints/properties/JavaFieldBreakpointProperties.java @@ -25,10 +25,10 @@ public class JavaFieldBreakpointProperties extends JavaBreakpointProperties