Skip to content

Commit 18f0eb8

Browse files
author
Vincent Potucek
committed
Can be replaced with String.repeat()
1 parent f3d5c5d commit 18f0eb8

File tree

5 files changed

+16
-30
lines changed

5 files changed

+16
-30
lines changed

lib/src/main/java/com/diffplug/spotless/generic/EndWithNewlineStep.java

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*
2-
* Copyright 2016 DiffPlug
2+
* Copyright 2016-2025 DiffPlug
33
*
44
* Licensed under the Apache License, Version 2.0 (the "License");
55
* you may not use this file except in compliance with the License.
@@ -52,10 +52,7 @@ private static String format(String rawUnix) {
5252
} else if (lastContentCharacter == rawUnix.length() - 2 && rawUnix.charAt(rawUnix.length() - 1) == '\n') {
5353
return rawUnix;
5454
} else {
55-
StringBuilder builder = new StringBuilder(lastContentCharacter + 2);
56-
builder.append(rawUnix, 0, lastContentCharacter + 1);
57-
builder.append('\n');
58-
return builder.toString();
55+
return rawUnix.substring(0, lastContentCharacter + 1) + '\n';
5956
}
6057
}
6158
}

lib/src/main/java/com/diffplug/spotless/generic/IndentStep.java

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -104,14 +104,10 @@ String format(String raw) {
104104
if (numSpaces > 0) {
105105
switch (state.type) {
106106
case SPACE:
107-
for (int i = 0; i < numSpaces; i++) {
108-
builder.append(' ');
109-
}
107+
builder.append(" ".repeat(numSpaces));
110108
break;
111109
case TAB:
112-
for (int i = 0; i < numSpaces / state.numSpacesPerTab; i++) {
113-
builder.append('\t');
114-
}
110+
builder.append("\t".repeat(numSpaces / state.numSpacesPerTab));
115111
if (mightBeMultiLineComment && (numSpaces % state.numSpacesPerTab == 1)) {
116112
builder.append(' ');
117113
}

lib/src/main/java/com/diffplug/spotless/sql/dbeaver/DBeaverSQLFormatterConfiguration.java

Lines changed: 6 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,8 @@
1515
*/
1616
package com.diffplug.spotless.sql.dbeaver;
1717

18+
import static java.lang.Integer.parseInt;
19+
1820
import java.util.Properties;
1921

2022
import com.diffplug.spotless.annotations.Internal;
@@ -59,18 +61,13 @@ public DBeaverSQLFormatterConfiguration(Properties properties) {
5961
this.keywordCase = KeywordCase.valueOf(properties.getProperty(SQL_FORMATTER_KEYWORD_CASE, "UPPER"));
6062
this.statementDelimiters = properties.getProperty(SQL_FORMATTER_STATEMENT_DELIMITER, SQLDialect.INSTANCE
6163
.getScriptDelimiter());
62-
String indentType = properties.getProperty(SQL_FORMATTER_INDENT_TYPE, "space");
63-
int indentSize = Integer.parseInt(properties.getProperty(SQL_FORMATTER_INDENT_SIZE, "4"));
64-
indentString = getIndentString(indentType, indentSize);
64+
indentString = getIndentString(
65+
properties.getProperty(SQL_FORMATTER_INDENT_TYPE, "space"),
66+
parseInt(properties.getProperty(SQL_FORMATTER_INDENT_SIZE, "4")));
6567
}
6668

6769
private String getIndentString(String indentType, int indentSize) {
68-
char indentChar = "space".equals(indentType) ? ' ' : '\t';
69-
StringBuilder stringBuilder = new StringBuilder();
70-
for (int i = 0; i < indentSize; i++) {
71-
stringBuilder.append(indentChar);
72-
}
73-
return stringBuilder.toString();
70+
return String.valueOf("space".equals(indentType) ? ' ' : '\t').repeat(indentSize);
7471
}
7572

7673
String getStatementDelimiter() {

lib/src/main/java/com/diffplug/spotless/sql/dbeaver/FormatterToken.java

Lines changed: 5 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -65,12 +65,10 @@ public int getPos() {
6565

6666
@Override
6767
public String toString() {
68-
final StringBuilder buf = new StringBuilder();
69-
buf.append(getClass().getName());
70-
buf.append("type=").append(fType);
71-
buf.append(",string=").append(fString);
72-
buf.append(",pos=").append(fPos);
73-
buf.append("]");
74-
return buf.toString();
68+
return getClass().getName() +
69+
"type=" + fType +
70+
",string=" + fString +
71+
",pos=" + fPos +
72+
"]";
7573
}
7674
}

lib/src/main/java/com/diffplug/spotless/sql/dbeaver/SQLTokenizedFormatter.java

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -399,9 +399,7 @@ private int insertReturnAndIndent(final List<FormatterToken> argList, final int
399399
try {
400400
final String defaultLineSeparator = getDefaultLineSeparator();
401401
StringBuilder s = new StringBuilder(defaultLineSeparator);
402-
for (int index = 0; index < argIndent; index++) {
403-
s.append(formatterCfg.getIndentString());
404-
}
402+
s.append(formatterCfg.getIndentString().repeat(argIndent));
405403
if (argIndex > 0) {
406404
final FormatterToken token = argList.get(argIndex);
407405
final FormatterToken prevToken = argList.get(argIndex - 1);

0 commit comments

Comments
 (0)