mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
IDEA-82751 "Add @NotNull Assertions" to be stored in compiler.xml
This commit is contained in:
@@ -86,6 +86,7 @@ public class CompilerConfigurationImpl extends CompilerConfiguration implements
|
||||
private String myProcessorPath = "";
|
||||
private final Map<Module, String> myProcessedModules = new HashMap<Module, String>();
|
||||
private final Map<String, String> myModuleNames = new HashMap<String, String>();
|
||||
private boolean myAddNotNullAssertions = true;
|
||||
|
||||
|
||||
public CompilerConfigurationImpl(Project project, ModuleManager moduleManager) {
|
||||
@@ -300,6 +301,16 @@ public class CompilerConfigurationImpl extends CompilerConfiguration implements
|
||||
return isResourceFile(virtualFile.getName(), virtualFile.getParent());
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean isAddNotNullAssertions() {
|
||||
return myAddNotNullAssertions;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setAddNotNullAssertions(boolean enabled) {
|
||||
myAddNotNullAssertions = enabled;
|
||||
}
|
||||
|
||||
public boolean isAnnotationProcessorsEnabled() {
|
||||
return myEnableAnnotationProcessors;
|
||||
}
|
||||
@@ -509,10 +520,16 @@ public class CompilerConfigurationImpl extends CompilerConfiguration implements
|
||||
@NonNls private static final String WILDCARD_RESOURCE_PATTERNS = "wildcardResourcePatterns";
|
||||
@NonNls private static final String ENTRY = "entry";
|
||||
@NonNls private static final String NAME = "name";
|
||||
@NonNls private static final String ADD_NOTNULL_ASSERTIONS = "addNotNullAssertions";
|
||||
|
||||
public void readExternal(Element parentNode) throws InvalidDataException {
|
||||
DefaultJDOMExternalizer.readExternal(this, parentNode);
|
||||
|
||||
final Element notNullAssertions = parentNode.getChild(ADD_NOTNULL_ASSERTIONS);
|
||||
if (notNullAssertions != null) {
|
||||
myAddNotNullAssertions = Boolean.valueOf(notNullAssertions.getAttributeValue("enabled", "true"));
|
||||
}
|
||||
|
||||
Element node = parentNode.getChild(EXCLUDE_FROM_COMPILE);
|
||||
if (node != null) {
|
||||
myExcludedEntriesConfiguration.readExternal(node);
|
||||
@@ -600,6 +617,12 @@ public class CompilerConfigurationImpl extends CompilerConfiguration implements
|
||||
public void writeExternal(Element parentNode) throws WriteExternalException {
|
||||
DefaultJDOMExternalizer.writeExternal(this, parentNode);
|
||||
|
||||
if (myAddNotNullAssertions != true) {
|
||||
final Element notNullAssertions = new Element(ADD_NOTNULL_ASSERTIONS);
|
||||
notNullAssertions.setAttribute("enabled", String.valueOf(myAddNotNullAssertions));
|
||||
parentNode.addContent(notNullAssertions);
|
||||
}
|
||||
|
||||
if(myExcludedEntriesConfiguration.getExcludeEntryDescriptions().length > 0) {
|
||||
Element newChild = new Element(EXCLUDE_FROM_COMPILE);
|
||||
myExcludedEntriesConfiguration.writeExternal(newChild);
|
||||
|
||||
+1
-1
@@ -835,7 +835,7 @@ public class BackendCompilerWrapper {
|
||||
private ClassParsingThread(final boolean isJdk16, String outputDir) {
|
||||
myIsJdk16 = isJdk16;
|
||||
myOutputDir = FileUtil.toSystemIndependentName(outputDir);
|
||||
myAddNotNullAssertions = CompilerWorkspaceConfiguration.getInstance(myProject).ASSERT_NOT_NULL;
|
||||
myAddNotNullAssertions = CompilerConfiguration.getInstance(myProject).isAddNotNullAssertions();
|
||||
}
|
||||
|
||||
private volatile boolean processing;
|
||||
|
||||
@@ -73,7 +73,7 @@ public class CompilerUIConfigurable implements SearchableConfigurable, Configura
|
||||
myCbCompileInBackground.setSelected(workspaceConfiguration.COMPILE_IN_BACKGROUND);
|
||||
myCbAutoShowFirstError.setSelected(workspaceConfiguration.AUTO_SHOW_ERRORS_IN_EDITOR);
|
||||
myCbClearOutputDirectory.setSelected(workspaceConfiguration.CLEAR_OUTPUT_DIRECTORY);
|
||||
myCbAssertNotNull.setSelected(workspaceConfiguration.ASSERT_NOT_NULL);
|
||||
myCbAssertNotNull.setSelected(configuration.isAddNotNullAssertions());
|
||||
myCbUseCompileServer.setSelected(workspaceConfiguration.USE_COMPILE_SERVER);
|
||||
myCbMakeProjectOnSave.setSelected(workspaceConfiguration.MAKE_PROJECT_ON_SAVE);
|
||||
myCbMakeProjectOnSave.setEnabled(workspaceConfiguration.USE_COMPILE_SERVER);
|
||||
@@ -101,10 +101,10 @@ public class CompilerUIConfigurable implements SearchableConfigurable, Configura
|
||||
workspaceConfiguration.COMPILE_IN_BACKGROUND = myCbCompileInBackground.isSelected();
|
||||
workspaceConfiguration.AUTO_SHOW_ERRORS_IN_EDITOR = myCbAutoShowFirstError.isSelected();
|
||||
workspaceConfiguration.CLEAR_OUTPUT_DIRECTORY = myCbClearOutputDirectory.isSelected();
|
||||
workspaceConfiguration.ASSERT_NOT_NULL = myCbAssertNotNull.isSelected();
|
||||
workspaceConfiguration.USE_COMPILE_SERVER = myCbUseCompileServer.isSelected();
|
||||
workspaceConfiguration.MAKE_PROJECT_ON_SAVE = myCbMakeProjectOnSave.isSelected();
|
||||
|
||||
configuration.setAddNotNullAssertions(myCbAssertNotNull.isSelected());
|
||||
configuration.removeResourceFilePatterns();
|
||||
String extensionString = myResourcePatternsField.getText().trim();
|
||||
applyResourcePatterns(extensionString, (CompilerConfigurationImpl)CompilerConfiguration.getInstance(myProject));
|
||||
@@ -162,11 +162,11 @@ public class CompilerUIConfigurable implements SearchableConfigurable, Configura
|
||||
final CompilerWorkspaceConfiguration workspaceConfiguration = CompilerWorkspaceConfiguration.getInstance(myProject);
|
||||
isModified |= ComparingUtils.isModified(myCbCompileInBackground, workspaceConfiguration.COMPILE_IN_BACKGROUND);
|
||||
isModified |= ComparingUtils.isModified(myCbAutoShowFirstError, workspaceConfiguration.AUTO_SHOW_ERRORS_IN_EDITOR);
|
||||
isModified |= ComparingUtils.isModified(myCbAssertNotNull, workspaceConfiguration.ASSERT_NOT_NULL);
|
||||
isModified |= ComparingUtils.isModified(myCbUseCompileServer, workspaceConfiguration.USE_COMPILE_SERVER);
|
||||
isModified |= ComparingUtils.isModified(myCbMakeProjectOnSave, workspaceConfiguration.MAKE_PROJECT_ON_SAVE);
|
||||
|
||||
final CompilerConfigurationImpl compilerConfiguration = (CompilerConfigurationImpl)CompilerConfiguration.getInstance(myProject);
|
||||
isModified |= ComparingUtils.isModified(myCbAssertNotNull, compilerConfiguration.isAddNotNullAssertions());
|
||||
isModified |= ComparingUtils.isModified(myCbClearOutputDirectory, workspaceConfiguration.CLEAR_OUTPUT_DIRECTORY);
|
||||
isModified |= ComparingUtils.isModified(myResourcePatternsField, patternsToString(compilerConfiguration.getResourceFilePatterns()));
|
||||
|
||||
|
||||
@@ -38,6 +38,10 @@ public abstract class CompilerConfiguration {
|
||||
|
||||
public abstract void addResourceFilePattern(String namePattern) throws MalformedPatternException;
|
||||
|
||||
public abstract boolean isAddNotNullAssertions();
|
||||
|
||||
public abstract void setAddNotNullAssertions(boolean enabled);
|
||||
|
||||
public abstract boolean isAnnotationProcessorsEnabled();
|
||||
|
||||
public abstract void setAnnotationProcessorsEnabled(boolean enableAnnotationProcessors);
|
||||
|
||||
@@ -41,7 +41,6 @@ public class CompilerWorkspaceConfiguration implements PersistentStateComponent<
|
||||
public boolean AUTO_SHOW_ERRORS_IN_EDITOR = true;
|
||||
@Deprecated public boolean CLOSE_MESSAGE_VIEW_IF_SUCCESS = true;
|
||||
public boolean CLEAR_OUTPUT_DIRECTORY = true;
|
||||
public boolean ASSERT_NOT_NULL = true;
|
||||
public boolean USE_COMPILE_SERVER = false;
|
||||
public boolean MAKE_PROJECT_ON_SAVE = false;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user