Skip to content

Commit d55f79a

Browse files
authored
[#2157] Describe final field initialization proposal considering type (#2158)
- InitializeFinalFieldProposal now selects more appropriate description using updateType passed to it, which helps better distinguish both types of corrections in UI. Signed-off-by: Nikifor Fedorov <[email protected]>
1 parent 2c2d352 commit d55f79a

File tree

1 file changed

+10
-3
lines changed

1 file changed

+10
-3
lines changed

org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/text/correction/proposals/InitializeFinalFieldProposal.java

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*******************************************************************************
2-
* Copyright (c) 2019, 2023 IBM Corporation and others.
2+
* Copyright (c) 2019, 2025 IBM Corporation and others.
33
*
44
* This program and the accompanying materials
55
* are made available under the terms of the Eclipse Public License 2.0
@@ -11,6 +11,7 @@
1111
* Contributors:
1212
* IBM Corporation - initial API and implementation
1313
* Red Hat Inc - separate core logic from UI images
14+
* Nikifor Fedorov (ArSysOp) - eclipse-jdt/eclipse.jdt.ui#2157 Select proposal description considering type
1415
*******************************************************************************/
1516

1617
package org.eclipse.jdt.internal.ui.text.correction.proposals;
@@ -23,9 +24,10 @@
2324

2425
import org.eclipse.jdt.internal.corext.util.Messages;
2526

27+
import org.eclipse.jdt.ui.text.java.IProblemLocation;
28+
2629
import org.eclipse.jdt.internal.ui.JavaPluginImages;
2730
import org.eclipse.jdt.internal.ui.text.correction.CorrectionMessages;
28-
import org.eclipse.jdt.ui.text.java.IProblemLocation;
2931

3032
public class InitializeFinalFieldProposal extends LinkedCorrectionProposal {
3133
public InitializeFinalFieldProposal(IProblemLocation problem, ICompilationUnit cu, ASTNode astNode, IVariableBinding variableBinding, int relevance) {
@@ -34,11 +36,16 @@ public InitializeFinalFieldProposal(IProblemLocation problem, ICompilationUnit c
3436
}
3537

3638
public InitializeFinalFieldProposal(IProblemLocation problem, ICompilationUnit cu, ASTNode astNode, int relevance, int updateType) {
37-
super(Messages.format(CorrectionMessages.InitializeFieldInConstructorCorrectionProposal_description, problem.getProblemArguments()[0]), cu, null, relevance,
39+
super(Messages.format(
40+
updateType == InitializeFinalFieldProposalCore.UPDATE_CONSTRUCTOR_NEW_PARAMETER
41+
? CorrectionMessages.InitializeFieldWithConstructorParameterCorrectionProposal_description
42+
: CorrectionMessages.InitializeFieldInConstructorCorrectionProposal_description,
43+
problem.getProblemArguments()[0]), cu, null, relevance,
3844
JavaPluginImages.get(JavaPluginImages.IMG_FIELD_PRIVATE), new InitializeFinalFieldProposalCore(problem, cu, astNode, relevance, updateType));
3945
}
4046

4147
public boolean hasProposal() throws CoreException {
4248
return ((InitializeFinalFieldProposalCore) getDelegate()).getRewrite() != null;
4349
}
50+
4451
}

0 commit comments

Comments
 (0)