public void onServerInstanceConnected(@Observes ServerInstanceConnected serverInstanceConnected) {
ServerInstance serverInstance = serverInstanceConnected.getServerInstance();
serverTemplatesClients.computeIfPresent(serverInstance.getServerTemplateId(),
(serverTemplateId, clients) -> {
clients.forEach((key, client) -> {
updateOrBuildClient(client,
serverInstance);
logger.debug("KieServerClient load balancer updated for server template {}",
serverTemplateId.equals(SERVER_TEMPLATE_KEY) ? serverInstance.getServerTemplateId() : serverTemplateId);
});
return clients;
});
serverInstancesById.put(serverInstance.getServerInstanceId(),
serverInstance);
KieServicesClient adminClient = adminClients.get(serverInstance.getServerTemplateId());
updateOrBuildClient(adminClient,
serverInstance);
serverInstanceRegisteredEvent.fire(new ServerInstanceRegistered(serverInstanceConnected.getServerInstance()));
}