setInstantiator(new InterceptorApplyingInstantiator<>( getInstantiator(), interceptionModel, getType()));
@Override public String toString() { return "InterceptorApplyingInstantiator for " + delegate(); }
@Override public T newInstance(CreationalContext<T> ctx, BeanManagerImpl manager) { InterceptionContext interceptionContext = null; if (ctx instanceof CreationalContextImpl<?>) { CreationalContextImpl<T> weldCtx = Reflections.cast(ctx); interceptionContext = weldCtx.getAroundConstructInterceptionContext(); } if (interceptionContext == null) { // There is no interception context to reuse interceptionContext = InterceptionContext.forNonConstructorInterception(interceptionModel, ctx, manager, annotatedType); } T instance = delegate().newInstance(ctx, manager); applyInterceptors(instance, interceptionContext); return instance; }
@Override public T newInstance(CreationalContext<T> ctx, BeanManagerImpl manager) { InterceptionContext interceptionContext = null; if (ctx instanceof CreationalContextImpl<?>) { CreationalContextImpl<T> weldCtx = Reflections.cast(ctx); interceptionContext = weldCtx.getAroundConstructInterceptionContext(); } if (interceptionContext == null) { // There is no interception context to reuse interceptionContext = InterceptionContext.forNonConstructorInterception(interceptionModel, ctx, manager, annotatedType); } T instance = delegate().newInstance(ctx, manager); applyInterceptors(instance, interceptionContext); return instance; }
@Override public T newInstance(CreationalContext<T> ctx, BeanManagerImpl manager) { InterceptionContext interceptionContext = null; if (ctx instanceof CreationalContextImpl<?>) { CreationalContextImpl<T> weldCtx = Reflections.cast(ctx); interceptionContext = weldCtx.getAroundConstructInterceptionContext(); } if (interceptionContext == null) { // There is no interception context to reuse interceptionContext = InterceptionContext.forNonConstructorInterception(interceptionModel, ctx, manager, annotatedType); } T instance = delegate().newInstance(ctx, manager); applyInterceptors(instance, interceptionContext); return instance; }
@Override public <T> BasicInjectionTarget<T> createMessageDrivenInjectionTarget(EnhancedAnnotatedType<T> type, EjbDescriptor<T> d, BeanManagerImpl manager) { InternalEjbDescriptor<T> descriptor = InternalEjbDescriptor.of(d); EnhancedAnnotatedType<T> implementationClass = SessionBeans.getEjbImplementationClass(descriptor, manager, type); Instantiator<T> instantiator = null; if (type.equals(implementationClass)) { instantiator = new DefaultInstantiator<T>(type, null, manager); } else { // Session bean subclassed by the EJB container instantiator = SubclassedComponentInstantiator.forSubclassedEjb(type, implementationClass, null, manager); } InterceptionModel interceptionModel = manager.getInterceptorModelRegistry().get(type.slim()); if (interceptionModel != null) { if (interceptionModel.hasExternalNonConstructorInterceptors()) { instantiator = SubclassedComponentInstantiator .forInterceptedDecoratedBean(implementationClass, null, (AbstractInstantiator<T>) instantiator, manager); instantiator = new InterceptorApplyingInstantiator<>(instantiator, interceptionModel, type.slim()); } if (interceptionModel.hasExternalConstructorInterceptors()) { instantiator = new ConstructorInterceptionInstantiator<>(instantiator, interceptionModel, type.slim()); } } return BasicInjectionTarget.createDefault(type, null, manager, instantiator); }
@Override public String toString() { return "InterceptorApplyingInstantiator for " + delegate(); }
@Override public T newInstance(CreationalContext<T> ctx, BeanManagerImpl manager) { InterceptionContext interceptionContext = null; if (ctx instanceof CreationalContextImpl<?>) { CreationalContextImpl<T> weldCtx = Reflections.cast(ctx); interceptionContext = weldCtx.getAroundConstructInterceptionContext(); } if (interceptionContext == null) { // There is no interception context to reuse interceptionContext = InterceptionContext.forNonConstructorInterception(interceptionModel, ctx, manager, annotatedType); } T instance = delegate().newInstance(ctx, manager); applyInterceptors(instance, interceptionContext); return instance; }
setInstantiator(new InterceptorApplyingInstantiator<T>(getInstantiator(), interceptionModel, getType()));
@Override public String toString() { return "InterceptorApplyingInstantiator for " + delegate(); }
@Override public T newInstance(CreationalContext<T> ctx, BeanManagerImpl manager) { InterceptionContext interceptionContext = null; if (ctx instanceof CreationalContextImpl<?>) { CreationalContextImpl<T> weldCtx = Reflections.cast(ctx); interceptionContext = weldCtx.getAroundConstructInterceptionContext(); } if (interceptionContext == null) { // There is no interception context to reuse interceptionContext = InterceptionContext.forNonConstructorInterception(interceptionModel, ctx, manager, annotatedType); } T instance = delegate().newInstance(ctx, manager); applyInterceptors(instance, interceptionContext); return instance; }
setInstantiator(new InterceptorApplyingInstantiator<T>(getInstantiator(), interceptionModel, getType()));
@Override public String toString() { return "InterceptorApplyingInstantiator for " + delegate(); }
@Override public T newInstance(CreationalContext<T> ctx, BeanManagerImpl manager) { InterceptionContext interceptionContext = null; if (ctx instanceof CreationalContextImpl<?>) { CreationalContextImpl<T> weldCtx = Reflections.cast(ctx); interceptionContext = weldCtx.getAroundConstructInterceptionContext(); } if (interceptionContext == null) { // There is no interception context to reuse interceptionContext = InterceptionContext.forNonConstructorInterception(interceptionModel, ctx, manager, annotatedType); } T instance = delegate().newInstance(ctx, manager); applyInterceptors(instance, interceptionContext); return instance; }
setInstantiator(new InterceptorApplyingInstantiator<T>(getInstantiator(), interceptionModel, getType()));
@Override public String toString() { return "InterceptorApplyingInstantiator for " + delegate(); }
setInstantiator(new InterceptorApplyingInstantiator<T>(getInstantiator(), interceptionModel, getType()));
@Override public String toString() { return "InterceptorApplyingInstantiator for " + delegate(); }
setInstantiator(new InterceptorApplyingInstantiator<T>(getInstantiator(), interceptionModel, getType()));
setInstantiator(new InterceptorApplyingInstantiator<T>(getInstantiator(), interceptionModel, getType()));