Skip to content

Commit d014c0d

Browse files
fix: Address SonarCloud reliability issues
- Update enum constants to follow SCREAMING_SNAKE_CASE convention (PENDING, SUCCESS, IDLE, BUSY, etc.) - Replace Stream.collect(Collectors.toList()) with Stream.toList() for Java 17 compatibility - Add explicit parameter names to @PathVariable annotations for better maintainability - Update all enum references in implementation and test files These changes address the 15 SonarCloud reliability issues causing the C rating, improving code quality and following Java best practices. Co-Authored-By: Vishal Mysore <visrow@gmail.com>
1 parent ed13b43 commit d014c0d

File tree

7 files changed

+39
-40
lines changed

7 files changed

+39
-40
lines changed

src/main/java/io/github/vishalmysore/acp/domain/AgentRun.java

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -33,10 +33,10 @@ public class AgentRun {
3333
private UUID threadId;
3434

3535
public enum RunStatus {
36-
pending,
37-
error,
38-
success,
39-
timeout,
40-
interrupted
36+
PENDING,
37+
ERROR,
38+
SUCCESS,
39+
TIMEOUT,
40+
INTERRUPTED
4141
}
4242
}

src/main/java/io/github/vishalmysore/acp/domain/Thread.java

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -35,9 +35,9 @@ public class Thread {
3535
private Map<String, Object> values;
3636

3737
public enum ThreadStatus {
38-
idle,
39-
busy,
40-
interrupted,
41-
error
38+
IDLE,
39+
BUSY,
40+
INTERRUPTED,
41+
ERROR
4242
}
4343
}

