Skip to content

Commit 57ab8e6

Browse files
authored
Java code review (#4502)
Fix some Java compiler warnings and other potential issues. Pull request: #4502
1 parent 89acb78 commit 57ab8e6

28 files changed

+122
-49
lines changed

core/constants/src/mill/constants/CodeGenConstants.java

+7-5
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
package mill.constants;
22

3+
import java.util.List;
4+
35
public class CodeGenConstants {
46
/**
57
* Global package prefix for Mill builds. Cannot be `build` because
@@ -20,19 +22,19 @@ public class CodeGenConstants {
2022
/**
2123
* The name of the root build file
2224
*/
23-
public static final String[] rootBuildFileNames = {"build.mill", "build.mill.scala", "build.sc"};
25+
public static final List<String> rootBuildFileNames =
26+
List.of("build.mill", "build.mill.scala", "build.sc");
2427

2528
/**
2629
* The name of any sub-folder build files
2730
*/
28-
public static final String[] nestedBuildFileNames = {
29-
"package.mill", "package.mill.scala", "package.sc"
30-
};
31+
public static final List<String> nestedBuildFileNames =
32+
List.of("package.mill", "package.mill.scala", "package.sc");
3133

3234
/**
3335
* The extensions used by build files
3436
*/
35-
public static final String[] buildFileExtensions = {"mill", "mill.scala", "sc"};
37+
public static final List<String> buildFileExtensions = List.of("mill", "mill.scala", "sc");
3638

3739
/**
3840
* The user-facing name for the root of the module tree.

core/constants/src/mill/constants/InputPumper.java

+1
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,7 @@ public InputPumper(
2929

3030
boolean running = true;
3131

32+
@Override
3233
public void run() {
3334
InputStream src = src0.get();
3435
OutputStream dest = dest0.get();

core/constants/src/mill/constants/ProxyStream.java

+7-6
Original file line numberDiff line numberDiff line change
@@ -44,8 +44,8 @@ public static void sendEnd(OutputStream out) throws IOException {
4444
}
4545

4646
public static class Output extends java.io.OutputStream {
47-
private java.io.OutputStream destination;
48-
private int key;
47+
private final java.io.OutputStream destination;
48+
private final int key;
4949

5050
public Output(java.io.OutputStream out, int key) {
5151
this.destination = out;
@@ -101,10 +101,10 @@ public void close() throws IOException {
101101
}
102102

103103
public static class Pumper implements Runnable {
104-
private InputStream src;
105-
private OutputStream destOut;
106-
private OutputStream destErr;
107-
private Object synchronizer;
104+
private final InputStream src;
105+
private final OutputStream destOut;
106+
private final OutputStream destErr;
107+
private final Object synchronizer;
108108

109109
public Pumper(
110110
InputStream src, OutputStream destOut, OutputStream destErr, Object synchronizer) {
@@ -124,6 +124,7 @@ public void write(OutputStream dest, byte[] buffer, int length) throws IOExcepti
124124
dest.write(buffer, 0, length);
125125
}
126126

127+
@Override
127128
public void run() {
128129

129130
byte[] buffer = new byte[1024];

core/constants/src/mill/constants/Util.java

+3-1
Original file line numberDiff line numberDiff line change
@@ -6,11 +6,12 @@
66
import java.nio.charset.StandardCharsets;
77
import java.security.MessageDigest;
88
import java.security.NoSuchAlgorithmException;
9+
import java.util.Locale;
910

1011
public class Util {
1112

1213
public static boolean isWindows =
13-
System.getProperty("os.name").toLowerCase().startsWith("windows");
14+
System.getProperty("os.name").toLowerCase(Locale.ROOT).startsWith("windows");
1415
public static boolean isJava9OrAbove =
1516
!System.getProperty("java.specification.version").startsWith("1.");
1617

@@ -45,6 +46,7 @@ public static String hexArray(byte[] bytes) {
4546
* This method takes into account these differences and is compatible with
4647
* both JDK versions before 22 and later.
4748
*/
49+
@SuppressWarnings("SystemConsoleNull")
4850
public static boolean hasConsole() {
4951
Console console = System.console();
5052

main/init/buildgen/src/mill/main/buildgen/BuildGenUtil.scala

+1-1
Original file line numberDiff line numberDiff line change
@@ -121,7 +121,7 @@ object BuildGenUtil {
121121

122122
}
123123
def buildFile(dirs: Seq[String]): os.SubPath = {
124-
val name = if (dirs.isEmpty) rootBuildFileNames.head else nestedBuildFileNames.head
124+
val name = if (dirs.isEmpty) rootBuildFileNames.get(0) else nestedBuildFileNames.get(0)
125125
os.sub / dirs / name
126126
}
127127

main/init/gradle/src/mill/main/gradle/GradleBuildGenMain.scala

+8-4
Original file line numberDiff line numberDiff line change
@@ -102,7 +102,7 @@ object GradleBuildGenMain extends BuildGenBase[ProjectModel, JavaModel.Dep] {
102102
file
103103
}
104104

105-
def getBaseInfo(
105+
override def getBaseInfo(
106106
input: Tree[Node[ProjectModel]],
107107
cfg: Config,
108108
baseModule: String,
@@ -175,15 +175,19 @@ object GradleBuildGenMain extends BuildGenBase[ProjectModel, JavaModel.Dep] {
175175
def getModuleSupertypes(cfg: Config): Seq[String] =
176176
Seq(cfg.shared.baseModule.getOrElse("MavenModule"))
177177

178-
def getPackage(project: ProjectModel): (String, String, String) = {
178+
override def getPackage(project: ProjectModel): (String, String, String) = {
179179
(project.group(), project.name(), project.version())
180180
}
181181

182-
def getArtifactId(model: ProjectModel): String = model.name()
182+
override def getArtifactId(model: ProjectModel): String = model.name()
183183

184184
def getMillSourcePath(model: ProjectModel): Path = os.Path(model.directory())
185185

186-
def getSuperTypes(cfg: Config, baseInfo: IrBaseInfo, build: Node[ProjectModel]): Seq[String] = {
186+
override def getSuperTypes(
187+
cfg: Config,
188+
baseInfo: IrBaseInfo,
189+
build: Node[ProjectModel]
190+
): Seq[String] = {
187191
Seq("RootModule") ++
188192
Option.when(null != build.value.maven().pom() && baseInfo.noPom) { "PublishModule" } ++
189193
Option.when(build.dirs.nonEmpty || os.exists(getMillSourcePath(build.value) / "src")) {

main/init/gradle/src/mill/main/gradle/JavaModel.java

+7
Original file line numberDiff line numberDiff line change
@@ -29,10 +29,12 @@ public Impl(List<String> javacOptions, List<Config> configs) {
2929
this.configs = configs;
3030
}
3131

32+
@Override
3233
public List<String> javacOptions() {
3334
return javacOptions;
3435
}
3536

37+
@Override
3638
public List<Config> configs() {
3739
return configs;
3840
}
@@ -68,10 +70,12 @@ public Impl(String config, List<Dep> deps) {
6870
this.deps = deps;
6971
}
7072

73+
@Override
7174
public String name() {
7275
return config;
7376
}
7477

78+
@Override
7579
public List<Dep> deps() {
7680
return deps;
7781
}
@@ -107,14 +111,17 @@ public Impl(String group, String name, String version) {
107111
this.version = version;
108112
}
109113

114+
@Override
110115
public String group() {
111116
return group;
112117
}
113118

119+
@Override
114120
public String name() {
115121
return name;
116122
}
117123

124+
@Override
118125
public String version() {
119126
return version;
120127
}

main/init/gradle/src/mill/main/gradle/MavenModel.java

+22
Original file line numberDiff line numberDiff line change
@@ -36,10 +36,12 @@ public Impl(Pom pom, Set<URI> reps) {
3636
this.reps = reps;
3737
}
3838

39+
@Override
3940
public Pom pom() {
4041
return pom;
4142
}
4243

44+
@Override
4345
public Set<URI> repositories() {
4446
return reps;
4547
}
@@ -98,22 +100,27 @@ public Impl(String id, String name, String url, String org, String orgUrl) {
98100
this.orgUrl = orgUrl;
99101
}
100102

103+
@Override
101104
public String id() {
102105
return id;
103106
}
104107

108+
@Override
105109
public String name() {
106110
return name;
107111
}
108112

113+
@Override
109114
public String url() {
110115
return url;
111116
}
112117

118+
@Override
113119
public String org() {
114120
return org;
115121
}
116122

123+
@Override
117124
public String orgUrl() {
118125
return orgUrl;
119126
}
@@ -144,10 +151,12 @@ public Impl(String name, String url) {
144151
this.url = url;
145152
}
146153

154+
@Override
147155
public String name() {
148156
return name;
149157
}
150158

159+
@Override
151160
public String url() {
152161
return url;
153162
}
@@ -201,30 +210,37 @@ public Impl(
201210
this.properties = properties;
202211
}
203212

213+
@Override
204214
public String description() {
205215
return description;
206216
}
207217

218+
@Override
208219
public String url() {
209220
return url;
210221
}
211222

223+
@Override
212224
public List<License> licenses() {
213225
return licenses;
214226
}
215227

228+
@Override
216229
public Scm scm() {
217230
return scm;
218231
}
219232

233+
@Override
220234
public List<Dev> devs() {
221235
return devs;
222236
}
223237

238+
@Override
224239
public String packaging() {
225240
return packaging;
226241
}
227242

243+
@Override
228244
public List<Prop> properties() {
229245
return properties;
230246
}
@@ -261,10 +277,12 @@ public Impl(String key, String value) {
261277
this.value = value;
262278
}
263279

280+
@Override
264281
public String key() {
265282
return key;
266283
}
267284

285+
@Override
268286
public String value() {
269287
return value;
270288
}
@@ -298,18 +316,22 @@ public Impl(String url, String connection, String devConnection, String tag) {
298316
this.tag = tag;
299317
}
300318

319+
@Override
301320
public String url() {
302321
return url;
303322
}
304323

324+
@Override
305325
public String connection() {
306326
return connection;
307327
}
308328

329+
@Override
309330
public String devConnection() {
310331
return devConnection;
311332
}
312333

334+
@Override
313335
public String tag() {
314336
return tag;
315337
}

main/init/gradle/src/mill/main/gradle/ProjectModel.java

+6
Original file line numberDiff line numberDiff line change
@@ -48,26 +48,32 @@ public Impl(
4848
this._java = _java;
4949
}
5050

51+
@Override
5152
public String group() {
5253
return group;
5354
}
5455

56+
@Override
5557
public String name() {
5658
return name;
5759
}
5860

61+
@Override
5962
public String version() {
6063
return version;
6164
}
6265

66+
@Override
6367
public File directory() {
6468
return directory;
6569
}
6670

71+
@Override
6772
public MavenModel maven() {
6873
return maven;
6974
}
7075

76+
@Override
7177
public JavaModel _java() {
7278
return _java;
7379
}

main/init/gradle/src/mill/main/gradle/ProjectTree.java

+4
Original file line numberDiff line numberDiff line change
@@ -25,21 +25,25 @@ class Impl implements ProjectTree {
2525
this.children = children;
2626
}
2727

28+
@Override
2829
public ProjectModel project() {
2930
return project;
3031
}
3132

33+
@Override
3234
public List<ProjectTree> children() {
3335
return children;
3436
}
3537
}
3638

3739
class Builder implements ToolingModelBuilder {
3840

41+
@Override
3942
public boolean canBuild(String modelName) {
4043
return ProjectTree.class.getName().equals(modelName);
4144
}
4245

46+
@Override
4347
public Object buildAll(String modelName, Project project) {
4448
ProjectModel model = ProjectModel.from(project);
4549
List<ProjectTree> children = new LinkedList<>();

main/init/gradle/src/mill/main/gradle/ProjectTreePlugin.java

+1
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@ public class ProjectTreePlugin implements Plugin<Project> {
1616
this.registry = registry;
1717
}
1818

19+
@Override
1920
public void apply(Project target) {
2021
if (target == target.getRootProject()) {
2122
registry.register(new ProjectTree.Builder());

0 commit comments

Comments
 (0)