/** * Make this instance retain a reference to the resource until it is destroyed. */ void retainReference(SharedResource resource) { resourceReferences.retain(resource); }
private ResponseFilterChain(Iterable<? extends ResponseFilter> filters) { for (ResponseFilter filter : filters) { this.filters.add(filter); filterReferences.retain(filter); } }
private RequestFilterChain(Iterable<? extends RequestFilter> filters) { for (RequestFilter filter : filters) { this.filters.add(filter); filterReferences.retain(filter); } }
public ActiveContainer(ContainerBuilder builder) { serverProviders = builder.serverProviders().activate(); serverProviders.forEach(resourceReferences::retain); serverBindings = builder.activateServerBindings(); serverBindings.forEach( (ignoredName, bindingSet) -> bindingSet.forEach( binding -> resourceReferences.retain(binding.getValue()))); clientBindings = builder.activateClientBindings(); clientBindings.forEach( (ignoredName, bindingSet) -> bindingSet.forEach( binding -> resourceReferences.retain(binding.getValue()))); bindingSetSelector = builder.getInstance(BindingSetSelector.class); timeoutMgr = builder.getInstance(TimeoutManagerImpl.class); timeoutMgr.start(); builder.guiceModules().install(new AbstractModule() { @Override protected void configure() { bind(TimeoutManagerImpl.class).toInstance(timeoutMgr); } }); guiceInjector = builder.guiceModules().activate(); termination = new ContainerTermination(builder.appContext()); }