Skip to content

Commit 66256e6

Browse files
committed
Code cleanup
1 parent f93aff1 commit 66256e6

File tree

8 files changed

+21
-46
lines changed

8 files changed

+21
-46
lines changed

src/main/java/org/jenkinsci/plugins/gogs/GogsCause.java

Lines changed: 4 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -34,8 +34,7 @@ associated documentation files (the "Software"), to deal in the Software without
3434

3535
class GogsCause extends Cause {
3636
private String deliveryID;
37-
private GogsPayloadData gogsPayloadData;
38-
private Map<String, String> envVars = new HashMap<>();
37+
private final Map<String, String> envVars = new HashMap<>();
3938
private final static Logger LOGGER = Logger.getLogger(GogsCause.class.getName());
4039

4140

@@ -46,10 +45,6 @@ public GogsCause(String deliveryID) {
4645
this.deliveryID = deliveryID;
4746
}
4847

49-
public String getDeliveryID() {
50-
return deliveryID;
51-
}
52-
5348
public Map<String, String> getEnvVars() {
5449
return envVars;
5550
}
@@ -66,13 +61,13 @@ public void setGogsPayloadData(String json) {
6661
objectMapper.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false);
6762

6863
try {
69-
gogsPayloadData = objectMapper.readValue(json, GogsPayloadData.class);
64+
GogsPayloadData gogsPayloadData = objectMapper.readValue(json, GogsPayloadData.class);
7065
map = objectMapper.convertValue(gogsPayloadData, new TypeReference<Map<String, Object>>() {
7166
});
7267
} catch (Exception e) {
7368
LOGGER.severe(e.getMessage());
7469
}
75-
if (gogsPayloadData != null) {
70+
if (map != null) {
7671
iterate(map, null);
7772
}
7873

@@ -85,6 +80,7 @@ private void iterate(Map<String, Object> map, String prefix) {
8580
env_name.append(prefix.toUpperCase()).append("_");
8681

8782
if (entry.getValue() instanceof Map) {
83+
//noinspection unchecked
8884
iterate((Map<String, Object>) entry.getValue(), env_name + entry.getKey().toUpperCase());
8985
} else if (entry.getValue() instanceof String || entry.getValue() instanceof Long || entry.getValue() instanceof Boolean) {
9086
env_name.append(entry.getKey().toUpperCase());

src/main/java/org/jenkinsci/plugins/gogs/GogsEnvironmentContributor.java

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,13 +7,12 @@
77
import jenkins.model.CoreEnvironmentContributor;
88

99
import javax.annotation.Nonnull;
10-
import java.io.IOException;
1110

11+
@SuppressWarnings("unused")
1212
@Extension
1313
public class GogsEnvironmentContributor extends CoreEnvironmentContributor {
1414
@Override
15-
public void buildEnvironmentFor(@Nonnull Run r, @Nonnull EnvVars envs, @Nonnull TaskListener listener)
16-
throws IOException, InterruptedException {
15+
public void buildEnvironmentFor(@Nonnull Run r, @Nonnull EnvVars envs, @Nonnull TaskListener listener) {
1716
GogsCause gogsCause;
1817

1918
gogsCause = (GogsCause) r.getCause(GogsCause.class);

src/main/java/org/jenkinsci/plugins/gogs/GogsPayload.java

Lines changed: 2 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -5,32 +5,19 @@
55
import hudson.model.EnvironmentContributingAction;
66
import hudson.model.InvisibleAction;
77

8-
import javax.annotation.Nonnull;
9-
import java.util.Map;
108
import java.util.logging.Level;
119
import java.util.logging.Logger;
1210

1311
class GogsPayload extends InvisibleAction implements EnvironmentContributingAction {
14-
private Map<String, String> payload;
15-
private GogsCause gogsCause;
16-
17-
public GogsPayload(Map<String, String> payload) {
18-
this.payload = payload;
19-
}
12+
private final GogsCause gogsCause;
2013

2114
public GogsPayload(GogsCause gogsCause) {
2215
this.gogsCause = gogsCause;
2316
}
2417

25-
@Nonnull
26-
public Map<String, String> getPayload() {
27-
return payload;
28-
}
29-
3018
@Override
3119
public void buildEnvVars(AbstractBuild<?, ?> abstractBuild, EnvVars envVars) {
32-
LOGGER.log(Level.FINEST, "Injecting GOGS_PAYLOAD: {0}", getPayload());
33-
// payload.forEach((key, value) -> envVars.put("GOGS_" + key.toUpperCase(), value));
20+
LOGGER.log(Level.FINEST, "Injecting GOGS_PAYLOAD: {0}", gogsCause.getEnvVars());
3421
envVars.putAll(gogsCause.getEnvVars());
3522
}
3623

src/main/java/org/jenkinsci/plugins/gogs/GogsPayloadData.java

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,13 +2,16 @@
22

33
import java.util.List;
44

5+
@SuppressWarnings("unused")
56
public class GogsPayloadData {
7+
@SuppressWarnings("unused")
68
public static class UserDetails {
79
public String name;
810
public String email;
911
public String username;
1012
}
1113

14+
@SuppressWarnings("unused")
1215
public static class Owner {
1316
public Long id;
1417
public String login;
@@ -18,6 +21,7 @@ public static class Owner {
1821
public String username;
1922
}
2023

24+
@SuppressWarnings("unused")
2125
public static class Commits {
2226
public String id;
2327
public String message;
@@ -30,6 +34,7 @@ public static class Commits {
3034
public String timestamp;
3135
}
3236

37+
@SuppressWarnings("unused")
3338
public static class Repository {
3439
public Long id;
3540
public Owner owner;

src/main/java/org/jenkinsci/plugins/gogs/GogsPayloadProcessor.java

Lines changed: 2 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -25,14 +25,11 @@ associated documentation files (the "Software"), to deal in the Software without
2525

2626
import hudson.model.BuildableItem;
2727
import hudson.security.ACL;
28+
import hudson.security.ACLContext;
2829
import jenkins.triggers.SCMTriggerItem;
29-
import org.acegisecurity.context.SecurityContext;
30-
import org.acegisecurity.context.SecurityContextHolder;
3130

3231
import java.io.PrintWriter;
3332
import java.io.StringWriter;
34-
import java.util.HashMap;
35-
import java.util.Map;
3633
import java.util.Optional;
3734
import java.util.concurrent.atomic.AtomicBoolean;
3835
import java.util.logging.Logger;
@@ -41,7 +38,6 @@ associated documentation files (the "Software"), to deal in the Software without
4138

4239
class GogsPayloadProcessor {
4340
private static final Logger LOGGER = Logger.getLogger(GogsPayloadProcessor.class.getName());
44-
private final Map<String, String> payload = new HashMap<>();
4541
private GogsCause gogsCause = new GogsCause();
4642

4743
GogsPayloadProcessor() {
@@ -53,10 +49,9 @@ public void setCause(GogsCause gogsCause) {
5349

5450
public GogsResults triggerJobs(String jobName) {
5551
AtomicBoolean jobdone = new AtomicBoolean(false);
56-
SecurityContext saveCtx = ACL.impersonate(ACL.SYSTEM);
5752
GogsResults result = new GogsResults();
5853

59-
try {
54+
try (ACLContext ctx = ACL.as(ACL.SYSTEM)) {
6055
BuildableItem project = GogsUtils.find(jobName, BuildableItem.class);
6156
if (project != null) {
6257

@@ -92,7 +87,6 @@ public GogsResults triggerJobs(String jobName) {
9287
result.setStatus(404, msg);
9388
LOGGER.warning(msg);
9489
}
95-
SecurityContextHolder.setContext(saveCtx);
9690
}
9791

9892
return result;

src/main/java/org/jenkinsci/plugins/gogs/GogsUtils.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ private GogsUtils() {
2424
* @return the Job matching the given name, or {@code null} when not found
2525
*/
2626
static <T extends Item> T find(String jobName, Class<T> type) {
27-
Jenkins jenkins = Jenkins.getActiveInstance();
27+
Jenkins jenkins = Jenkins.getInstance();
2828
// direct search, can be used to find folder based items <folder>/<folder>/<jobName>
2929
T item = jenkins.getItemByFullName(jobName, type);
3030
if (item == null) {

src/main/java/org/jenkinsci/plugins/gogs/GogsWebHook.java

Lines changed: 3 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -27,9 +27,8 @@ associated documentation files (the "Software"), to deal in the Software without
2727
import hudson.model.Job;
2828
import hudson.model.UnprotectedRootAction;
2929
import hudson.security.ACL;
30+
import hudson.security.ACLContext;
3031
import net.sf.json.JSONObject;
31-
import org.acegisecurity.context.SecurityContext;
32-
import org.acegisecurity.context.SecurityContextHolder;
3332
import org.apache.commons.io.IOUtils;
3433
import org.kohsuke.stapler.StaplerRequest;
3534
import org.kohsuke.stapler.StaplerResponse;
@@ -145,9 +144,7 @@ public void doIndex(StaplerRequest req, StaplerResponse rsp) throws IOException
145144
gogsCause.setDeliveryID(getGogsDelivery());
146145
payloadProcessor.setCause(gogsCause);
147146

148-
SecurityContext saveCtx = ACL.impersonate(ACL.SYSTEM);
149-
150-
try {
147+
try (ACLContext ctx = ACL.as(ACL.SYSTEM)) {
151148
StringJoiner stringJoiner = new StringJoiner("%2F");
152149
Pattern.compile("/").splitAsStream((String) jsonObject.get("ref")).skip(2)
153150
.forEach(stringJoiner::add);
@@ -161,8 +158,6 @@ public void doIndex(StaplerRequest req, StaplerResponse rsp) throws IOException
161158
jSecret.set(property.getGogsSecret()); /* Secret provided by Jenkins */
162159
}
163160
});
164-
} finally {
165-
SecurityContextHolder.setContext(saveCtx);
166161
}
167162

168163
String gSecret = null;
@@ -205,7 +200,7 @@ public void doIndex(StaplerRequest req, StaplerResponse rsp) throws IOException
205200
*
206201
* @param req Request
207202
* @param rsp Response
208-
* @throws IOException
203+
* @throws IOException Exception
209204
*/
210205
private boolean sanityChecks(StaplerRequest req, StaplerResponse rsp) throws IOException {
211206
//Check that we have something to process

src/test/java/org/jenkinsci/plugins/gogs/GogsConfigHandler.java

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -104,10 +104,9 @@ int createWebHook(String jsonCommand, String projectName) throws IOException {
104104
String result = executor
105105
.execute(Request.Post(gogsHooksConfigUrl).bodyString(jsonCommand, ContentType.APPLICATION_JSON))
106106
.returnContent().asString();
107-
JSONObject jsonObject = (JSONObject) JSONSerializer.toJSON( result );
108-
int id = jsonObject.getInt("id");
107+
JSONObject jsonObject = (JSONObject) JSONSerializer.toJSON(result);
109108

110-
return id;
109+
return jsonObject.getInt("id");
111110
}
112111

113112
/**

0 commit comments

Comments
 (0)