(no message)

This commit is contained in:
Dave Griffith
2005-03-15 17:54:38 +03:00
parent d9323d7c15
commit d53d368a93
2 changed files with 13 additions and 2 deletions
@@ -4,6 +4,7 @@ import com.intellij.openapi.editor.Editor;
import com.intellij.openapi.project.Project;
import com.intellij.psi.*;
import com.intellij.util.IncorrectOperationException;
import com.intellij.pom.java.LanguageLevel;
import com.siyeh.ipp.base.Intention;
import com.siyeh.ipp.base.PsiElementPredicate;
import com.siyeh.ipp.psiutils.ParenthesesUtils;
@@ -48,7 +49,16 @@ public class ReplaceConcatenationWithStringBufferIntention extends Intention{
final String newExpression = expString.toString();
replaceExpression(project, newExpression, methodCallExpression);
} else{
expString.append("new StringBuffer()");
final PsiManager manager = exp.getManager();
final LanguageLevel languageLevel =
manager.getEffectiveLanguageLevel();
if(languageLevel.equals(LanguageLevel.JDK_1_3) ||
languageLevel.equals(LanguageLevel.JDK_1_4))
{
expString.append("new StringBuffer()");
}else{
expString.append("new StringBuilder()");
}
turnExpressionIntoChainedAppends(exp, expString);
expString.append(".toString()");
final String newExpression = expString.toString();
@@ -1,6 +1,7 @@
<html>
<body>
<font face="verdana" size="-1">This intention replaces <b>String</b> <b>+</b> concatenation operator with <b>StringBuffer.append()</b>.<br>
<font face="verdana" size="-1">This intention replaces <b>String</b> <b>+</b> concatenation operator with <b>StringBuffer.append()</b>.
For projects using J2SDK5.0, <b>StringBuilder.append()</b> will be used instead<br>
</font>
<br><br>