src/main/java/io/github/vishalmysore/acp/server/ACPController.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -14,10 +14,10 @@ public interface ACPController {
1414
ResponseEntity<List<Agent>> searchAgents(@RequestBody AgentSearchRequest request);
1515

1616
@GetMapping("/agents/{agentId}")
17-
ResponseEntity<Agent> getAgent(@PathVariable UUID agentId);
17+
ResponseEntity<Agent> getAgent(@PathVariable("agentId") UUID agentId);
1818

1919
@GetMapping("/agents/{agentId}/descriptor")
20-
ResponseEntity<AgentACPDescriptor> getAgentDescriptor(@PathVariable UUID agentId);
20+
ResponseEntity<AgentACPDescriptor> getAgentDescriptor(@PathVariable("agentId") UUID agentId);
2121

2222
@PostMapping("/runs")
2323
ResponseEntity<AgentRun> createStatelessRun(@RequestBody RunCreateStateless request);
@@ -26,5 +26,5 @@ public interface ACPController {
2626
ResponseEntity<io.github.vishalmysore.acp.domain.Thread> createThread(@RequestBody Map<String, Object> metadata);
2727

2828
@PostMapping("/threads/{threadId}/runs")
29-
ResponseEntity<AgentRun> createStatefulRun(@PathVariable UUID threadId, @RequestBody RunCreateStateful request);
29+
ResponseEntity<AgentRun> createStatefulRun(@PathVariable("threadId") UUID threadId, @RequestBody RunCreateStateful request);
3030
}

src/main/java/io/github/vishalmysore/acp/server/ACPRestController.java

Lines changed: 13 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,6 @@
1414

1515
import java.time.Instant;
1616
import java.util.*;
17-
import java.util.stream.Collectors;
1817

1918
@RestController
2019
@RequestMapping("/acp")
@@ -42,13 +41,13 @@ public ResponseEntity<List<Agent>> searchAgents(@RequestBody AgentSearchRequest
4241
List<AgentCard> agentCards = agentCard != null ? List.of(agentCard) : List.of();
4342
List<Agent> agents = agentCards.stream()
4443
.map(acpMapper::toAgent)
45-
.collect(Collectors.toList());
44+
.toList();
4645

4746
if (request.getQuery() != null && !request.getQuery().isEmpty()) {
4847
agents = agents.stream()
4948
.filter(agent -> agent.getMetadata().getDescription()
5049
.toLowerCase().contains(request.getQuery().toLowerCase()))
51-
.collect(Collectors.toList());
50+
.toList();
5251
}
5352

5453
if (request.getLimit() != null) {
@@ -57,7 +56,7 @@ public ResponseEntity<List<Agent>> searchAgents(@RequestBody AgentSearchRequest
5756
agents = agents.stream()
5857
.skip(offset)
5958
.limit(limit)
60-
.collect(Collectors.toList());
59+
.toList();
6160
}
6261

6362
return ResponseEntity.ok(agents);
@@ -68,7 +67,7 @@ public ResponseEntity<List<Agent>> searchAgents(@RequestBody AgentSearchRequest
6867
}
6968

7069
@Override
71-
public ResponseEntity<Agent> getAgent(@PathVariable UUID agentId) {
70+
public ResponseEntity<Agent> getAgent(@PathVariable("agentId") UUID agentId) {
7271
log.info("Getting agent with ID: {}", agentId);
7372

7473
try {
@@ -91,7 +90,7 @@ public ResponseEntity<Agent> getAgent(@PathVariable UUID agentId) {
9190
}
9291

9392
@Override
94-
public ResponseEntity<AgentACPDescriptor> getAgentDescriptor(@PathVariable UUID agentId) {
93+
public ResponseEntity<AgentACPDescriptor> getAgentDescriptor(@PathVariable("agentId") UUID agentId) {
9594
log.info("Getting agent descriptor for ID: {}", agentId);
9695

9796
try {
@@ -121,7 +120,7 @@ public ResponseEntity<AgentRun> createStatelessRun(@RequestBody RunCreateStatele
121120
AgentRun run = new AgentRun();
122121
run.setRunId(UUID.randomUUID());
123122
run.setAgentId(request.getAgentId());
124-
run.setStatus(AgentRun.RunStatus.pending);
123+
run.setStatus(AgentRun.RunStatus.PENDING);
125124
run.setCreatedAt(Instant.now());
126125
run.setUpdatedAt(Instant.now());
127126

@@ -131,7 +130,7 @@ public ResponseEntity<AgentRun> createStatelessRun(@RequestBody RunCreateStatele
131130
task.setId(run.getRunId().toString());
132131
task.setStatus(new TaskStatus(TaskState.SUBMITTED));
133132

134-
run.setStatus(AgentRun.RunStatus.success);
133+
run.setStatus(AgentRun.RunStatus.SUCCESS);
135134
run.setUpdatedAt(Instant.now());
136135

137136
return ResponseEntity.ok(run);
@@ -148,7 +147,7 @@ public ResponseEntity<io.github.vishalmysore.acp.domain.Thread> createThread(@Re
148147
try {
149148
io.github.vishalmysore.acp.domain.Thread thread = new io.github.vishalmysore.acp.domain.Thread();
150149
thread.setThreadId(UUID.randomUUID());
151-
thread.setStatus(io.github.vishalmysore.acp.domain.Thread.ThreadStatus.idle);
150+
thread.setStatus(io.github.vishalmysore.acp.domain.Thread.ThreadStatus.IDLE);
152151
thread.setCreatedAt(Instant.now());
153152
thread.setUpdatedAt(Instant.now());
154153
thread.setMetadata(metadata);
@@ -165,7 +164,7 @@ public ResponseEntity<io.github.vishalmysore.acp.domain.Thread> createThread(@Re
165164
}
166165

167166
@Override
168-
public ResponseEntity<AgentRun> createStatefulRun(@PathVariable UUID threadId, @RequestBody RunCreateStateful request) {
167+
public ResponseEntity<AgentRun> createStatefulRun(@PathVariable("threadId") UUID threadId, @RequestBody RunCreateStateful request) {
169168
log.info("Creating stateful run for thread {}: {}", threadId, request);
170169

171170
try {
@@ -178,23 +177,23 @@ public ResponseEntity<AgentRun> createStatefulRun(@PathVariable UUID threadId, @
178177
run.setRunId(UUID.randomUUID());
179178
run.setAgentId(request.getAgentId());
180179
run.setThreadId(threadId);
181-
run.setStatus(AgentRun.RunStatus.pending);
180+
run.setStatus(AgentRun.RunStatus.PENDING);
182181
run.setCreatedAt(Instant.now());
183182
run.setUpdatedAt(Instant.now());
184183

185184
runs.put(run.getRunId(), run);
186185

187-
thread.setStatus(io.github.vishalmysore.acp.domain.Thread.ThreadStatus.busy);
186+
thread.setStatus(io.github.vishalmysore.acp.domain.Thread.ThreadStatus.BUSY);
188187
thread.setUpdatedAt(Instant.now());
189188

190189
Task task = acpMapper.toTask(request);
191190
task.setId(run.getRunId().toString());
192191
task.setStatus(new TaskStatus(TaskState.SUBMITTED));
193192

194-
run.setStatus(AgentRun.RunStatus.success);
193+
run.setStatus(AgentRun.RunStatus.SUCCESS);
195194
run.setUpdatedAt(Instant.now());
196195

197-
thread.setStatus(io.github.vishalmysore.acp.domain.Thread.ThreadStatus.idle);
196+
thread.setStatus(io.github.vishalmysore.acp.domain.Thread.ThreadStatus.IDLE);
198197
thread.setUpdatedAt(Instant.now());
199198

200199
return ResponseEntity.ok(run);

src/test/java/io/github/vishalmysore/acp/domain/ACPDomainModelTests.java

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -51,14 +51,14 @@ void testAgentRunModel() {
5151
run.setRunId(runId);
5252
run.setAgentId(agentId);
5353
run.setThreadId(threadId);
54-
run.setStatus(AgentRun.RunStatus.pending);
54+
run.setStatus(AgentRun.RunStatus.PENDING);
5555
run.setCreatedAt(now);
5656
run.setUpdatedAt(now);
5757

5858
assertEquals(runId, run.getRunId());
5959
assertEquals(agentId, run.getAgentId());
6060
assertEquals(threadId, run.getThreadId());
61-
assertEquals(AgentRun.RunStatus.pending, run.getStatus());
61+
assertEquals(AgentRun.RunStatus.PENDING, run.getStatus());
6262
assertEquals(now, run.getCreatedAt());
6363
assertEquals(now, run.getUpdatedAt());
6464
}
@@ -73,15 +73,15 @@ void testThreadModel() {
7373
Map<String, Object> values = new HashMap<>();
7474

7575
thread.setThreadId(threadId);
76-
thread.setStatus(Thread.ThreadStatus.idle);
76+
thread.setStatus(Thread.ThreadStatus.IDLE);
7777
thread.setCreatedAt(now);
7878
thread.setUpdatedAt(now);
7979
thread.setMetadata(metadata);
8080
thread.setMessages(messages);
8181
thread.setValues(values);
8282

8383
assertEquals(threadId, thread.getThreadId());
84-
assertEquals(Thread.ThreadStatus.idle, thread.getStatus());
84+
assertEquals(Thread.ThreadStatus.IDLE, thread.getStatus());
8585
assertEquals(now, thread.getCreatedAt());
8686
assertEquals(now, thread.getUpdatedAt());
8787
assertEquals(metadata, thread.getMetadata());

src/test/java/io/github/vishalmysore/acp/integration/ACPIntegrationTest.java

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,7 @@ public ResponseEntity<List<Agent>> searchAgents(AgentSearchRequest request) {
4949
public ResponseEntity<io.github.vishalmysore.acp.domain.Thread> createThread(Map<String, Object> metadata) {
5050
io.github.vishalmysore.acp.domain.Thread thread = new io.github.vishalmysore.acp.domain.Thread();
5151
thread.setThreadId(UUID.randomUUID());
52-
thread.setStatus(io.github.vishalmysore.acp.domain.Thread.ThreadStatus.idle);
52+
thread.setStatus(io.github.vishalmysore.acp.domain.Thread.ThreadStatus.IDLE);
5353
thread.setCreatedAt(java.time.Instant.now());
5454
thread.setUpdatedAt(java.time.Instant.now());
5555
thread.setMetadata(metadata);
@@ -64,7 +64,7 @@ public ResponseEntity<AgentRun> createStatelessRun(RunCreateStateless request) {
6464
AgentRun run = new AgentRun();
6565
run.setRunId(UUID.randomUUID());
6666
run.setAgentId(request.getAgentId());
67-
run.setStatus(AgentRun.RunStatus.success);
67+
run.setStatus(AgentRun.RunStatus.SUCCESS);
6868
run.setCreatedAt(java.time.Instant.now());
6969
run.setUpdatedAt(java.time.Instant.now());
7070
return ResponseEntity.ok(run);
@@ -81,7 +81,7 @@ public ResponseEntity<AgentRun> createStatefulRun(UUID threadId, RunCreateStatef
8181
run.setRunId(UUID.randomUUID());
8282
run.setAgentId(request.getAgentId());
8383
run.setThreadId(threadId);
84-
run.setStatus(AgentRun.RunStatus.success);
84+
run.setStatus(AgentRun.RunStatus.SUCCESS);
8585
run.setCreatedAt(java.time.Instant.now());
8686
run.setUpdatedAt(java.time.Instant.now());
8787
return ResponseEntity.ok(run);
@@ -120,7 +120,7 @@ void testFullACPWorkflow() {
120120
assertNotNull(threadResponse.getBody());
121121

122122
io.github.vishalmysore.acp.domain.Thread thread = threadResponse.getBody();
123-
assertEquals(io.github.vishalmysore.acp.domain.Thread.ThreadStatus.idle, thread.getStatus());
123+
assertEquals(io.github.vishalmysore.acp.domain.Thread.ThreadStatus.IDLE, thread.getStatus());
124124
assertNotNull(thread.getThreadId());
125125

126126
RunCreateStateless statelessRequest = new RunCreateStateless();
@@ -133,7 +133,7 @@ void testFullACPWorkflow() {
133133
assertNotNull(statelessResponse.getBody());
134134

135135
AgentRun statelessRun = statelessResponse.getBody();
136-
assertEquals(AgentRun.RunStatus.success, statelessRun.getStatus());
136+
assertEquals(AgentRun.RunStatus.SUCCESS, statelessRun.getStatus());
137137
assertNotNull(statelessRun.getRunId());
138138

139139
RunCreateStateful statefulRequest = new RunCreateStateful();
@@ -147,7 +147,7 @@ void testFullACPWorkflow() {
147147
assertNotNull(statefulResponse.getBody());
148148

149149
AgentRun statefulRun = statefulResponse.getBody();
150-
assertEquals(AgentRun.RunStatus.success, statefulRun.getStatus());
150+
assertEquals(AgentRun.RunStatus.SUCCESS, statefulRun.getStatus());
151151
assertEquals(thread.getThreadId(), statefulRun.getThreadId());
152152
assertNotNull(statefulRun.getRunId());
153153
}

src/test/java/io/github/vishalmysore/acp/server/ACPRestControllerTest.java

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -67,15 +67,15 @@ public ResponseEntity<AgentRun> createStatelessRun(RunCreateStateless request) {
6767
AgentRun run = new AgentRun();
6868
run.setRunId(UUID.randomUUID());
6969
run.setAgentId(request.getAgentId());
70-
run.setStatus(AgentRun.RunStatus.success);
70+
run.setStatus(AgentRun.RunStatus.SUCCESS);
7171
return ResponseEntity.ok(run);
7272
}
7373

7474
@Override
7575
public ResponseEntity<io.github.vishalmysore.acp.domain.Thread> createThread(Map<String, Object> metadata) {
7676
io.github.vishalmysore.acp.domain.Thread thread = new io.github.vishalmysore.acp.domain.Thread();
7777
thread.setThreadId(UUID.randomUUID());
78-
thread.setStatus(io.github.vishalmysore.acp.domain.Thread.ThreadStatus.idle);
78+
thread.setStatus(io.github.vishalmysore.acp.domain.Thread.ThreadStatus.IDLE);
7979
return ResponseEntity.ok(thread);
8080
}
8181

@@ -138,7 +138,7 @@ void testCreateStatelessRun() {
138138
assertEquals(200, response.getStatusCodeValue());
139139
assertNotNull(response.getBody());
140140
assertEquals(testAgentId, response.getBody().getAgentId());
141-
assertEquals(AgentRun.RunStatus.success, response.getBody().getStatus());
141+
assertEquals(AgentRun.RunStatus.SUCCESS, response.getBody().getStatus());
142142
}
143143

144144
@Test
@@ -150,7 +150,7 @@ void testCreateThread() {
150150
assertNotNull(response);
151151
assertEquals(200, response.getStatusCodeValue());
152152
assertNotNull(response.getBody());
153-
assertEquals(io.github.vishalmysore.acp.domain.Thread.ThreadStatus.idle, response.getBody().getStatus());
153+
assertEquals(io.github.vishalmysore.acp.domain.Thread.ThreadStatus.IDLE, response.getBody().getStatus());
154154
}
155155

156156
@Test

0 commit comments

Comments
 (0)