private static void closeServer(ServerProvider server) { server.close(); startedServers.remove(server); }
@Override public ContainerSnapshot newReference(URI uri) { ActiveContainer container = containerRef.get(); if (container == null) { throw new ContainerNotReadyException(); } return container.newReference(uri); }
@Override public ContainerSnapshot newReference(URI uri) { String name = bindingSetSelector.select(uri); if (name == null) { throw new NoBindingSetSelectedException(uri); } BindingSet<RequestHandler> serverBindings = serverBindings(name); BindingSet<RequestHandler> clientBindings = clientBindings(name); if (serverBindings == null || clientBindings == null) { throw new BindingSetNotFoundException(name); } return new ContainerSnapshot(this, serverBindings, clientBindings); }
private static void startAndStopServers() { List<ServerProvider> currentServers = Container.get().getServerProviderRegistry().allComponents(); HashSet<ServerProvider> serversToClose = new HashSet<>(startedServers); serversToClose.removeAll(currentServers); for (ServerProvider server : serversToClose) { closeServer(server); } for (ServerProvider server : currentServers) { if (!startedServers.contains(server)) { server.start(); startedServers.add(server); } } }
private static void startClients() { for (ClientProvider client : Container.get().getClientProviderRegistry().allComponents()) { if (!startedClients.contains(client)) { client.start(); startedClients.add(client); } } }
container = current.newReference(uri); parent = null; parentReference = null;