public boolean hasServerInstanceId(String serverInstanceId) { for (ServerInstanceKey instance : getServerInstanceKeys()) { if (instance.getServerInstanceId().equals(serverInstanceId)) { return true; } } return false; }
public boolean hasServerInstanceId(String serverInstanceId) { for (ServerInstanceKey instance : getServerInstanceKeys()) { if (instance.getServerInstanceId().equals(serverInstanceId)) { return true; } } return false; }
public boolean hasServerInstance(String serverInstanceUrl) { for (ServerInstanceKey spec : getServerInstanceKeys()) { if (serverInstanceUrl.equals(spec.getUrl())) { return true; } } return false; }
public ServerInstanceKey getServerInstance(String serverInstanceId) { for (ServerInstanceKey instance : getServerInstanceKeys()) { if (instance.getServerInstanceId().equals(serverInstanceId)) { return instance; } } return null; }
public ServerInstanceKey getServerInstance(String serverInstanceId) { for (ServerInstanceKey instance : getServerInstanceKeys()) { if (instance.getServerInstanceId().equals(serverInstanceId)) { return instance; } } return null; }
protected void indexServerInstances(ServerTemplate serverTemplate) { for (ServerInstanceKey serverInstanceKey : serverTemplate.getServerInstanceKeys()) { serverInstancesById.put(serverInstanceKey.getServerInstanceId(), serverInstanceKey); } }
public boolean hasServerInstance(String serverInstanceUrl) { for (ServerInstanceKey spec : getServerInstanceKeys()) { if (serverInstanceUrl.equals(spec.getUrl())) { return true; } } return false; }
protected void indexServerInstances(ServerTemplate serverTemplate) { serverTemplate.getServerInstanceKeys().forEach(serverInstanceKey -> serverInstancesById.put(serverInstanceKey.getServerInstanceId(), serverInstanceKey)); }
public List<Object> broadcastToKieServers(String serverTemplateId, Function<KieServicesClient, Object> operation) { List<Object> results = new ArrayList<>(); ServerTemplate serverTemplate = specManagementService.getServerTemplate(serverTemplateId); if (serverTemplate.getServerInstanceKeys() == null || serverTemplate.getServerInstanceKeys().isEmpty()) { return results; } for (ServerInstanceKey instanceUrl : serverTemplate.getServerInstanceKeys()) { try { KieServicesClient client = getClient(instanceUrl.getUrl()); Object result = operation.apply(client); results.add(result); logger.debug("KIE Server at {} returned result {} for broadcast operation {}", instanceUrl, result, operation); } catch (Exception e) { logger.debug("Unable to send breadcast to {} due to {}", instanceUrl, e.getMessage(), e); } } return results; }
public void onServerTemplateUpdated(@Observes final ServerTemplateUpdated serverTemplateUpdated) { if (serverTemplateUpdated.getServerTemplate().getServerInstanceKeys().isEmpty()) { loadServerTemplates(); } }
@Override public ServerInstanceKeyList getServerInstances(final String serverTemplateId) { ServerTemplate serverTemplate = getServerTemplate(serverTemplateId); return new ServerInstanceKeyList(serverTemplate.getServerInstanceKeys()); }
public KieServicesClient getAdminServerClient(String serverTemplateId, String serverInstanceId) { try { ServerInstanceKey instance = specManagementService.getServerTemplate(serverTemplateId).getServerInstanceKeys() .stream() .filter(si -> si.getServerInstanceId().equals(serverInstanceId)) .findFirst() .get(); String url = instance.getUrl(); KieServicesClient client = clientProviders .stream() .filter(provider -> provider.supports(url)) .findFirst() .get() .get(url); logger.debug("Using client {}", client); return client; } catch (Exception e) { return adminClients.get(serverTemplateId); } }
@Test public void testCallRemoteKieServerOperationWhenGetClientThrowsAnException() { final ServerInstanceKey serverInstanceKey = mock(ServerInstanceKey.class); final Collection<ServerInstanceKey> serverInstanceKeys = Collections.singletonList(serverInstanceKey); when(serverTemplate.getServerInstanceKeys()).thenReturn(serverInstanceKeys); doThrow(new NullPointerException()).when(instanceManager).getClient(any()); final List<Container> containers = instanceManager.callRemoteKieServerOperation(serverTemplate, containerSpec, operation); assertTrue(containers.isEmpty()); }
@Test public void testCallRemoteKieServerOperationWhenServerTemplateHasMoreThanZeroServerInstanceKeys() { final ServerInstanceKey serverInstanceKey = mock(ServerInstanceKey.class); final Collection<ServerInstanceKey> serverInstanceKeys = Collections.singletonList(serverInstanceKey); when(serverTemplate.getServerInstanceKeys()).thenReturn(serverInstanceKeys); doReturn(client).when(instanceManager).getClient(any()); final List<Container> containers = instanceManager.callRemoteKieServerOperation(serverTemplate, containerSpec, operation); assertEquals(1, containers.size()); }
@Test public void testCallRemoteKieServerOperationWhenServerTemplateHasZeroServerInstanceKeys() { final Collection<ServerInstanceKey> serverInstanceKeys = Collections.emptyList(); when(serverTemplate.getServerInstanceKeys()).thenReturn(serverInstanceKeys); doReturn(client).when(instanceManager).getClient(any()); final List<Container> containers = instanceManager.callRemoteKieServerOperation(serverTemplate, containerSpec, operation); assertTrue(containers.isEmpty()); }
public void onDelete( @Observes final ServerInstanceDeleted serverInstanceDeleted ) { if ( serverInstanceDeleted != null && serverInstanceDeleted.getServerInstanceId() != null && serverTemplatePresenter.getCurrentServerTemplate() != null ) { final String deletedServerInstanceId = serverInstanceDeleted.getServerInstanceId(); for ( final ServerInstanceKey serverInstanceKey : serverTemplatePresenter.getCurrentServerTemplate().getServerInstanceKeys() ) { if ( deletedServerInstanceId.equals( serverInstanceKey.getServerInstanceId() ) ) { refreshList( new ServerTemplateListRefresh( serverTemplatePresenter.getCurrentServerTemplate().getId() ) ); break; } } } else { logger.warn( "Illegal event argument." ); } }
@Override public void afterResponseSent() { ServerTemplate serverTemplate = controller.getTemplateStorage().load(serverInfo.getServerId()); ServerInstanceKey serverInstanceKey = serverTemplate.getServerInstanceKeys().stream() .filter(server -> server.getUrl().equals(serverInfo.getLocation())) .findFirst() .get(); ServerInstance serverInstance = new ServerInstance(); serverInstance.setServerName(serverInstanceKey.getServerName()); serverInstance.setServerTemplateId(serverInstanceKey.getServerTemplateId()); serverInstance.setServerInstanceId(serverInstanceKey.getServerInstanceId()); serverInstance.setUrl(serverInstanceKey.getUrl()); controller.getNotificationService().notify(new ServerInstanceUpdated(serverInstance)); controller.getNotificationService().notify(new ServerInstanceConnected(serverInstance)); }
public void setup( final ServerTemplate serverTemplate, final ContainerSpec firstContainerSpec ) { view.clear(); this.serverTemplate = serverTemplate; view.setTemplate( serverTemplate.getId(), serverTemplate.getName() ); view.setProcessCapability( serverTemplate.getCapabilities().contains( Capability.PROCESS.toString() ) ); view.setRulesCapability( serverTemplate.getCapabilities().contains( Capability.RULE.toString() ) ); view.setPlanningCapability( serverTemplate.getCapabilities().contains( Capability.PLANNING.toString() ) ); if ( firstContainerSpec != null ) { addContainer( firstContainerSpec ); for ( final ContainerSpec containerSpec : serverTemplate.getContainersSpec() ) { if ( !containerSpec.getId().equals( firstContainerSpec.getId() ) ) { addContainer( containerSpec ); } } containerSpecSelectedEvent.fire( new ContainerSpecSelected( firstContainerSpec ) ); } for ( final ServerInstanceKey serverInstanceKey : serverTemplate.getServerInstanceKeys() ) { addServerInstance( serverInstanceKey ); } }
@Test public void testDeleteServerInstance() { final ServerTemplate serverTemplate = new ServerTemplate("serverTemplateId", "serverTemplateName"); final ServerInstanceKey serverInstanceKey = new ServerInstanceKey(serverTemplate.getId(), "serverName", "serverInstanceId", "url"); serverTemplate.addServerInstance(serverInstanceKey); specManagementService.saveServerTemplate(serverTemplate); when(kieServerInstanceManager.isAlive(serverInstanceKey)).thenReturn(false); specManagementService.deleteServerInstance(serverInstanceKey); final ServerTemplate updatedServerTemplate = specManagementService.getServerTemplate(serverTemplate.getId()); assertEquals(0, updatedServerTemplate.getServerInstanceKeys().size()); }
@Test public void testDeleteServerInstanceAlive() { final ServerTemplate serverTemplate = new ServerTemplate("serverTemplateId", "serverTemplateName"); final ServerInstanceKey serverInstanceKey = new ServerInstanceKey(serverTemplate.getId(), "serverName", "serverInstanceId", "url"); serverTemplate.addServerInstance(serverInstanceKey); specManagementService.saveServerTemplate(serverTemplate); when(kieServerInstanceManager.isAlive(serverInstanceKey)).thenReturn(true); try { specManagementService.deleteServerInstance(serverInstanceKey); fail("Deleting a live server instance should fail"); } catch (Exception ex) { assertEquals("Can't delete live instance.", ex.getMessage()); } final ServerTemplate updatedServerTemplate = specManagementService.getServerTemplate(serverTemplate.getId()); assertEquals(1, updatedServerTemplate.getServerInstanceKeys().size()); } }