private BeanManagerImpl getBeanManager() { final BeanManager beanManager = this.beanManager; return beanManager == null ? null : BeanManagerProxy.unwrap(beanManager); }
@Override public String toString() { return "Weld instance for deployment " + BeanManagerProxy.unwrap(rootBeanManager).getContextId(); }
private InjectionTarget getInjectionTarget(Class<?> clazz) { InjectionTarget<?> target = injectionTargets.get(clazz); if (target != null) { return target; } final BeanManagerImpl beanManager = BeanManagerProxy.unwrap(beanManagerSupplier.get()); Bean<?> bean = null; Set<Bean<?>> beans = new HashSet<>(beanManager.getBeans(clazz, Any.Literal.INSTANCE)); Iterator<Bean<?>> it = beans.iterator(); //we may have resolved some sub-classes //go through and remove them from the bean set while (it.hasNext()) { Bean<?> b = it.next(); if(b.getBeanClass() != clazz) { it.remove(); } } if(beans.size() == 1) { bean = beans.iterator().next(); } InjectionTarget<?> newTarget = InjectionTargets.createInjectionTarget(clazz, bean, beanManager, true); target = injectionTargets.putIfAbsent(clazz, newTarget); if (target == null) { return newTarget; } else { return target; } }
@Override protected BeanManagerImpl getBeanManager() { // get the reference to the bean manager on the first invocation if (beanManager == null) { beanManager = BeanManagerProxy.unwrap((BeanManager)currentServiceContainer().getRequiredService(beanManagerServiceName).getValue()); } return beanManager; }
beanManager = ((BeanManagerImpl) CDI.current().getBeanManager()).unwrap(); } else { beanManager = ((BeanManagerProxy) CDI.current().getBeanManager()).unwrap();
/** * Registers an instance supplier and its provided value as {@link JerseyBean}s into {@link BeanManager}. * * @param binding object containing {@link javax.enterprise.inject.spi.BeanAttributes} information. * @param abd {@link AfterBeanDiscovery} event. * @param <T> type of the instance which is registered. */ public static <T> void registerSupplier(SupplierInstanceBinding<T> binding, AfterBeanDiscovery abd, BeanManager beanManager) { BeanManagerImpl manager; if (beanManager instanceof BeanManagerProxy) { manager = ((BeanManagerProxy) beanManager).unwrap(); } else { manager = (BeanManagerImpl) beanManager; } /* * CDI does not provide sufficient support for ThreadScoped Supplier */ if (binding.getScope() == PerThread.class) { abd.addBean(new SupplierThreadScopeBean(binding, manager)); } else { abd.addBean(new SupplierInstanceBean<>(binding)); abd.addBean(new SupplierInstanceBeanBridge<>(binding)); } }
private <T> void addContainerLifecycleEvent(T event, Object payloadInfo, BeanManager beanManager) { if (eventMonitorContainerLifecycleEvents) { addContainerLifecycleEvent(event, payloadInfo, BeanManagerProxy.unwrap(beanManager)); } }
private <T> void addContainerLifecycleEvent(T event, Object payloadInfo, BeanManager beanManager) { if (eventMonitorContainerLifecycleEvents) { addContainerLifecycleEvent(event, payloadInfo, BeanManagerProxy.unwrap(beanManager)); } }
private <T> void addContainerLifecycleEvent(T event, Object payloadInfo, BeanManager beanManager) { if (eventMonitorContainerLifecycleEvents) { addContainerLifecycleEvent(event, payloadInfo, BeanManagerProxy.unwrap(beanManager)); } }
private BeanManagerImpl beanManager() { if (beanManager == null) { synchronized (this) { if (beanManager == null) { beanManager = BeanManagerProxy.unwrap(bootstrap.getManager(getDeterminingBeanDeploymentArchive(deployment))); } } } return beanManager; }
/** * Subclasses are allowed to override the default behavior, i.e. to cache an instance per BeanManager. * * @return the {@link Instance} the relevant calls are delegated to */ protected WeldInstance<T> getInstance() { return instanceCache.getValue(BeanManagerProxy.unwrap(getBeanManager())); }
/** * Subclasses are allowed to override the default behavior, i.e. to cache instance per BeanManager. * * @return the {@link Instance} the relevant calls are delegated to */ protected WeldInstance<T> getInstance() { return instanceCache.getValue(BeanManagerProxy.unwrap(getBeanManager())); }
public void afterBeanDiscovery(@Observes AfterBeanDiscovery event, BeanManager beanManager) { BeanManagerImpl weldManager = BeanManagerProxy.unwrap(beanManager); String exclude = weldManager.getServices().get(WeldConfiguration.class).getStringProperty(ConfigurationKey.PROBE_EVENT_MONITOR_EXCLUDE_TYPE); event.addObserverMethod(new ProbeObserver(weldManager, exclude.isEmpty() ? null : Pattern.compile(exclude), probe)); addContainerLifecycleEvent(event, null, beanManager); }
public void afterBeanDiscovery(@Observes AfterBeanDiscovery event, BeanManager beanManager) { BeanManagerImpl weldManager = BeanManagerProxy.unwrap(beanManager); String exclude = weldManager.getServices().get(WeldConfiguration.class).getStringProperty(ConfigurationKey.PROBE_EVENT_MONITOR_EXCLUDE_TYPE); event.addObserverMethod(new ProbeObserver(weldManager, exclude.isEmpty() ? null : Pattern.compile(exclude), probe)); addContainerLifecycleEvent(event, null, beanManager); }
public void afterBeanDiscovery(@Observes AfterBeanDiscovery event, BeanManager beanManager) { BeanManagerImpl weldManager = BeanManagerProxy.unwrap(beanManager); String exclude = weldManager.getServices().get(WeldConfiguration.class).getStringProperty(ConfigurationKey.PROBE_EVENT_MONITOR_EXCLUDE_TYPE); event.addObserverMethod(new ProbeObserver(weldManager, exclude.isEmpty() ? null : Pattern.compile(exclude), probe)); addContainerLifecycleEvent(event, null, beanManager); }
public void afterBeanDiscovery(@Observes AfterBeanDiscovery event, BeanManager beanManager) { BeanManagerImpl weldManager = BeanManagerProxy.unwrap(beanManager); String exclude = weldManager.getServices().get(WeldConfiguration.class).getStringProperty(ConfigurationKey.PROBE_EVENT_MONITOR_EXCLUDE_TYPE); event.addObserverMethod(new ProbeObserver(weldManager, exclude.isEmpty() ? null : Pattern.compile(exclude), probe)); addContainerLifecycleEvent(event, null, beanManager); }
public void registerWeldSEContexts(@Observes AfterBeanDiscovery event, BeanManager manager) { if (ignoreEvent(event)) { return; } final String contextId = BeanManagerProxy.unwrap(manager).getContextId(); this.threadContext = new ThreadContext(contextId); event.addContext(threadContext); // Register WeldContainer as a singleton event.addBean(new WeldContainerBean(contextId)); }
@Override public InstanceHandle<T> createInstance() throws InstantiationException { Object manager = context.getAttribute(WeldServletLifecycle.BEAN_MANAGER_ATTRIBUTE_NAME); if (manager instanceof BeanManager) { UnmanagedInstance<T> instance = new Unmanaged<T>(BeanManagerProxy.unwrap((BeanManager) manager), clazz).newInstance(); instance.produce().inject().postConstruct(); return new WeldInstanceHandle<T>(instance); } else { // fallback return delegate.createInstance(); } }
@Override public void configure(WebServer webServer) { BeanManagerImpl beanManagerImpl = BeanManagerProxy.unwrap(CDI.current().getBeanManager()); webServer.addServletContextAttribute(WeldServletLifecycle.BEAN_MANAGER_ATTRIBUTE_NAME, beanManagerImpl); webServer.addServletContextAttribute(org.jboss.weld.Container.CONTEXT_ID_KEY, beanManagerImpl.getContextId()); webServer.addInitParameter(CONTEXT_PARAM_CONTAINER_CLASS, HammockContainer.class.getName()); webServer.addListener(Listener.class); } }
public void registerWeldSEContexts(@Observes AfterBeanDiscovery event, BeanManager manager) { if (ignoreEvent(event)) { return; } final String contextId = BeanManagerProxy.unwrap(manager).getContextId(); this.threadContext = new ThreadContext(contextId); event.addContext(threadContext); // Register WeldContainer as a singleton event.addBean().addType(WeldContainer.class).addQualifier(Default.Literal.INSTANCE).scope(Singleton.class) .produceWith((i) -> WeldContainer.instance(contextId)); }