From dd4cfd5e6752fefe9b8a683d17633aca0e489225 Mon Sep 17 00:00:00 2001 From: Vladimir Krivosheev Date: Fri, 4 Nov 2016 14:41:21 +0100 Subject: [PATCH] =?UTF-8?q?inherit-compiler-output=20=E2=80=94=20do=20not?= =?UTF-8?q?=20write=20default=20value=20(false)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../roots/impl/CompilerModuleExtensionImpl.java | 10 ++++++---- .../java/JpsJavaModelSerializerExtension.java | 10 +++++++--- 2 files changed, 13 insertions(+), 7 deletions(-) diff --git a/java/java-impl/src/com/intellij/openapi/roots/impl/CompilerModuleExtensionImpl.java b/java/java-impl/src/com/intellij/openapi/roots/impl/CompilerModuleExtensionImpl.java index 70e95f65141d..34cdad874baa 100644 --- a/java/java-impl/src/com/intellij/openapi/roots/impl/CompilerModuleExtensionImpl.java +++ b/java/java-impl/src/com/intellij/openapi/roots/impl/CompilerModuleExtensionImpl.java @@ -1,5 +1,5 @@ /* - * Copyright 2000-2015 JetBrains s.r.o. + * Copyright 2000-2016 JetBrains s.r.o. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -45,7 +45,6 @@ public class CompilerModuleExtensionImpl extends CompilerModuleExtension { @NonNls private static final String OUTPUT_TAG = JpsJavaModelSerializerExtension.OUTPUT_TAG; @NonNls private static final String TEST_OUTPUT_TAG = JpsJavaModelSerializerExtension.TEST_OUTPUT_TAG; @NonNls private static final String ATTRIBUTE_URL = JpsJavaModelSerializerExtension.URL_ATTRIBUTE; - @NonNls private static final String INHERIT_COMPILER_OUTPUT = JpsJavaModelSerializerExtension.INHERIT_COMPILER_OUTPUT_ATTRIBUTE; @NonNls private static final String EXCLUDE_OUTPUT_TAG = JpsJavaModelSerializerExtension.EXCLUDE_OUTPUT_TAG; private String myCompilerOutput; @@ -88,7 +87,7 @@ public class CompilerModuleExtensionImpl extends CompilerModuleExtension { @Override public void readExternal(final Element element) throws InvalidDataException { assert !myDisposed; - final String value = element.getAttributeValue(INHERIT_COMPILER_OUTPUT); + final String value = element.getAttributeValue(JpsJavaModelSerializerExtension.INHERIT_COMPILER_OUTPUT_ATTRIBUTE); myInheritedCompilerOutput = value != null && Boolean.parseBoolean(value); myExcludeOutput = element.getChild(EXCLUDE_OUTPUT_TAG) != null; @@ -116,7 +115,10 @@ public class CompilerModuleExtensionImpl extends CompilerModuleExtension { element.addContent(pathElement); } } - element.setAttribute(INHERIT_COMPILER_OUTPUT, String.valueOf(myInheritedCompilerOutput)); + else { + element.setAttribute(JpsJavaModelSerializerExtension.INHERIT_COMPILER_OUTPUT_ATTRIBUTE, "true"); + } + if (myExcludeOutput) { element.addContent(new Element(EXCLUDE_OUTPUT_TAG)); } diff --git a/jps/model-serialization/src/org/jetbrains/jps/model/serialization/java/JpsJavaModelSerializerExtension.java b/jps/model-serialization/src/org/jetbrains/jps/model/serialization/java/JpsJavaModelSerializerExtension.java index 590674f00f54..2924f9c4dc76 100644 --- a/jps/model-serialization/src/org/jetbrains/jps/model/serialization/java/JpsJavaModelSerializerExtension.java +++ b/jps/model-serialization/src/org/jetbrains/jps/model/serialization/java/JpsJavaModelSerializerExtension.java @@ -1,5 +1,5 @@ /* - * Copyright 2000-2013 JetBrains s.r.o. + * Copyright 2000-2016 JetBrains s.r.o. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -112,7 +112,7 @@ public class JpsJavaModelSerializerExtension extends JpsModelSerializerExtension public void loadModuleDependencyProperties(JpsDependencyElement dependency, Element entry) { boolean exported = entry.getAttributeValue(EXPORTED_ATTRIBUTE) != null; String scopeName = entry.getAttributeValue(SCOPE_ATTRIBUTE); - JpsJavaDependencyScope scope = null; + JpsJavaDependencyScope scope; try { scope = scopeName != null ? JpsJavaDependencyScope.valueOf(scopeName) : JpsJavaDependencyScope.COMPILE; } @@ -220,7 +220,11 @@ public class JpsJavaModelSerializerExtension extends JpsModelSerializerExtension if (languageLevel != null) { rootModelComponent.setAttribute(MODULE_LANGUAGE_LEVEL_ATTRIBUTE, languageLevel.name()); } - rootModelComponent.setAttribute(INHERIT_COMPILER_OUTPUT_ATTRIBUTE, String.valueOf(extension.isInheritOutput())); + + if (extension.isInheritOutput()) { + rootModelComponent.setAttribute(INHERIT_COMPILER_OUTPUT_ATTRIBUTE, "true"); + } + saveAdditionalRoots(rootModelComponent, JAVADOC_PATHS_TAG, extension.getJavadocRoots()); saveAdditionalRoots(rootModelComponent, ANNOTATION_PATHS_TAG, extension.getAnnotationRoots()); }