void (@NotNull final RunConfigurationBase runConfiguration) { final JavaCoverageEnabledConfiguration configuration = (JavaCoverageEnabledConfiguration)CoverageEnabledConfiguration.getOrCreate(runConfiguration); ClassFilter[] newCoveragePatterns = ArrayUtil.mergeArrays(myClassFilterEditor.getFilters(), myExcludeClassFilterEditor.getFilters()); ClassFilter[] oldCoveragePatterns = ObjectUtils.chooseNotNull(configuration.getCoveragePatterns(), ClassFilter.EMPTY_ARRAY); //apply new order if something else was changed as well if (newCoveragePatterns.length != oldCoveragePatterns.length || !ContainerUtil.newHashSet(newCoveragePatterns).equals(ContainerUtil.newHashSet(oldCoveragePatterns))) { configuration.setCoveragePatterns(newCoveragePatterns); } configuration.setCoverageRunner(getSelectedRunner()); configuration.setTrackPerTestCoverage(myTrackPerTestCoverageCb.isSelected()); configuration.setBranchCoverage(myBranchCoverageCb.isSelected()); configuration.setTrackTestFolders(myTrackTestSourcesCb.isSelected()); }