public void onServerTemplateUpdated(@Observes ServerTemplateUpdated serverTemplateUpdated) { buildClientsForServer(serverTemplateUpdated.getServerTemplate()); }
@PostConstruct public void createAvailableClients() { ServiceLoader<KieServicesClientProvider> loader = ServiceLoader.load(KieServicesClientProvider.class); loader.forEach(provider -> { // skip default http/rest based client providers and use admin client created here if (!provider.supports("http")) { clientProviders.add(provider); } allClientProviders.add(provider); }); clientProviders.sort((KieServicesClientProvider one, KieServicesClientProvider two) -> one.getPriority().compareTo(two.getPriority())); kieServices = KieServices.Factory.get(); ServerTemplateList serverTemplates = specManagementService.listServerTemplates(); logger.debug("Found {} server templates, creating clients for them...", serverTemplates.getServerTemplates().length); for (ServerTemplate serverTemplate : serverTemplates.getServerTemplates()) { buildClientsForServer(serverTemplate); } }
protected void updateOrBuildClient(KieServicesClient client, ServerInstance serverInstance) { if (client != null) { LoadBalancer loadBalancer = ((AbstractKieServicesClientImpl) client).getLoadBalancer(); loadBalancer.activate(serverInstance.getUrl()); logger.debug("Server instance {} for server template {} activated on client thus will be used for operations", serverInstance.getUrl(), serverInstance.getServerTemplateId()); } else { logger.debug("No kie server client yet created, attempting to create one for server template {}", serverInstance.getServerTemplateId()); ServerTemplate serverTemplate = specManagementService.getServerTemplate(serverInstance.getServerTemplateId()); buildClientsForServer(serverTemplate); } }