This is an automated email from the ASF dual-hosted git repository.
smolnar pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/knox.git
The following commit(s) were added to refs/heads/master by this push:
new 672b3cb94 KNOX-2977 - The 'conf/descriptors' folder should be
considered too when registering topology port mappings (#810)
672b3cb94 is described below
commit 672b3cb94b93b9db256c460b8111a45c6b9a1422
Author: Sandor Molnar <[email protected]>
AuthorDate: Thu Oct 26 13:37:40 2023 +0200
KNOX-2977 - The 'conf/descriptors' folder should be considered too when
registering topology port mappings (#810)
---
.../src/main/java/org/apache/knox/gateway/GatewayServer.java | 12 +++---------
.../gateway/services/topology/impl/GatewayStatusService.java | 6 +++---
2 files changed, 6 insertions(+), 12 deletions(-)
diff --git
a/gateway-server/src/main/java/org/apache/knox/gateway/GatewayServer.java
b/gateway-server/src/main/java/org/apache/knox/gateway/GatewayServer.java
index 16fe8970d..ce62b1c79 100644
--- a/gateway-server/src/main/java/org/apache/knox/gateway/GatewayServer.java
+++ b/gateway-server/src/main/java/org/apache/knox/gateway/GatewayServer.java
@@ -649,16 +649,10 @@ public class GatewayServer {
final ServiceDefinitionRegistry serviceDefinitionRegistry =
services.getService(ServiceType.SERVICE_DEFINITION_REGISTRY);
serviceDefinitionRegistry.addServiceDefinitionChangeListener(monitor);
- final Collection<Topology> topologies = monitor.getTopologies();
final Map<String, Integer> topologyPortMap =
config.getGatewayPortMappings();
- // List of all the topology that are deployed
- final List<String> deployedTopologyList = new ArrayList<>();
-
- for (final Topology t : topologies) {
- deployedTopologyList.add(t.getName());
- }
-
+ // List of all the topology that are deployed (or will be deployed soon)
+ final Set<String> deployedTopologyList =
gatewayStatusService.collectTopologies(config);
// Check whether the configured topologies for port mapping exist, if not
// log WARN message and continue
@@ -768,7 +762,7 @@ public class GatewayServer {
*/
private void checkMappedTopologiesExist(
final Map<String, Integer> configTopologies,
- final List<String> topologies) {
+ final Set<String> topologies) {
for(final Map.Entry<String, Integer> entry : configTopologies.entrySet()) {
// If the topologies defined in gateway-config.xml are not found in
gateway
if (!topologies.contains(entry.getKey())) {
diff --git
a/gateway-server/src/main/java/org/apache/knox/gateway/services/topology/impl/GatewayStatusService.java
b/gateway-server/src/main/java/org/apache/knox/gateway/services/topology/impl/GatewayStatusService.java
index 08ad866b2..75fad6450 100644
---
a/gateway-server/src/main/java/org/apache/knox/gateway/services/topology/impl/GatewayStatusService.java
+++
b/gateway-server/src/main/java/org/apache/knox/gateway/services/topology/impl/GatewayStatusService.java
@@ -61,17 +61,17 @@ public class GatewayStatusService implements Service {
Set<String> healthCheckTopologies = config.getHealthCheckTopologies();
if (healthCheckTopologies.isEmpty()) {
topologyNamesToCheck = collectTopologies(config);
+ LOG.collectedTopologiesForHealthCheck(topologyNamesToCheck);
} else {
topologyNamesToCheck = healthCheckTopologies;
}
LOG.startingStatusMonitor(topologyNamesToCheck);
}
- private Set<String> collectTopologies(GatewayConfig config) {
- Set<String> result = new HashSet<>();
+ public Set<String> collectTopologies(GatewayConfig config) {
+ final Set<String> result = new HashSet<>();
collectFiles(result, config.getGatewayTopologyDir(), ".xml");
collectFiles(result, config.getGatewayDescriptorsDir(), ".json");
- LOG.collectedTopologiesForHealthCheck(result);
return result;
}