private static <T extends Breakpoint> Element getCategoryGroupElement( @NotNull final Map<Key<? extends Breakpoint>, Element> categoryToElementMap, @NotNull final Key<T> category, @NotNull final Element parentNode) { Element group = categoryToElementMap.get(category); if (group == null) { group = new Element(category.toString()); categoryToElementMap.put(category, group); parentNode.addContent(group); } return group; }
public void setBreakpointDefaults( Key<? extends Breakpoint> category, BreakpointDefaults defaults) { Class typeCls = null; if (LineBreakpoint.CATEGORY.toString().equals(category.toString())) { typeCls = JavaLineBreakpointType.class; } else if (MethodBreakpoint.CATEGORY.toString().equals(category.toString())) { typeCls = JavaMethodBreakpointType.class; } else if (FieldBreakpoint.CATEGORY.toString().equals(category.toString())) { typeCls = JavaFieldBreakpointType.class; } else if (ExceptionBreakpoint.CATEGORY.toString().equals(category.toString())) { typeCls = JavaExceptionBreakpointType.class; } if (typeCls != null) { XBreakpointType<XBreakpoint<?>, ?> type = XDebuggerUtil.getInstance().findBreakpointType(typeCls); ((XBreakpointManagerImpl) getXBreakpointManager()) .getBreakpointDefaults(type) .setSuspendPolicy(Breakpoint.transformSuspendPolicy(defaults.getSuspendPolicy())); } // myBreakpointDefaults.put(category, defaults); }