Skip to content

Commit 55a0e80

Browse files
authored
feat(connect): optimize fetch connect details & status (#587)
close #586
1 parent d9557b0 commit 55a0e80

File tree

1 file changed

+12
-14
lines changed

1 file changed

+12
-14
lines changed

src/main/java/org/akhq/repositories/ConnectRepository.java

Lines changed: 12 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -14,9 +14,7 @@
1414
import org.akhq.models.ConnectPlugin;
1515
import org.akhq.modules.KafkaModule;
1616
import org.akhq.utils.UserGroupUtils;
17-
import org.sourcelab.kafka.connect.apiclient.request.dto.ConnectorPlugin;
18-
import org.sourcelab.kafka.connect.apiclient.request.dto.ConnectorPluginConfigDefinition;
19-
import org.sourcelab.kafka.connect.apiclient.request.dto.NewConnectorDefinition;
17+
import org.sourcelab.kafka.connect.apiclient.request.dto.*;
2018
import org.sourcelab.kafka.connect.apiclient.rest.exceptions.ConcurrentConfigModificationException;
2119
import org.sourcelab.kafka.connect.apiclient.rest.exceptions.InvalidRequestException;
2220
import org.sourcelab.kafka.connect.apiclient.rest.exceptions.ResourceNotFoundException;
@@ -68,24 +66,24 @@ public ConnectDefinition getDefinition(String clusterId, String connectId, Strin
6866
ResourceNotFoundException.class
6967
}, delay = "3s", attempts = "5")
7068
public List<ConnectDefinition> getDefinitions(String clusterId, String connectId) {
71-
Collection<String> unfiltered = this.kafkaModule
69+
ConnectorsWithExpandedMetadata unfiltered = this.kafkaModule
7270
.getConnectRestClient(clusterId)
7371
.get(connectId)
74-
.getConnectors();
75-
76-
ArrayList<String> filtered = new ArrayList<String>();
77-
for (String item : unfiltered) {
78-
if (isMatchRegex(getConnectFilterRegex(), item)) {
79-
filtered.add(item);
72+
.getConnectorsWithAllExpandedMetadata();
73+
74+
ArrayList<ConnectDefinition> filtered = new ArrayList<>();
75+
for (ConnectorDefinition item : unfiltered.getAllDefinitions()) {
76+
if (isMatchRegex(getConnectFilterRegex(), item.getName())) {
77+
filtered.add(new ConnectDefinition(
78+
item,
79+
unfiltered.getStatusForConnector(item.getName())
80+
));
8081
}
8182
}
8283

83-
return filtered.stream()
84-
.map(s -> getDefinition(clusterId, connectId, s))
85-
.collect(Collectors.toList());
84+
return filtered;
8685
}
8786

88-
8987
public Optional<ConnectPlugin> getPlugin(String clusterId, String connectId, String className) {
9088
return this.kafkaModule
9189
.getConnectRestClient(clusterId)

0 commit comments

Comments
 (0)