private List<Connector> buildAdminConnectors(MetricRegistry metricRegistry, Server server) { // threadpool is shared between all the connectors, so it should be managed by the server instead of the // individual connectors final QueuedThreadPool threadPool = new InstrumentedQueuedThreadPool(metricRegistry, adminMaxThreads, adminMinThreads); threadPool.setName("dw-admin"); server.addBean(threadPool); final List<Connector> connectors = new ArrayList<>(); for (ConnectorFactory factory : adminConnectors) { final Connector connector = factory.build(server, metricRegistry, "admin", threadPool); if (connector instanceof ContainerLifeCycle) { ((ContainerLifeCycle) connector).unmanage(threadPool); } connectors.add(connector); } return connectors; }
/** * Unmanages a bean already contained by this aggregate, so that it is not started/stopped/destroyed with this * aggregate. * * @param bean The bean to unmanage (must already have been added). */ @Override public void unmanage(Object bean) { for (Bean b : _beans) { if (b._bean == bean) { unmanage(b); return; } } throw new IllegalArgumentException("Unknown bean " + bean); }
private List<Connector> buildAdminConnectors(MetricRegistry metricRegistry, Server server) { // threadpool is shared between all the connectors, so it should be managed by the server instead of the // individual connectors final QueuedThreadPool threadPool = new InstrumentedQueuedThreadPool(metricRegistry, adminMaxThreads, adminMinThreads); threadPool.setName("dw-admin"); server.addBean(threadPool); final List<Connector> connectors = new ArrayList<>(); for (ConnectorFactory factory : adminConnectors) { final Connector connector = factory.build(server, metricRegistry, "admin", threadPool); if (connector instanceof ContainerLifeCycle) { ((ContainerLifeCycle) connector).unmanage(threadPool); } connectors.add(connector); } return connectors; }
/** * Unmanages a bean already contained by this aggregate, so that it is not started/stopped/destroyed with this * aggregate. * * @param bean The bean to unmanage (must already have been added). */ public void unmanage(Object bean) { for (Bean b : _beans) { if (b._bean == bean) { unmanage(b); return; } } throw new IllegalArgumentException("Unknown bean " + bean); }
/** * Unmanages a bean already contained by this aggregate, so that it is not started/stopped/destroyed with this * aggregate. * * @param bean The bean to unmanage (must already have been added). */ public void unmanage(Object bean) { for (Bean b : _beans) { if (b._bean == bean) { unmanage(b); return; } } throw new IllegalArgumentException("Unknown bean " + bean); }
/** * Unmanages a bean already contained by this aggregate, so that it is not started/stopped/destroyed with this * aggregate. * * @param bean The bean to unmanage (must already have been added). */ @Override public void unmanage(Object bean) { for (Bean b : _beans) { if (b._bean == bean) { unmanage(b); return; } } throw new IllegalArgumentException("Unknown bean " + bean); }
/** * Unmanages a bean already contained by this aggregate, so that it is not started/stopped/destroyed with this * aggregate. * * @param bean The bean to unmanage (must already have been added). */ public void unmanage(Object bean) { for (Bean b : _beans) { if (b._bean == bean) { unmanage(b); return; } } throw new IllegalArgumentException("Unknown bean " + bean); }
private boolean remove(Bean bean) { if (_beans.remove(bean)) { unmanage(bean); for (Container.Listener l:_listeners) l.beanRemoved(this,bean._bean); if (bean._bean instanceof Container.Listener) { Container.Listener listener = (Container.Listener)bean._bean; if (_listeners.remove(listener)) { // remove existing beans for (Bean b:_beans) { listener.beanRemoved(this,b._bean); if (listener instanceof InheritedListener && b.isManaged() && b._bean instanceof Container) ((Container)b._bean).removeBean(listener); } } } return true; } return false; }
private boolean remove(Bean bean) { if (_beans.remove(bean)) { unmanage(bean); for (Container.Listener l:_listeners) l.beanRemoved(this,bean._bean); if (bean._bean instanceof Container.Listener) { Container.Listener listener = (Container.Listener)bean._bean; if (_listeners.remove(listener)) { // remove existing beans for (Bean b:_beans) { listener.beanRemoved(this,b._bean); if (listener instanceof InheritedListener && b.isManaged() && b._bean instanceof Container) ((Container)b._bean).removeBean(listener); } } } return true; } return false; }
unmanage(b); else
case AUTO: if (l.isRunning()) unmanage(b); else
case AUTO: if (l.isRunning()) unmanage(b); else
case AUTO: if (l.isRunning()) unmanage(b); else