use of javax.enterprise.context.spi.Context in project Payara by payara.
the class ClusterScopedInterceptor method refresh.
private void refresh(Class<?> beanClass) {
Bean<?> bean = Iterables.getOnlyElement(beanManager.getBeans(beanClass));
String beanName = getBeanName(bean, getAnnotation(beanManager, bean));
Context ctx = beanManager.getContext(ClusterScoped.class);
clusteredLookup.getClusteredSingletonMap().put(beanName, ctx.get(bean));
}
use of javax.enterprise.context.spi.Context in project joynr by bmwcarit.
the class JoynrJeeMessageContextTest method testContextRegistered.
@Test
public void testContextRegistered() {
JoynrJeeMessageContext.getInstance().activate();
Context result = beanManager.getContext(JoynrJeeMessageScoped.class);
assertNotNull(result);
assertTrue(result instanceof JoynrJeeMessageContext);
JoynrJeeMessageContext.getInstance().deactivate();
try {
result = beanManager.getContext(JoynrJeeMessageScoped.class);
fail("Shouldn't get it after deactivation.");
} catch (ContextNotActiveException e) {
logger.trace("Context not available after deactivation as expected.");
}
}
use of javax.enterprise.context.spi.Context in project microservice_framework by CJSCommonPlatform.
the class BeanInstantiaterTest method shouldInstantiateABean.
@Test
@SuppressWarnings("unchecked")
public void shouldInstantiateABean() throws Exception {
final Bean<Object> bean = mock(Bean.class);
final Context context = mock(Context.class);
final CreationalContext<Object> creationalContext = mock(CreationalContext.class);
final Object instance = mock(Object.class);
when(beanManager.getContext(bean.getScope())).thenReturn(context);
when(beanManager.createCreationalContext(bean)).thenReturn(creationalContext);
when(context.get(bean, creationalContext)).thenReturn(instance);
final Object result = beanInstantiater.instantiate(bean);
assertThat(result, is(instance));
}
use of javax.enterprise.context.spi.Context in project core by weld.
the class WeldStartup method createContexts.
protected Collection<ContextHolder<? extends Context>> createContexts(ServiceRegistry services) {
List<ContextHolder<? extends Context>> contexts = new ArrayList<ContextHolder<? extends Context>>();
BeanIdentifierIndex beanIdentifierIndex = services.get(BeanIdentifierIndex.class);
/*
* Register a full set of bound and unbound contexts. Although we may not use all of
* these (e.g. if we are running in a servlet environment) they may be
* useful for an application.
*/
Set<Annotation> boundQualifires = ImmutableSet.<Annotation>builder().addAll(Bindings.DEFAULT_QUALIFIERS).add(BoundLiteral.INSTANCE).build();
Set<Annotation> unboundQualifiers = ImmutableSet.<Annotation>builder().addAll(Bindings.DEFAULT_QUALIFIERS).add(UnboundLiteral.INSTANCE).build();
contexts.add(new ContextHolder<ApplicationContext>(new ApplicationContextImpl(contextId), ApplicationContext.class, unboundQualifiers));
contexts.add(new ContextHolder<SingletonContext>(new SingletonContextImpl(contextId), SingletonContext.class, unboundQualifiers));
contexts.add(new ContextHolder<BoundSessionContext>(new BoundSessionContextImpl(contextId, beanIdentifierIndex), BoundSessionContext.class, boundQualifires));
contexts.add(new ContextHolder<BoundConversationContext>(new BoundConversationContextImpl(contextId, services), BoundConversationContext.class, boundQualifires));
contexts.add(new ContextHolder<BoundRequestContext>(new BoundRequestContextImpl(contextId), BoundRequestContext.class, boundQualifires));
contexts.add(new ContextHolder<RequestContext>(new RequestContextImpl(contextId), RequestContext.class, unboundQualifiers));
contexts.add(new ContextHolder<DependentContext>(new DependentContextImpl(services.get(ContextualStore.class)), DependentContext.class, unboundQualifiers));
services.get(WeldModules.class).postContextRegistration(contextId, services, contexts);
/*
* Register the contexts with the bean manager and add the beans to the
* deployment manager so that they are easily accessible (contexts are app
* scoped)
*/
for (ContextHolder<? extends Context> context : contexts) {
deploymentManager.addContext(context.getContext());
deploymentManager.addBean(ContextBean.of(context, deploymentManager));
}
return contexts;
}
use of javax.enterprise.context.spi.Context in project core by weld.
the class BeanManagerImpl method internalGetContext.
private Context internalGetContext(Class<? extends Annotation> scopeType) {
Context activeContext = null;
final List<Context> ctx = contexts.get(scopeType);
if (ctx == null) {
return null;
}
for (Context context : ctx) {
if (context.isActive()) {
if (activeContext == null) {
activeContext = context;
} else {
throw BeanManagerLogger.LOG.duplicateActiveContexts(scopeType.getName());
}
}
}
return activeContext;
}
Aggregations