public void writeExternal(@NotNull Element inspectionElement) throws WriteExternalException { if (myTools != null) { for (ScopeToolState state : myTools) { final Element scopeElement = new Element("scope"); scopeElement.setAttribute("name", state.getScopeName()); scopeElement.setAttribute(LEVEL_ATTRIBUTE, state.getLevel().getName()); scopeElement.setAttribute(ENABLED_ATTRIBUTE, Boolean.toString(state.isEnabled())); InspectionToolWrapper toolWrapper = state.getTool(); if (toolWrapper.isInitialized()) { toolWrapper.getTool().writeSettings(scopeElement); } inspectionElement.addContent(scopeElement); } } inspectionElement.setAttribute(ENABLED_ATTRIBUTE, Boolean.toString(isEnabled())); inspectionElement.setAttribute(LEVEL_ATTRIBUTE, getLevel().getName()); inspectionElement.setAttribute( ENABLED_BY_DEFAULT_ATTRIBUTE, Boolean.toString(myDefaultState.isEnabled())); InspectionToolWrapper toolWrapper = myDefaultState.getTool(); if (toolWrapper.isInitialized()) { toolWrapper.getTool().writeSettings(inspectionElement); } }