Skip to content

Commit 47d8e46

Browse files
authored
Use Java 17 language features (#1681)
* Use Java 17 language features instanceof pattern matching Formatted strings * Remove OpenRewrite config from pom * Use formatted strings more widely No need to concatenate a string then use a formatted string for the rest
1 parent eecf8fc commit 47d8e46

File tree

68 files changed

+263
-183
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

68 files changed

+263
-183
lines changed

src/main/java/hudson/plugins/git/BranchSpec.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66
import hudson.model.Descriptor;
77
import org.kohsuke.stapler.DataBoundConstructor;
88

9+
import java.io.Serial;
910
import java.io.Serializable;
1011
import java.util.ArrayList;
1112
import java.util.Collection;
@@ -32,6 +33,7 @@
3233
*/
3334
@ExportedBean
3435
public class BranchSpec extends AbstractDescribableImpl<BranchSpec> implements Serializable {
36+
@Serial
3537
private static final long serialVersionUID = -6177158367915899356L;
3638

3739
private String name;

src/main/java/hudson/plugins/git/GitBranchSpecifierColumn.java

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -26,8 +26,7 @@ public List<String> getBranchSpecifier( final Item item ) {
2626
SCMTriggerItem s = SCMTriggerItem.SCMTriggerItems.asSCMTriggerItem(item);
2727
if(s != null) {
2828
for(SCM scm : s.getSCMs()) {
29-
if (scm instanceof GitSCM) {
30-
GitSCM gitScm = (GitSCM)scm;
29+
if (scm instanceof GitSCM gitScm) {
3130
for(BranchSpec spec : gitScm.getBranches()) {
3231
branchSpec.add(spec.getName());
3332
}

src/main/java/hudson/plugins/git/GitPublisher.java

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,11 +30,13 @@
3030

3131
import jakarta.servlet.ServletException;
3232
import java.io.IOException;
33+
import java.io.Serial;
3334
import java.io.Serializable;
3435
import java.util.ArrayList;
3536
import java.util.List;
3637

3738
public class GitPublisher extends Recorder implements Serializable {
39+
@Serial
3840
private static final long serialVersionUID = 1L;
3941

4042
/**
@@ -482,6 +484,7 @@ private FormValidation checkFieldNotEmpty(String value, String field) {
482484
}
483485

484486
public static abstract class PushConfig extends AbstractDescribableImpl<PushConfig> implements Serializable {
487+
@Serial
485488
private static final long serialVersionUID = 1L;
486489

487490
private String targetRepoName;

src/main/java/hudson/plugins/git/GitRevisionBuildParameters.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -55,9 +55,9 @@ public GitRevisionBuildParameters() {
5555
public Action getAction(AbstractBuild<?,?> build, TaskListener listener) {
5656
BuildData data = build.getAction(BuildData.class);
5757
if (data == null && Jenkins.get().getPlugin("promoted-builds") != null) {
58-
if (build instanceof hudson.plugins.promoted_builds.Promotion) {
58+
if (build instanceof hudson.plugins.promoted_builds.Promotion promotion) {
5959
// We are running as a build promotion, so have to retrieve the git scm from target job
60-
AbstractBuild<?,?> targetBuild = ((hudson.plugins.promoted_builds.Promotion) build).getTargetBuild();
60+
AbstractBuild<?,?> targetBuild = promotion.getTargetBuild();
6161
if (targetBuild != null) {
6262
data = targetBuild.getAction(BuildData.class);
6363
}

src/main/java/hudson/plugins/git/GitSCM.java

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -75,12 +75,13 @@
7575
import java.io.IOException;
7676
import java.io.OutputStreamWriter;
7777
import java.io.PrintStream;
78+
import java.io.Serial;
7879
import java.io.Serializable;
7980
import java.io.Writer;
8081
import java.nio.charset.StandardCharsets;
8182
import java.nio.file.Files;
8283
import java.nio.file.InvalidPathException;
83-
import java.nio.file.Paths;
84+
import java.nio.file.Path;
8485
import java.text.MessageFormat;
8586
import java.util.AbstractList;
8687
import java.util.ArrayList;
@@ -710,13 +711,13 @@ private PollingResult compareRemoteRevisionWithImpl(Job<?, ?> project, Launcher
710711
listener.getLogger().println("[poll] Last Built Revision: " + buildData.lastBuild.revision);
711712
}
712713

713-
final EnvVars pollEnv = project instanceof AbstractProject ? GitUtils.getPollEnvironment((AbstractProject) project, workspace, launcher, listener, false) : lastBuild.getEnvironment(listener);
714+
final EnvVars pollEnv = project instanceof AbstractProject<?,?> ap ? GitUtils.getPollEnvironment(ap, workspace, launcher, listener, false) : lastBuild.getEnvironment(listener);
714715

715716
final String singleBranch = getSingleBranch(pollEnv);
716717

717718
if (!requiresWorkspaceForPolling(pollEnv)) {
718719

719-
final EnvVars environment = project instanceof AbstractProject ? GitUtils.getPollEnvironment((AbstractProject) project, workspace, launcher, listener, false) : new EnvVars();
720+
final EnvVars environment = project instanceof AbstractProject<?,?> ap ? GitUtils.getPollEnvironment(ap, workspace, launcher, listener, false) : new EnvVars();
720721

721722
GitClient git = createClient(listener, environment, lastBuild, Jenkins.get(), null);
722723

@@ -784,7 +785,7 @@ private PollingResult compareRemoteRevisionWithImpl(Job<?, ?> project, Launcher
784785
}
785786

786787
final Node node = GitUtils.workspaceToNode(workspace);
787-
final EnvVars environment = project instanceof AbstractProject ? GitUtils.getPollEnvironment((AbstractProject) project, workspace, launcher, listener) : project.getEnvironment(node, listener);
788+
final EnvVars environment = project instanceof AbstractProject<?,?> ap ? GitUtils.getPollEnvironment(ap, workspace, launcher, listener) : project.getEnvironment(node, listener);
788789

789790
FilePath workingDirectory = workingDirectory(project,workspace,environment,listener);
790791

@@ -1175,8 +1176,7 @@ public EnvVars getEnvironment() {
11751176
log.println("Multiple candidate revisions");
11761177
if (checkForMultipleRevisions) {
11771178
Job<?, ?> job = build.getParent();
1178-
if (job instanceof AbstractProject) {
1179-
AbstractProject project = (AbstractProject) job;
1179+
if (job instanceof AbstractProject<?,?> project) {
11801180
if (!project.isDisabled()) {
11811181
log.println("Scheduling another build to catch up with " + project.getFullDisplayName());
11821182
if (!project.scheduleBuild(0, new SCMTrigger.SCMTriggerCause("This build was triggered by build "
@@ -1416,7 +1416,7 @@ private static boolean isRemoteUrlValid(String remoteUrl) {
14161416
}
14171417
try {
14181418
// Check for local remotes with no protocol like /path/to/repo.git/
1419-
return !Files.exists(Paths.get(remoteUrl));
1419+
return !Files.exists(Path.of(remoteUrl));
14201420
} catch (InvalidPathException e) {
14211421
return true;
14221422
}
@@ -1937,6 +1937,7 @@ public void populateEnvironmentVariables(Map<String,String> env) {
19371937
// }
19381938
}
19391939

1940+
@Serial
19401941
private static final long serialVersionUID = 1L;
19411942

19421943
@Whitelisted

src/main/java/hudson/plugins/git/GitSCMBackwardCompatibility.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@
1313
import hudson.util.DescribableList;
1414

1515
import java.io.IOException;
16+
import java.io.Serial;
1617
import java.io.Serializable;
1718
import java.util.Set;
1819

@@ -486,5 +487,6 @@ public String getLocalBranch() {
486487
}
487488

488489

490+
@Serial
489491
private static final long serialVersionUID = 1L;
490492
}

src/main/java/hudson/plugins/git/GitStatus.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -430,9 +430,9 @@ public List<ResponseContributor> onNotifyCommit(String origin, URIish uri, Strin
430430
}
431431
if (!branchFound) continue;
432432
urlFound = true;
433-
if (!(project instanceof ParameterizedJobMixIn.ParameterizedJob && ((ParameterizedJobMixIn.ParameterizedJob) project).isDisabled())) {
433+
if (!(project instanceof ParameterizedJobMixIn.ParameterizedJob<?,?> job && job.isDisabled())) {
434434
//JENKINS-30178 Add default parameters defined in the job
435-
if (project instanceof Job) {
435+
if (project instanceof Job<?,?> job) {
436436
Set<String> buildParametersNames = new HashSet<>();
437437
if (allowNotifyCommitParameters || !safeParameters.isEmpty()) {
438438
for (ParameterValue parameterValue: allBuildParameters) {
@@ -442,7 +442,7 @@ public List<ResponseContributor> onNotifyCommit(String origin, URIish uri, Strin
442442
}
443443
}
444444

445-
List<ParameterValue> jobParametersValues = getDefaultParametersValues((Job) project);
445+
List<ParameterValue> jobParametersValues = getDefaultParametersValues(job);
446446
for (ParameterValue defaultParameterValue : jobParametersValues) {
447447
if (!buildParametersNames.contains(defaultParameterValue.getName())) {
448448
allBuildParameters.add(defaultParameterValue);

src/main/java/hudson/plugins/git/RevisionParameterAction.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,7 @@
3535
import org.eclipse.jgit.transport.URIish;
3636
import org.jenkinsci.plugins.gitclient.GitClient;
3737

38+
import java.io.Serial;
3839
import java.io.Serializable;
3940
import java.util.ArrayList;
4041
import java.util.List;
@@ -200,6 +201,7 @@ public void foldIntoExisting(Queue.Item item, Queue.Task owner, List<Action> oth
200201
}
201202
}
202203

204+
@Serial
203205
private static final long serialVersionUID = 2L;
204206
private static final Logger LOGGER = Logger.getLogger(RevisionParameterAction.class.getName());
205207
}

src/main/java/hudson/plugins/git/SubmoduleConfig.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
import org.jenkinsci.plugins.scriptsecurity.sandbox.whitelists.Whitelisted;
44
import org.kohsuke.stapler.DataBoundConstructor;
55

6-
6+
import java.io.Serial;
77
import java.util.Collection;
88
import java.util.Collections;
99

@@ -16,6 +16,7 @@
1616
*/
1717
@Deprecated
1818
public class SubmoduleConfig implements java.io.Serializable {
19+
@Serial
1920
private static final long serialVersionUID = 1L;
2021
private static final String[] EMPTY_ARRAY = new String[0];
2122
String submoduleName = null;

src/main/java/hudson/plugins/git/UserMergeOptions.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -168,8 +168,8 @@ public String getDisplayName() {
168168
public Map<String, Object> customInstantiate(Map<String, Object> arguments) {
169169
Map<String, Object> r = new HashMap<>(arguments);
170170
Object mergeStrategy = r.get("mergeStrategy");
171-
if (mergeStrategy instanceof String) {
172-
r.put("mergeStrategy", ((String) mergeStrategy).toUpperCase(Locale.ROOT));
171+
if (mergeStrategy instanceof String string) {
172+
r.put("mergeStrategy", string.toUpperCase(Locale.ROOT));
173173
}
174174
return r;
175175
}

0 commit comments

Comments
 (0)