Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJeff Johnston2018-07-13 22:02:33 +0000
committerJeff Johnston2018-08-07 19:09:48 +0000
commitf5bc72cf819d844d33aec51b583a6ebe6a12f0fd (patch)
tree037156cfde537c1b7e2bb22a9a6e17185883ea47
parentb0fb2f091eaf1ccd2cf05a8f670e1a664633fac7 (diff)
downloadeclipse.jdt.ui-f5bc72cf819d844d33aec51b583a6ebe6a12f0fd.tar.gz
eclipse.jdt.ui-f5bc72cf819d844d33aec51b583a6ebe6a12f0fd.tar.xz
eclipse.jdt.ui-f5bc72cf819d844d33aec51b583a6ebe6a12f0fd.zip
Bug 537029 - Perform refactorings to enable jdt.ls usage
- modify PreferenceConstants to use CodeGenerationSettingsConstants - refactor CodeGenerationSettings to jdt.manipulation - create new CodeGenerationSettingsConstants from constants in PreferenceConstants - refactor ASTNodeFactory to jdt.core.manipulation - create new StubUtility2Core class in jdt.core.manipulation to assist ASTNodeFactory - refactor LinkedNodeFinder to jdt.core.manipulation - refactor JavaPreferencesSettings to jdt.core.manipulation - refactor JavaElementUtil to jdt.core.manipulation Change-Id: Ia9553cb9ae42ee654789c189ab4cfc1ea25b7b2d Signed-off-by: Jeff Johnston <jjohnstn@redhat.com>
-rw-r--r--org.eclipse.jdt.core.manipulation/META-INF/MANIFEST.MF3
-rw-r--r--org.eclipse.jdt.core.manipulation/common/org/eclipse/jdt/internal/ui/preferences/JavaPreferencesSettings.java (renamed from org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/preferences/JavaPreferencesSettings.java)15
-rw-r--r--org.eclipse.jdt.core.manipulation/core extension/org/eclipse/jdt/internal/corext/codemanipulation/CodeGenerationSettings.java (renamed from org.eclipse.jdt.ui/core extension/org/eclipse/jdt/internal/corext/codemanipulation/CodeGenerationSettings.java)5
-rw-r--r--org.eclipse.jdt.core.manipulation/core extension/org/eclipse/jdt/internal/corext/codemanipulation/CodeGenerationSettingsConstants.java52
-rw-r--r--org.eclipse.jdt.core.manipulation/core extension/org/eclipse/jdt/internal/corext/codemanipulation/StubUtility2Core.java124
-rw-r--r--org.eclipse.jdt.core.manipulation/core extension/org/eclipse/jdt/internal/corext/dom/ASTNodeFactory.java (renamed from org.eclipse.jdt.ui/core extension/org/eclipse/jdt/internal/corext/dom/ASTNodeFactory.java)8
-rw-r--r--org.eclipse.jdt.core.manipulation/core extension/org/eclipse/jdt/internal/corext/dom/LinkedNodeFinder.java (renamed from org.eclipse.jdt.ui/core extension/org/eclipse/jdt/internal/corext/dom/LinkedNodeFinder.java)0
-rw-r--r--org.eclipse.jdt.core.manipulation/core extension/org/eclipse/jdt/internal/corext/refactoring/util/JavaElementUtil.java (renamed from org.eclipse.jdt.ui/core refactoring/org/eclipse/jdt/internal/corext/refactoring/util/JavaElementUtil.java)4
-rw-r--r--org.eclipse.jdt.ui/core extension/org/eclipse/jdt/internal/corext/codemanipulation/GenerateHashCodeEqualsOperation.java2
-rw-r--r--org.eclipse.jdt.ui/core extension/org/eclipse/jdt/internal/corext/codemanipulation/StubUtility2.java82
-rw-r--r--org.eclipse.jdt.ui/core extension/org/eclipse/jdt/internal/corext/codemanipulation/tostringgeneration/AbstractToStringGenerator.java8
-rw-r--r--org.eclipse.jdt.ui/core refactoring/org/eclipse/jdt/internal/corext/refactoring/structure/ExtractInterfaceProcessor.java4
-rw-r--r--org.eclipse.jdt.ui/core refactoring/org/eclipse/jdt/internal/corext/refactoring/structure/PullUpRefactoringProcessor.java8
-rw-r--r--org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/text/correction/ModifierCorrectionSubProcessor.java4
-rw-r--r--org.eclipse.jdt.ui/ui/org/eclipse/jdt/ui/PreferenceConstants.java10
15 files changed, 218 insertions, 111 deletions
diff --git a/org.eclipse.jdt.core.manipulation/META-INF/MANIFEST.MF b/org.eclipse.jdt.core.manipulation/META-INF/MANIFEST.MF
index 670ef14e11..b0546cb01d 100644
--- a/org.eclipse.jdt.core.manipulation/META-INF/MANIFEST.MF
+++ b/org.eclipse.jdt.core.manipulation/META-INF/MANIFEST.MF
@@ -34,6 +34,7 @@ Export-Package: org.eclipse.jdt.core.manipulation,
org.eclipse.jdt.internal.corext.refactoring.util;manipulation=split;mandatory:=manipulation;x-friends:="org.eclipse.jdt.ui",
org.eclipse.jdt.internal.corext.template.java;manipulation=split;mandatory:=manipulation;x-friends:="org.eclipse.jdt.ui",
org.eclipse.jdt.internal.corext.util;manipulation=split;mandatory:=manipulation;x-friends:="org.eclipse.jdt.ui,org.eclipse.jdt.junit",
- org.eclipse.jdt.internal.ui.text.correction;x-friends:="org.eclipse.jdt.ui"
+ org.eclipse.jdt.internal.ui.text.correction;x-friends:="org.eclipse.jdt.ui",
+ org.eclipse.jdt.internal.ui.preferences;x-friends:="org.eclipse.jdt.ui"
Import-Package: com.ibm.icu.text
Bundle-RequiredExecutionEnvironment: JavaSE-1.8
diff --git a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/preferences/JavaPreferencesSettings.java b/org.eclipse.jdt.core.manipulation/common/org/eclipse/jdt/internal/ui/preferences/JavaPreferencesSettings.java
index 40bf889cf2..6d33c1825c 100644
--- a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/preferences/JavaPreferencesSettings.java
+++ b/org.eclipse.jdt.core.manipulation/common/org/eclipse/jdt/internal/ui/preferences/JavaPreferencesSettings.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2000, 2008 IBM Corporation and others.
+ * Copyright (c) 2000, 2018 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@@ -7,24 +7,25 @@
*
* Contributors:
* IBM Corporation - initial API and implementation
+ * Red Hat Inc. - moved to jdt.core.manipulation and modified
*******************************************************************************/
package org.eclipse.jdt.internal.ui.preferences;
import org.eclipse.jdt.core.IJavaProject;
+import org.eclipse.jdt.core.manipulation.JavaManipulation;
import org.eclipse.jdt.internal.corext.codemanipulation.CodeGenerationSettings;
+import org.eclipse.jdt.internal.corext.codemanipulation.CodeGenerationSettingsConstants;
import org.eclipse.jdt.internal.corext.util.CodeFormatterUtil;
-import org.eclipse.jdt.ui.PreferenceConstants;
-
public class JavaPreferencesSettings {
public static CodeGenerationSettings getCodeGenerationSettings(IJavaProject project) {
CodeGenerationSettings res= new CodeGenerationSettings();
- res.createComments= Boolean.valueOf(PreferenceConstants.getPreference(PreferenceConstants.CODEGEN_ADD_COMMENTS, project)).booleanValue();
- res.useKeywordThis= Boolean.valueOf(PreferenceConstants.getPreference(PreferenceConstants.CODEGEN_KEYWORD_THIS, project)).booleanValue();
- res.overrideAnnotation= Boolean.valueOf(PreferenceConstants.getPreference(PreferenceConstants.CODEGEN_USE_OVERRIDE_ANNOTATION, project)).booleanValue();
- res.importIgnoreLowercase= Boolean.valueOf(PreferenceConstants.getPreference(PreferenceConstants.ORGIMPORTS_IGNORELOWERCASE, project)).booleanValue();
+ res.createComments= Boolean.valueOf(JavaManipulation.getPreference(CodeGenerationSettingsConstants.CODEGEN_ADD_COMMENTS, project)).booleanValue();
+ res.useKeywordThis= Boolean.valueOf(JavaManipulation.getPreference(CodeGenerationSettingsConstants.CODEGEN_KEYWORD_THIS, project)).booleanValue();
+ res.overrideAnnotation= Boolean.valueOf(JavaManipulation.getPreference(CodeGenerationSettingsConstants.CODEGEN_USE_OVERRIDE_ANNOTATION, project)).booleanValue();
+ res.importIgnoreLowercase= Boolean.valueOf(JavaManipulation.getPreference(CodeGenerationSettingsConstants.ORGIMPORTS_IGNORELOWERCASE, project)).booleanValue();
res.tabWidth= CodeFormatterUtil.getTabWidth(project);
res.indentWidth= CodeFormatterUtil.getIndentWidth(project);
return res;
diff --git a/org.eclipse.jdt.ui/core extension/org/eclipse/jdt/internal/corext/codemanipulation/CodeGenerationSettings.java b/org.eclipse.jdt.core.manipulation/core extension/org/eclipse/jdt/internal/corext/codemanipulation/CodeGenerationSettings.java
index be8eff0318..9e04258842 100644
--- a/org.eclipse.jdt.ui/core extension/org/eclipse/jdt/internal/corext/codemanipulation/CodeGenerationSettings.java
+++ b/org.eclipse.jdt.core.manipulation/core extension/org/eclipse/jdt/internal/corext/codemanipulation/CodeGenerationSettings.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2000, 2008 IBM Corporation and others.
+ * Copyright (c) 2018 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@@ -7,6 +7,7 @@
*
* Contributors:
* IBM Corporation - initial API and implementation
+ * Red Hat Inc. - moved to jdt.core.manipulation
*******************************************************************************/
package org.eclipse.jdt.internal.corext.codemanipulation;
@@ -22,7 +23,6 @@ public class CodeGenerationSettings {
public int indentWidth;
-
public void setSettings(CodeGenerationSettings settings) {
settings.createComments= createComments;
settings.useKeywordThis= useKeywordThis;
@@ -32,6 +32,5 @@ public class CodeGenerationSettings {
settings.indentWidth= indentWidth;
}
-
}
diff --git a/org.eclipse.jdt.core.manipulation/core extension/org/eclipse/jdt/internal/corext/codemanipulation/CodeGenerationSettingsConstants.java b/org.eclipse.jdt.core.manipulation/core extension/org/eclipse/jdt/internal/corext/codemanipulation/CodeGenerationSettingsConstants.java
new file mode 100644
index 0000000000..5e3aa77544
--- /dev/null
+++ b/org.eclipse.jdt.core.manipulation/core extension/org/eclipse/jdt/internal/corext/codemanipulation/CodeGenerationSettingsConstants.java
@@ -0,0 +1,52 @@
+/*******************************************************************************
+ * Copyright (c) 2018 IBM Corporation and others.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * IBM Corporation - initial API and implementation
+ * Red Hat Inc. - constants moved from PreferenceConstants here
+ *******************************************************************************/
+package org.eclipse.jdt.internal.corext.codemanipulation;
+
+public class CodeGenerationSettingsConstants {
+
+ /**
+ * A named preference that controls if comment stubs will be added
+ * automatically to newly created types and methods.
+ * <p>
+ * Value is of type <code>Boolean</code>.
+ * </p>
+ */
+ public static final String CODEGEN_ADD_COMMENTS= "org.eclipse.jdt.ui.javadoc"; //$NON-NLS-1$
+
+ /**
+ * A named preference that controls whether the keyword "this" will be added
+ * automatically to field accesses in generated methods.
+ * <p>
+ * Value is of type <code>Boolean</code>.
+ * </p>
+ */
+ public static final String CODEGEN_KEYWORD_THIS= "org.eclipse.jdt.ui.keywordthis"; //$NON-NLS-1$
+
+ /**
+ * A named preference that controls whether to add a override annotation for newly created methods
+ * <p>
+ * Value is of type <code>Boolean</code>.
+ * </p>
+ */
+ public static final String CODEGEN_USE_OVERRIDE_ANNOTATION= "org.eclipse.jdt.ui.overrideannotation"; //$NON-NLS-1$
+
+ /**
+ * A named preferences that controls if types that start with a lower case letters get added by the
+ * "Organize Import" operation.
+ * <p>
+ * Value is of type <code>Boolean</code>.
+ * </p>
+ */
+ public static final String ORGIMPORTS_IGNORELOWERCASE= "org.eclipse.jdt.ui.ignorelowercasenames"; //$NON-NLS-1$
+
+
+}
diff --git a/org.eclipse.jdt.core.manipulation/core extension/org/eclipse/jdt/internal/corext/codemanipulation/StubUtility2Core.java b/org.eclipse.jdt.core.manipulation/core extension/org/eclipse/jdt/internal/corext/codemanipulation/StubUtility2Core.java
new file mode 100644
index 0000000000..06e32ad1bc
--- /dev/null
+++ b/org.eclipse.jdt.core.manipulation/core extension/org/eclipse/jdt/internal/corext/codemanipulation/StubUtility2Core.java
@@ -0,0 +1,124 @@
+/*******************************************************************************
+ * Copyright (c) 2018 IBM Corporation and others.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * IBM Corporation - initial API and implementation
+ * Red Hat Inc. - copied and pared down to methods needed by jdt.core.manipulation
+ *******************************************************************************/
+package org.eclipse.jdt.internal.corext.codemanipulation;
+
+import java.util.EnumSet;
+import java.util.List;
+
+import org.eclipse.text.edits.TextEditGroup;
+
+import org.eclipse.jdt.core.IJavaProject;
+import org.eclipse.jdt.core.JavaCore;
+import org.eclipse.jdt.core.dom.AST;
+import org.eclipse.jdt.core.dom.ASTNode;
+import org.eclipse.jdt.core.dom.Annotation;
+import org.eclipse.jdt.core.dom.CompilationUnit;
+import org.eclipse.jdt.core.dom.IExtendedModifier;
+import org.eclipse.jdt.core.dom.ITypeBinding;
+import org.eclipse.jdt.core.dom.MethodDeclaration;
+import org.eclipse.jdt.core.dom.rewrite.ASTRewrite;
+import org.eclipse.jdt.core.dom.rewrite.ImportRewrite;
+import org.eclipse.jdt.core.dom.rewrite.ImportRewrite.ImportRewriteContext;
+import org.eclipse.jdt.core.dom.rewrite.ImportRewrite.TypeLocation;
+
+import org.eclipse.jdt.internal.corext.dom.Bindings;
+import org.eclipse.jdt.internal.corext.util.JavaModelUtil;
+
+/**
+ * Utilities for code generation based on AST rewrite.
+ *
+ * @since 1.10
+ */
+public final class StubUtility2Core {
+
+ public static ITypeBinding replaceWildcardsAndCaptures(ITypeBinding type) {
+ while (type.isWildcardType() || type.isCapture() || (type.isArray() && type.getElementType().isCapture())) {
+ ITypeBinding bound= type.getBound();
+ type= (bound != null) ? bound : type.getErasure();
+ }
+ return type;
+ }
+
+
+ /**
+ * Adds <code>@Override</code> annotation to <code>methodDecl</code> if not already present and
+ * if requested by code style settings or compiler errors/warnings settings.
+ *
+ * @param settings the code generation style settings, may be <code>null</code>
+ * @param project the Java project used to access the compiler settings
+ * @param rewrite the ASTRewrite
+ * @param imports the ImportRewrite
+ * @param methodDecl the method declaration to add the annotation to
+ * @param isDeclaringTypeInterface <code>true</code> if the type declaring the method overridden
+ * by <code>methodDecl</code> is an interface
+ * @param group the text edit group, may be <code>null</code>
+ */
+ public static void addOverrideAnnotation(CodeGenerationSettings settings, IJavaProject project, ASTRewrite rewrite, ImportRewrite imports, MethodDeclaration methodDecl,
+ boolean isDeclaringTypeInterface, TextEditGroup group) {
+ if (!JavaModelUtil.is50OrHigher(project)) {
+ return;
+ }
+ if (isDeclaringTypeInterface) {
+ String version= project.getOption(JavaCore.COMPILER_COMPLIANCE, true);
+ if (JavaModelUtil.isVersionLessThan(version, JavaCore.VERSION_1_6))
+ return; // not allowed in 1.5
+ if (JavaCore.DISABLED.equals(project.getOption(JavaCore.COMPILER_PB_MISSING_OVERRIDE_ANNOTATION_FOR_INTERFACE_METHOD_IMPLEMENTATION, true)))
+ return; // user doesn't want to use 1.6 style
+ }
+ if ((settings != null && settings.overrideAnnotation) || !JavaCore.IGNORE.equals(project.getOption(JavaCore.COMPILER_PB_MISSING_OVERRIDE_ANNOTATION, true))) {
+ createOverrideAnnotation(rewrite, imports, methodDecl, group);
+ }
+ }
+
+ public static void createOverrideAnnotation(ASTRewrite rewrite, ImportRewrite imports, MethodDeclaration decl, TextEditGroup group) {
+ if (findAnnotation("java.lang.Override", decl.modifiers()) != null) { //$NON-NLS-1$
+ return; // No need to add duplicate annotation
+ }
+ AST ast= rewrite.getAST();
+ ASTNode root= decl.getRoot();
+ ImportRewriteContext context= null;
+ if (root instanceof CompilationUnit) {
+ context= new ContextSensitiveImportRewriteContext((CompilationUnit) root, decl.getStartPosition(), imports);
+ }
+ Annotation marker= ast.newMarkerAnnotation();
+ marker.setTypeName(ast.newName(imports.addImport("java.lang.Override", context))); //$NON-NLS-1$
+ rewrite.getListRewrite(decl, MethodDeclaration.MODIFIERS2_PROPERTY).insertFirst(marker, group);
+ }
+
+ public static boolean isCopyOnInheritAnnotation(ITypeBinding annotationType, IJavaProject project, EnumSet<TypeLocation> nullnessDefault, TypeLocation typeLocation) {
+ if (JavaCore.ENABLED.equals(project.getOption(JavaCore.COMPILER_INHERIT_NULL_ANNOTATIONS, true)))
+ return false;
+ if (nullnessDefault != null && Bindings.isNonNullAnnotation(annotationType, project)) {
+ if (!nullnessDefault.contains(typeLocation)) {
+ return true;
+ }
+ return false; // nonnull within the scope of @NonNullByDefault: don't copy
+ }
+ return Bindings.isAnyNullAnnotation(annotationType, project);
+ }
+
+ public static Annotation findAnnotation(String qualifiedTypeName, List<IExtendedModifier> modifiers) {
+ for (int i= 0; i < modifiers.size(); i++) {
+ IExtendedModifier curr= modifiers.get(i);
+ if (curr instanceof Annotation) {
+ Annotation annot= (Annotation) curr;
+ ITypeBinding binding= annot.getTypeName().resolveTypeBinding();
+ if (binding != null && qualifiedTypeName.equals(binding.getQualifiedName())) {
+ return annot;
+ }
+ }
+ }
+ return null;
+ }
+
+
+}
diff --git a/org.eclipse.jdt.ui/core extension/org/eclipse/jdt/internal/corext/dom/ASTNodeFactory.java b/org.eclipse.jdt.core.manipulation/core extension/org/eclipse/jdt/internal/corext/dom/ASTNodeFactory.java
index 523de3be2e..d977816bf3 100644
--- a/org.eclipse.jdt.ui/core extension/org/eclipse/jdt/internal/corext/dom/ASTNodeFactory.java
+++ b/org.eclipse.jdt.core.manipulation/core extension/org/eclipse/jdt/internal/corext/dom/ASTNodeFactory.java
@@ -7,6 +7,7 @@
*
* Contributors:
* IBM Corporation - initial API and implementation
+ * Red Hat Inc. - refactored to jdt.core.manipulation
*******************************************************************************/
package org.eclipse.jdt.internal.corext.dom;
@@ -46,14 +47,13 @@ import org.eclipse.jdt.core.dom.rewrite.ImportRewrite;
import org.eclipse.jdt.core.dom.rewrite.ImportRewrite.ImportRewriteContext;
import org.eclipse.jdt.core.dom.rewrite.ImportRewrite.TypeLocation;
-import org.eclipse.jdt.internal.corext.codemanipulation.StubUtility2;
-import org.eclipse.jdt.internal.corext.util.JDTUIHelperClasses;
+import org.eclipse.jdt.internal.corext.codemanipulation.StubUtility2Core;
/**
* JDT-UI-internal helper methods to create new {@link ASTNode}s.
* Complements <code>AST#new*(..)</code> and <code>ImportRewrite#add*(..)</code>.
*
- * @see JDTUIHelperClasses
+ * see JDTUIHelperClasses
*/
public class ASTNodeFactory {
@@ -410,7 +410,7 @@ public class ASTNodeFactory {
}
ParameterizedType parameterizedType= ast.newParameterizedType(baseType);
for (ITypeBinding typeArgument : typeBinding.getTypeArguments()) {
- typeArgument= StubUtility2.replaceWildcardsAndCaptures(typeArgument);
+ typeArgument= StubUtility2Core.replaceWildcardsAndCaptures(typeArgument);
parameterizedType.typeArguments().add(importRewrite.addImport(typeArgument, ast, importContext, TypeLocation.TYPE_ARGUMENT));
}
return parameterizedType;
diff --git a/org.eclipse.jdt.ui/core extension/org/eclipse/jdt/internal/corext/dom/LinkedNodeFinder.java b/org.eclipse.jdt.core.manipulation/core extension/org/eclipse/jdt/internal/corext/dom/LinkedNodeFinder.java
index f0255a6af2..f0255a6af2 100644
--- a/org.eclipse.jdt.ui/core extension/org/eclipse/jdt/internal/corext/dom/LinkedNodeFinder.java
+++ b/org.eclipse.jdt.core.manipulation/core extension/org/eclipse/jdt/internal/corext/dom/LinkedNodeFinder.java
diff --git a/org.eclipse.jdt.ui/core refactoring/org/eclipse/jdt/internal/corext/refactoring/util/JavaElementUtil.java b/org.eclipse.jdt.core.manipulation/core extension/org/eclipse/jdt/internal/corext/refactoring/util/JavaElementUtil.java
index 55f5b23762..e2eb49fbc4 100644
--- a/org.eclipse.jdt.ui/core refactoring/org/eclipse/jdt/internal/corext/refactoring/util/JavaElementUtil.java
+++ b/org.eclipse.jdt.core.manipulation/core extension/org/eclipse/jdt/internal/corext/refactoring/util/JavaElementUtil.java
@@ -7,6 +7,7 @@
*
* Contributors:
* IBM Corporation - initial API and implementation
+ * Red Hat Inc. - moved to jdt.core.manipulation
*******************************************************************************/
package org.eclipse.jdt.internal.corext.refactoring.util;
@@ -39,7 +40,6 @@ import org.eclipse.jdt.core.SourceRange;
import org.eclipse.jdt.internal.core.manipulation.util.BasicElementLabels;
import org.eclipse.jdt.internal.corext.refactoring.RefactoringCoreMessages;
-import org.eclipse.jdt.internal.corext.util.JDTUIHelperClasses;
import org.eclipse.jdt.internal.corext.util.JavaModelUtil;
@@ -47,7 +47,7 @@ import org.eclipse.jdt.internal.corext.util.JavaModelUtil;
* Utility methods for the Java Model.
*
* @see JavaModelUtil (a better place for new methods)
- * @see JDTUIHelperClasses
+ * see JDTUIHelperClasses
*/
public class JavaElementUtil {
diff --git a/org.eclipse.jdt.ui/core extension/org/eclipse/jdt/internal/corext/codemanipulation/GenerateHashCodeEqualsOperation.java b/org.eclipse.jdt.ui/core extension/org/eclipse/jdt/internal/corext/codemanipulation/GenerateHashCodeEqualsOperation.java
index 7f38c94681..b95772a903 100644
--- a/org.eclipse.jdt.ui/core extension/org/eclipse/jdt/internal/corext/codemanipulation/GenerateHashCodeEqualsOperation.java
+++ b/org.eclipse.jdt.ui/core extension/org/eclipse/jdt/internal/corext/codemanipulation/GenerateHashCodeEqualsOperation.java
@@ -1059,7 +1059,7 @@ public final class GenerateHashCodeEqualsOperation implements IWorkspaceRunnable
}
}
IJavaProject project= fUnit.getJavaElement().getJavaProject();
- StubUtility2.addOverrideAnnotation(fSettings, project, fRewrite.getASTRewrite(), fRewrite.getImportRewrite(), newDeclaration, copyFrom.getDeclaringClass().isInterface(), null);
+ StubUtility2Core.addOverrideAnnotation(fSettings, project, fRewrite.getASTRewrite(), fRewrite.getImportRewrite(), newDeclaration, copyFrom.getDeclaringClass().isInterface(), null);
}
private boolean needsNoSuperCall(ITypeBinding typeBinding, String name, ITypeBinding[] parameters) {
diff --git a/org.eclipse.jdt.ui/core extension/org/eclipse/jdt/internal/corext/codemanipulation/StubUtility2.java b/org.eclipse.jdt.ui/core extension/org/eclipse/jdt/internal/corext/codemanipulation/StubUtility2.java
index 826d7ae881..8e28e37964 100644
--- a/org.eclipse.jdt.ui/core extension/org/eclipse/jdt/internal/corext/codemanipulation/StubUtility2.java
+++ b/org.eclipse.jdt.ui/core extension/org/eclipse/jdt/internal/corext/codemanipulation/StubUtility2.java
@@ -8,6 +8,7 @@
* Contributors:
* IBM Corporation - initial API and implementation
* Stephan Herrmann - Contribution for Bug 463360 - [override method][null] generating method override should not create redundant null annotations
+ * Red Hat Inc. - removed some methods and put them in StubUtility2Core
*******************************************************************************/
package org.eclipse.jdt.internal.corext.codemanipulation;
@@ -22,8 +23,6 @@ import java.util.Map;
import org.eclipse.core.runtime.Assert;
import org.eclipse.core.runtime.CoreException;
-import org.eclipse.text.edits.TextEditGroup;
-
import org.eclipse.jdt.core.Flags;
import org.eclipse.jdt.core.ICompilationUnit;
import org.eclipse.jdt.core.IJavaElement;
@@ -92,51 +91,6 @@ import org.eclipse.jdt.internal.ui.preferences.formatter.FormatterProfileManager
*/
public final class StubUtility2 {
- /**
- * Adds <code>@Override</code> annotation to <code>methodDecl</code> if not already present and
- * if requested by code style settings or compiler errors/warnings settings.
- *
- * @param settings the code generation style settings, may be <code>null</code>
- * @param project the Java project used to access the compiler settings
- * @param rewrite the ASTRewrite
- * @param imports the ImportRewrite
- * @param methodDecl the method declaration to add the annotation to
- * @param isDeclaringTypeInterface <code>true</code> if the type declaring the method overridden
- * by <code>methodDecl</code> is an interface
- * @param group the text edit group, may be <code>null</code>
- */
- public static void addOverrideAnnotation(CodeGenerationSettings settings, IJavaProject project, ASTRewrite rewrite, ImportRewrite imports, MethodDeclaration methodDecl,
- boolean isDeclaringTypeInterface, TextEditGroup group) {
- if (!JavaModelUtil.is50OrHigher(project)) {
- return;
- }
- if (isDeclaringTypeInterface) {
- String version= project.getOption(JavaCore.COMPILER_COMPLIANCE, true);
- if (JavaModelUtil.isVersionLessThan(version, JavaCore.VERSION_1_6))
- return; // not allowed in 1.5
- if (JavaCore.DISABLED.equals(project.getOption(JavaCore.COMPILER_PB_MISSING_OVERRIDE_ANNOTATION_FOR_INTERFACE_METHOD_IMPLEMENTATION, true)))
- return; // user doesn't want to use 1.6 style
- }
- if ((settings != null && settings.overrideAnnotation) || !JavaCore.IGNORE.equals(project.getOption(JavaCore.COMPILER_PB_MISSING_OVERRIDE_ANNOTATION, true))) {
- createOverrideAnnotation(rewrite, imports, methodDecl, group);
- }
- }
-
- public static void createOverrideAnnotation(ASTRewrite rewrite, ImportRewrite imports, MethodDeclaration decl, TextEditGroup group) {
- if (findAnnotation("java.lang.Override", decl.modifiers()) != null) { //$NON-NLS-1$
- return; // No need to add duplicate annotation
- }
- AST ast= rewrite.getAST();
- ASTNode root= decl.getRoot();
- ImportRewriteContext context= null;
- if (root instanceof CompilationUnit) {
- context= new ContextSensitiveImportRewriteContext((CompilationUnit) root, decl.getStartPosition(), imports);
- }
- Annotation marker= ast.newMarkerAnnotation();
- marker.setTypeName(ast.newName(imports.addImport("java.lang.Override", context))); //$NON-NLS-1$
- rewrite.getListRewrite(decl, MethodDeclaration.MODIFIERS2_PROPERTY).insertFirst(marker, group);
- }
-
/* This method should work with all AST levels. */
public static MethodDeclaration createConstructorStub(ICompilationUnit unit, ASTRewrite rewrite, ImportRewrite imports, ImportRewriteContext context, IMethodBinding binding, String type, int modifiers, boolean omitSuperForDefConst, boolean todo, CodeGenerationSettings settings) throws CoreException {
AST ast= rewrite.getAST();
@@ -457,7 +411,7 @@ public final class StubUtility2 {
boolean skipOverride= inInterface && declaringType == typeObject && !Modifier.isPublic(modifiers);
if (!skipOverride) {
- addOverrideAnnotation(settings, javaProject, rewrite, imports, decl, binding.getDeclaringClass().isInterface(), null);
+ StubUtility2Core.addOverrideAnnotation(settings, javaProject, rewrite, imports, decl, binding.getDeclaringClass().isInterface(), null);
}
return decl;
@@ -539,7 +493,7 @@ public final class StubUtility2 {
var.setName(ast.newSimpleName(paramNames[i]));
IAnnotationBinding[] annotations= binding.getParameterAnnotations(i);
for (IAnnotationBinding annotation : annotations) {
- if (StubUtility2.isCopyOnInheritAnnotation(annotation.getAnnotationType(), project, nullnessDefault, TypeLocation.PARAMETER))
+ if (StubUtility2Core.isCopyOnInheritAnnotation(annotation.getAnnotationType(), project, nullnessDefault, TypeLocation.PARAMETER))
var.modifiers().add(imports.addAnnotation(annotation, ast, context));
}
parameters.add(var);
@@ -756,7 +710,7 @@ public final class StubUtility2 {
ITypeBinding otherAnnotationType= annotation.getAnnotationType();
String qn= otherAnnotationType.getQualifiedName();
if (qn.endsWith(n) && (qn.length() == n.length() || qn.charAt(qn.length() - n.length() - 1) == '.')) {
- if (StubUtility2.isCopyOnInheritAnnotation(otherAnnotationType, javaProject, nullnessDefault, TypeLocation.RETURN_TYPE))
+ if (StubUtility2Core.isCopyOnInheritAnnotation(otherAnnotationType, javaProject, nullnessDefault, TypeLocation.RETURN_TYPE))
result.add(importRewrite.addAnnotation(annotation, ast, context));
break;
}
@@ -772,7 +726,7 @@ public final class StubUtility2 {
ArrayList<IExtendedModifier> result= new ArrayList<>();
for (IAnnotationBinding annotation : annotations) {
- if (StubUtility2.isCopyOnInheritAnnotation(annotation.getAnnotationType(), javaProject, nullnessDefault, TypeLocation.RETURN_TYPE))
+ if (StubUtility2Core.isCopyOnInheritAnnotation(annotation.getAnnotationType(), javaProject, nullnessDefault, TypeLocation.RETURN_TYPE))
result.add(importRewrite.addAnnotation(annotation, ast, context));
}
@@ -972,32 +926,6 @@ public final class StubUtility2 {
// Not for instantiation
}
- public static boolean isCopyOnInheritAnnotation(ITypeBinding annotationType, IJavaProject project, EnumSet<TypeLocation> nullnessDefault, TypeLocation typeLocation) {
- if (JavaCore.ENABLED.equals(project.getOption(JavaCore.COMPILER_INHERIT_NULL_ANNOTATIONS, true)))
- return false;
- if (nullnessDefault != null && Bindings.isNonNullAnnotation(annotationType, project)) {
- if (!nullnessDefault.contains(typeLocation)) {
- return true;
- }
- return false; // nonnull within the scope of @NonNullByDefault: don't copy
- }
- return Bindings.isAnyNullAnnotation(annotationType, project);
- }
-
- public static Annotation findAnnotation(String qualifiedTypeName, List<IExtendedModifier> modifiers) {
- for (int i= 0; i < modifiers.size(); i++) {
- IExtendedModifier curr= modifiers.get(i);
- if (curr instanceof Annotation) {
- Annotation annot= (Annotation) curr;
- ITypeBinding binding= annot.getTypeName().resolveTypeBinding();
- if (binding != null && qualifiedTypeName.equals(binding.getQualifiedName())) {
- return annot;
- }
- }
- }
- return null;
- }
-
public static ITypeBinding replaceWildcardsAndCaptures(ITypeBinding type) {
while (type.isWildcardType() || type.isCapture() || (type.isArray() && type.getElementType().isCapture())) {
ITypeBinding bound= type.getBound();
diff --git a/org.eclipse.jdt.ui/core extension/org/eclipse/jdt/internal/corext/codemanipulation/tostringgeneration/AbstractToStringGenerator.java b/org.eclipse.jdt.ui/core extension/org/eclipse/jdt/internal/corext/codemanipulation/tostringgeneration/AbstractToStringGenerator.java
index 5801772b53..381d506957 100644
--- a/org.eclipse.jdt.ui/core extension/org/eclipse/jdt/internal/corext/codemanipulation/tostringgeneration/AbstractToStringGenerator.java
+++ b/org.eclipse.jdt.ui/core extension/org/eclipse/jdt/internal/corext/codemanipulation/tostringgeneration/AbstractToStringGenerator.java
@@ -38,11 +38,13 @@ import org.eclipse.jdt.core.dom.ITypeBinding;
import org.eclipse.jdt.core.dom.IVariableBinding;
import org.eclipse.jdt.core.dom.IfStatement;
import org.eclipse.jdt.core.dom.InfixExpression;
+import org.eclipse.jdt.core.dom.InfixExpression.Operator;
import org.eclipse.jdt.core.dom.InstanceofExpression;
import org.eclipse.jdt.core.dom.Javadoc;
import org.eclipse.jdt.core.dom.MethodDeclaration;
import org.eclipse.jdt.core.dom.MethodInvocation;
import org.eclipse.jdt.core.dom.Modifier;
+import org.eclipse.jdt.core.dom.Modifier.ModifierKeyword;
import org.eclipse.jdt.core.dom.Name;
import org.eclipse.jdt.core.dom.ParameterizedType;
import org.eclipse.jdt.core.dom.ParenthesizedExpression;
@@ -58,11 +60,9 @@ import org.eclipse.jdt.core.dom.Type;
import org.eclipse.jdt.core.dom.VariableDeclarationExpression;
import org.eclipse.jdt.core.dom.VariableDeclarationFragment;
import org.eclipse.jdt.core.dom.VariableDeclarationStatement;
-import org.eclipse.jdt.core.dom.InfixExpression.Operator;
-import org.eclipse.jdt.core.dom.Modifier.ModifierKeyword;
import org.eclipse.jdt.internal.corext.codemanipulation.StubUtility;
-import org.eclipse.jdt.internal.corext.codemanipulation.StubUtility2;
+import org.eclipse.jdt.internal.corext.codemanipulation.StubUtility2Core;
import org.eclipse.jdt.internal.corext.dom.ASTNodeFactory;
import org.eclipse.jdt.ui.CodeGeneration;
@@ -241,7 +241,7 @@ public abstract class AbstractToStringGenerator {
toStringMethod.setJavadoc(javadoc);
}
}
- StubUtility2.addOverrideAnnotation(fContext.getCodeGenerationSettings(), fContext.getTypeBinding().getJavaElement().getJavaProject(), fContext.getASTRewrite(), fContext.getImportRewrite(), toStringMethod, objectMethod.getDeclaringClass().isInterface(), null);
+ StubUtility2Core.addOverrideAnnotation(fContext.getCodeGenerationSettings(), fContext.getTypeBinding().getJavaElement().getJavaProject(), fContext.getASTRewrite(), fContext.getImportRewrite(), toStringMethod, objectMethod.getDeclaringClass().isInterface(), null);
}
/**
diff --git a/org.eclipse.jdt.ui/core refactoring/org/eclipse/jdt/internal/corext/refactoring/structure/ExtractInterfaceProcessor.java b/org.eclipse.jdt.ui/core refactoring/org/eclipse/jdt/internal/corext/refactoring/structure/ExtractInterfaceProcessor.java
index 773b1d068b..e9debdac3f 100644
--- a/org.eclipse.jdt.ui/core refactoring/org/eclipse/jdt/internal/corext/refactoring/structure/ExtractInterfaceProcessor.java
+++ b/org.eclipse.jdt.ui/core refactoring/org/eclipse/jdt/internal/corext/refactoring/structure/ExtractInterfaceProcessor.java
@@ -96,7 +96,7 @@ import org.eclipse.jdt.internal.core.manipulation.util.Strings;
import org.eclipse.jdt.internal.core.refactoring.descriptors.RefactoringSignatureDescriptorFactory;
import org.eclipse.jdt.internal.corext.codemanipulation.CodeGenerationSettings;
import org.eclipse.jdt.internal.corext.codemanipulation.StubUtility;
-import org.eclipse.jdt.internal.corext.codemanipulation.StubUtility2;
+import org.eclipse.jdt.internal.corext.codemanipulation.StubUtility2Core;
import org.eclipse.jdt.internal.corext.dom.Bindings;
import org.eclipse.jdt.internal.corext.dom.IASTSharedValues;
import org.eclipse.jdt.internal.corext.dom.ModifierRewrite;
@@ -623,7 +623,7 @@ public final class ExtractInterfaceProcessor extends SuperTypeRefactoringProcess
}
}
if (annotations) {
- StubUtility2.createOverrideAnnotation(sourceRewrite.getASTRewrite(), sourceRewrite.getImportRewrite(), declaration, null);
+ StubUtility2Core.createOverrideAnnotation(sourceRewrite.getASTRewrite(), sourceRewrite.getImportRewrite(), declaration, null);
}
if (fComments)
createMethodComment(sourceRewrite, declaration, replacements, javadoc);
diff --git a/org.eclipse.jdt.ui/core refactoring/org/eclipse/jdt/internal/corext/refactoring/structure/PullUpRefactoringProcessor.java b/org.eclipse.jdt.ui/core refactoring/org/eclipse/jdt/internal/corext/refactoring/structure/PullUpRefactoringProcessor.java
index 3cbf79c10c..fb9af2a1c4 100644
--- a/org.eclipse.jdt.ui/core refactoring/org/eclipse/jdt/internal/corext/refactoring/structure/PullUpRefactoringProcessor.java
+++ b/org.eclipse.jdt.ui/core refactoring/org/eclipse/jdt/internal/corext/refactoring/structure/PullUpRefactoringProcessor.java
@@ -106,7 +106,7 @@ import org.eclipse.jdt.internal.core.refactoring.descriptors.RefactoringSignatur
import org.eclipse.jdt.internal.corext.codemanipulation.CodeGenerationSettings;
import org.eclipse.jdt.internal.corext.codemanipulation.ContextSensitiveImportRewriteContext;
import org.eclipse.jdt.internal.corext.codemanipulation.StubUtility;
-import org.eclipse.jdt.internal.corext.codemanipulation.StubUtility2;
+import org.eclipse.jdt.internal.corext.codemanipulation.StubUtility2Core;
import org.eclipse.jdt.internal.corext.dom.ASTNodeFactory;
import org.eclipse.jdt.internal.corext.dom.ASTNodes;
import org.eclipse.jdt.internal.corext.dom.Bindings;
@@ -537,7 +537,7 @@ public class PullUpRefactoringProcessor extends HierarchyProcessor {
ImportRewriteUtil.addImports(rewriter, context, methodToCreateStubFor, new HashMap<Name, String>(), new HashMap<Name, String>(), true);
IJavaProject javaProject= newCu.getJavaProject();
CodeGenerationSettings codeGenerationSettings= JavaPreferencesSettings.getCodeGenerationSettings(javaProject);
- StubUtility2.addOverrideAnnotation(codeGenerationSettings, javaProject, astRewrite, importRewrite, newMethod, getDeclaringType().isInterface(),
+ StubUtility2Core.addOverrideAnnotation(codeGenerationSettings, javaProject, astRewrite, importRewrite, newMethod, getDeclaringType().isInterface(),
rewriter.createCategorizedGroupDescription(RefactoringCoreMessages.PullUpRefactoring_add_override_annotation, SET_PULL_UP));
astRewrite.getListRewrite(typeToCreateStubIn, typeToCreateStubIn.getBodyDeclarationsProperty()).insertAt(newMethod, BodyDeclarationRewrite.getInsertionIndex(newMethod, typeToCreateStubIn.bodyDeclarations()), rewriter.createCategorizedGroupDescription(RefactoringCoreMessages.PullUpRefactoring_add_method_stub, SET_PULL_UP));
}
@@ -1036,7 +1036,7 @@ public class PullUpRefactoringProcessor extends HierarchyProcessor {
private void createAbstractMethod(final IMethod sourceMethod, final CompilationUnitRewrite sourceRewriter, final CompilationUnit declaringCuNode, final AbstractTypeDeclaration destination, final TypeVariableMaplet[] mapping, final CompilationUnitRewrite targetRewrite, final Map<IMember, IncomingMemberVisibilityAdjustment> adjustments, final IProgressMonitor monitor, final RefactoringStatus status) throws JavaModelException {
final MethodDeclaration oldMethod= ASTNodeSearchUtil.getMethodDeclarationNode(sourceMethod, declaringCuNode);
ITypeBinding destinationBinding= destination.resolveBinding();
- StubUtility2.addOverrideAnnotation(fSettings, sourceMethod.getJavaProject(), sourceRewriter.getASTRewrite(), sourceRewriter.getImportRewrite(), oldMethod,
+ StubUtility2Core.addOverrideAnnotation(fSettings, sourceMethod.getJavaProject(), sourceRewriter.getASTRewrite(), sourceRewriter.getImportRewrite(), oldMethod,
destinationBinding == null ? false : destinationBinding.isInterface(),
sourceRewriter.createCategorizedGroupDescription(RefactoringCoreMessages.PullUpRefactoring_add_override_annotation, SET_PULL_UP));
final MethodDeclaration newMethod= targetRewrite.getAST().newMethodDeclaration();
@@ -1334,7 +1334,7 @@ public class PullUpRefactoringProcessor extends HierarchyProcessor {
final ASTRewrite rewrite= targetRewrite.getASTRewrite();
final AST ast= rewrite.getAST();
ITypeBinding destinationBinding= ASTNodeSearchUtil.getAbstractTypeDeclarationNode(getDestinationType(), targetRewrite.getRoot()).resolveBinding();
- StubUtility2.addOverrideAnnotation(fSettings, sourceMethod.getJavaProject(), sourceRewrite.getASTRewrite(), sourceRewrite.getImportRewrite(), oldMethod,
+ StubUtility2Core.addOverrideAnnotation(fSettings, sourceMethod.getJavaProject(), sourceRewrite.getASTRewrite(), sourceRewrite.getImportRewrite(), oldMethod,
destinationBinding == null ? false : destinationBinding.isInterface(),
sourceRewrite.createCategorizedGroupDescription(RefactoringCoreMessages.PullUpRefactoring_add_override_annotation, SET_PULL_UP));
final MethodDeclaration newMethod= ast.newMethodDeclaration();
diff --git a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/text/correction/ModifierCorrectionSubProcessor.java b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/text/correction/ModifierCorrectionSubProcessor.java
index 3cd7bbb52b..674236765b 100644
--- a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/text/correction/ModifierCorrectionSubProcessor.java
+++ b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/text/correction/ModifierCorrectionSubProcessor.java
@@ -69,7 +69,7 @@ import org.eclipse.jdt.core.dom.TypeDeclaration;
import org.eclipse.jdt.core.dom.rewrite.ASTRewrite;
import org.eclipse.jdt.core.formatter.IndentManipulation;
-import org.eclipse.jdt.internal.corext.codemanipulation.StubUtility2;
+import org.eclipse.jdt.internal.corext.codemanipulation.StubUtility2Core;
import org.eclipse.jdt.internal.corext.dom.ASTNodeFactory;
import org.eclipse.jdt.internal.corext.dom.ASTNodes;
import org.eclipse.jdt.internal.corext.dom.Bindings;
@@ -866,7 +866,7 @@ public class ModifierCorrectionSubProcessor {
return;
}
MethodDeclaration methodDecl= (MethodDeclaration) selectedNode;
- Annotation annot= StubUtility2.findAnnotation("java.lang.Override", methodDecl.modifiers()); //$NON-NLS-1$
+ Annotation annot= StubUtility2Core.findAnnotation("java.lang.Override", methodDecl.modifiers()); //$NON-NLS-1$
if (annot != null) {
ASTRewrite rewrite= ASTRewrite.create(annot.getAST());
rewrite.remove(annot, null);
diff --git a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/ui/PreferenceConstants.java b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/ui/PreferenceConstants.java
index e23725f530..fbab1f5f10 100644
--- a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/ui/PreferenceConstants.java
+++ b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/ui/PreferenceConstants.java
@@ -8,6 +8,7 @@
* Contributors:
* IBM Corporation - initial API and implementation
* Guven Demir <guven.internet+eclipse@gmail.com> - [package explorer] Alternative package name shortening: abbreviation - https://bugs.eclipse.org/bugs/show_bug.cgi?id=299514
+ * Red Hat Inc - modify to use CodeGenerationSettingsConstants
*******************************************************************************/
package org.eclipse.jdt.ui;
@@ -39,6 +40,7 @@ import org.eclipse.jdt.core.manipulation.CodeStyleConfiguration;
import org.eclipse.jdt.core.manipulation.JavaManipulation;
import org.eclipse.jdt.internal.core.manipulation.MembersOrderPreferenceCacheCommon;
+import org.eclipse.jdt.internal.corext.codemanipulation.CodeGenerationSettingsConstants;
import org.eclipse.jdt.internal.corext.fix.CleanUpConstantsOptions;
import org.eclipse.jdt.ui.text.IJavaColorConstants;
@@ -302,7 +304,7 @@ public class PreferenceConstants {
* </p>
* @since 3.0
*/
- public static final String CODEGEN_KEYWORD_THIS= "org.eclipse.jdt.ui.keywordthis"; //$NON-NLS-1$
+ public static final String CODEGEN_KEYWORD_THIS= CodeGenerationSettingsConstants.CODEGEN_KEYWORD_THIS;
/**
* A named preference that controls whether automatically created getters which return a boolean
@@ -338,7 +340,7 @@ public class PreferenceConstants {
* </p>
* @since 2.1
*/
- public static final String CODEGEN_ADD_COMMENTS= "org.eclipse.jdt.ui.javadoc"; //$NON-NLS-1$
+ public static final String CODEGEN_ADD_COMMENTS= CodeGenerationSettingsConstants.CODEGEN_ADD_COMMENTS;
/**
* A named preference that controls if a comment stubs will be added
@@ -381,7 +383,7 @@ public class PreferenceConstants {
* </p>
* @since 3.1
*/
- public static final String CODEGEN_USE_OVERRIDE_ANNOTATION= "org.eclipse.jdt.ui.overrideannotation"; //$NON-NLS-1$
+ public static final String CODEGEN_USE_OVERRIDE_ANNOTATION= CodeGenerationSettingsConstants.CODEGEN_USE_OVERRIDE_ANNOTATION;
/**
* A named preference that holds a list of semicolon separated fully qualified type names with wild card characters.
@@ -430,7 +432,7 @@ public class PreferenceConstants {
* Value is of type <code>Boolean</code>.
* </p>
*/
- public static final String ORGIMPORTS_IGNORELOWERCASE= "org.eclipse.jdt.ui.ignorelowercasenames"; //$NON-NLS-1$
+ public static final String ORGIMPORTS_IGNORELOWERCASE= CodeGenerationSettingsConstants.ORGIMPORTS_IGNORELOWERCASE;
/**
* A named preference that specifies whether children of a compilation unit are shown in the package explorer.

Back to the top