Skip to content

Commit

Permalink
Replace usage of deprecated beanManager.createInjectionTarget
Browse files Browse the repository at this point in the history
Signed-off-by: arjantijms <[email protected]>
  • Loading branch information
arjantijms authored and senivam committed Dec 15, 2021
1 parent 9c8628a commit bdb0dd0
Show file tree
Hide file tree
Showing 9 changed files with 40 additions and 15 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@
import javax.enterprise.inject.spi.AnnotatedType;
import javax.enterprise.inject.spi.BeanManager;
import javax.enterprise.inject.spi.InjectionTarget;
import javax.enterprise.inject.spi.InjectionTargetFactory;

/**
* @author Hardy Ferentschik
Expand Down Expand Up @@ -43,7 +44,9 @@ public void destroy() {

private InjectionTarget<T> createInjectionTarget(BeanManager beanManager, Class<T> type) {
AnnotatedType<T> annotatedType = beanManager.createAnnotatedType(type);
return beanManager.createInjectionTarget(annotatedType);
InjectionTargetFactory<T> injectionTargetFactory = beanManager.getInjectionTargetFactory(annotatedType);

return injectionTargetFactory.createInjectionTarget(null);
}

private static <T> T createAndInjectBeans(BeanManager beanManager, InjectionTarget<T> injectionTarget) {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/*
* Copyright (c) 2015, 2019 Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2015, 2021 Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2018 Payara Foundation and/or its affiliates.
*
* This program and the accompanying materials are made available under the
Expand Down Expand Up @@ -35,6 +35,7 @@
import javax.enterprise.inject.spi.Extension;
import javax.enterprise.inject.spi.InjectionPoint;
import javax.enterprise.inject.spi.InjectionTarget;
import javax.enterprise.inject.spi.InjectionTargetFactory;
import javax.enterprise.util.AnnotationLiteral;

/**
Expand Down Expand Up @@ -69,7 +70,10 @@ private void beforeBeanDiscovery(@Observes BeforeBeanDiscovery beforeBeanDiscove
private void afterBeanDiscovery(@Observes AfterBeanDiscovery afterBeanDiscovery, BeanManager beanManager) {

// we need the injection target so that CDI could instantiate the original interceptor for us
final InjectionTarget<CdiExternalRequestScope> interceptorTarget = beanManager.createInjectionTarget(requestScopeType);
final InjectionTargetFactory<CdiExternalRequestScope> injectionTargetFactory =
beanManager.getInjectionTargetFactory(requestScopeType);
final InjectionTarget<CdiExternalRequestScope> interceptorTarget =
injectionTargetFactory.createInjectionTarget(null);


afterBeanDiscovery.addBean(new Bean<CdiExternalRequestScope>() {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -37,6 +37,7 @@
import javax.enterprise.inject.spi.Extension;
import javax.enterprise.inject.spi.InjectionPoint;
import javax.enterprise.inject.spi.InjectionTarget;
import javax.enterprise.inject.spi.InjectionTargetFactory;
import javax.enterprise.util.AnnotationLiteral;
import javax.interceptor.Interceptor;

Expand Down Expand Up @@ -100,7 +101,10 @@ private void afterBeanDiscovery(@Observes AfterBeanDiscovery afterBeanDiscovery,

// we need the injection target so that CDI could instantiate the original interceptor for us
final AnnotatedType<ValidationInterceptor> interceptorType = interceptorAnnotatedType;
final InjectionTarget<ValidationInterceptor> interceptorTarget = beanManager.createInjectionTarget(interceptorType);
final InjectionTargetFactory<ValidationInterceptor> injectionTargetFactory =
beanManager.getInjectionTargetFactory(interceptorType);
final InjectionTarget<ValidationInterceptor> interceptorTarget =
injectionTargetFactory.createInjectionTarget(null);


afterBeanDiscovery.addBean(new Bean<ValidationInterceptor>() {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,7 @@
import javax.enterprise.inject.spi.Bean;
import javax.enterprise.inject.spi.BeanManager;
import javax.enterprise.inject.spi.InjectionTarget;
import javax.enterprise.inject.spi.InjectionTargetFactory;
import javax.ws.rs.HttpMethod;
import javax.ws.rs.Path;
import javax.ws.rs.RuntimeType;
Expand Down Expand Up @@ -105,7 +106,8 @@ public static <T> void registerBean(RuntimeType runtimeType, InitializableInstan
public static <T> BindingBeanPair registerBean(RuntimeType runtimeType, ClassBinding<T> binding, AfterBeanDiscovery abd,
Collection<InjectionResolver> resolvers, BeanManager beanManager) {
AnnotatedType<T> annotatedType = beanManager.createAnnotatedType(binding.getService());
InjectionTarget<T> injectionTarget = beanManager.createInjectionTarget(annotatedType);
InjectionTargetFactory<T> injectionTargetFactory = beanManager.getInjectionTargetFactory(annotatedType);
InjectionTarget<T> injectionTarget = injectionTargetFactory.createInjectionTarget(null);

ClassBean<T> bean = new ClassBean<>(runtimeType, binding);
bean.setInjectionTarget(getJerseyInjectionTarget(binding.getService(), injectionTarget, bean, resolvers));
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,7 @@
import javax.enterprise.inject.spi.Bean;
import javax.enterprise.inject.spi.BeanManager;
import javax.enterprise.inject.spi.InjectionTarget;
import javax.enterprise.inject.spi.InjectionTargetFactory;
import javax.enterprise.inject.spi.Unmanaged;
import javax.inject.Singleton;
import javax.ws.rs.RuntimeType;
Expand Down Expand Up @@ -295,10 +296,12 @@ public <T> List<T> getAllInstances(Type contractOrImpl) {
@Override
@SuppressWarnings("unchecked")
public void inject(Object instance) {
CreationalContext creationalContext = createCreationalContext(null);
AnnotatedType annotatedType = beanManager.createAnnotatedType((Class) instance.getClass());
InjectionTarget injectionTarget = beanManager.createInjectionTarget(annotatedType);
CreationalContext context = createCreationalContext(null);
injectionTarget.inject(instance, context);
InjectionTargetFactory injectionTargetFactory = beanManager.getInjectionTargetFactory(annotatedType);
InjectionTarget injectionTarget = injectionTargetFactory.createInjectionTarget(null);

injectionTarget.inject(instance, creationalContext);
}

@Override
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,7 @@
import javax.enterprise.inject.spi.BeanManager;
import javax.enterprise.inject.spi.InjectionPoint;
import javax.enterprise.inject.spi.InjectionTarget;
import javax.enterprise.inject.spi.InjectionTargetFactory;
import javax.enterprise.util.AnnotationLiteral;
import javax.inject.Singleton;

Expand All @@ -49,7 +50,8 @@ public class RequestScopeBean implements Bean<CdiRequestScope> {
*/
public RequestScopeBean(BeanManager beanManager) {
AnnotatedType<CdiRequestScope> annotatedType = beanManager.createAnnotatedType(CdiRequestScope.class);
this.injectionTarget = beanManager.createInjectionTarget(annotatedType);
InjectionTargetFactory<CdiRequestScope> injectionTargetFactory = beanManager.getInjectionTargetFactory(annotatedType);
this.injectionTarget = injectionTargetFactory.createInjectionTarget(null);
}

@Override
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,7 @@
import javax.enterprise.inject.spi.Bean;
import javax.enterprise.inject.spi.BeanManager;
import javax.enterprise.inject.spi.InjectionTarget;
import javax.enterprise.inject.spi.InjectionTargetFactory;
import javax.enterprise.inject.spi.Unmanaged;

import org.glassfish.jersey.inject.cdi.se.bean.JerseyBean;
Expand Down Expand Up @@ -236,9 +237,11 @@ public <T> List<T> getAllInstances(Type contractOrImpl) {
@SuppressWarnings("unchecked")
public void inject(Object instance) {
if (isInitialized()) {
AnnotatedType annotatedType = beanManager.createAnnotatedType((Class) instance.getClass());
InjectionTarget injectionTarget = beanManager.createInjectionTarget(annotatedType);
CreationalContext context = beanManager.createCreationalContext(null);
AnnotatedType annotatedType = beanManager.createAnnotatedType((Class) instance.getClass());
InjectionTargetFactory injectionTargetFactory = beanManager.getInjectionTargetFactory(annotatedType);
InjectionTarget injectionTarget = injectionTargetFactory.createInjectionTarget(null);

injectionTarget.inject(instance, context);
}
}
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/*
* Copyright (c) 2017, 2018 Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2017, 2021 Oracle and/or its affiliates. All rights reserved.
*
* This program and the accompanying materials are made available under the
* terms of the Eclipse Public License v. 2.0, which is available at
Expand Down Expand Up @@ -30,6 +30,7 @@
import javax.enterprise.inject.spi.BeanManager;
import javax.enterprise.inject.spi.InjectionPoint;
import javax.enterprise.inject.spi.InjectionTarget;
import javax.enterprise.inject.spi.InjectionTargetFactory;
import javax.enterprise.util.AnnotationLiteral;
import javax.inject.Singleton;

Expand All @@ -49,7 +50,8 @@ public class RequestScopeBean implements Bean<CdiRequestScope> {
*/
public RequestScopeBean(BeanManager beanManager) {
AnnotatedType<CdiRequestScope> annotatedType = beanManager.createAnnotatedType(CdiRequestScope.class);
this.injectionTarget = beanManager.createInjectionTarget(annotatedType);
InjectionTargetFactory<CdiRequestScope> injectionTargetFactory = beanManager.getInjectionTargetFactory(annotatedType);
this.injectionTarget = injectionTargetFactory.createInjectionTarget(null);
}

@Override
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/*
* Copyright (c) 2017, 2018 Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2017, 2021 Oracle and/or its affiliates. All rights reserved.
*
* This program and the accompanying materials are made available under the
* terms of the Eclipse Public License v. 2.0, which is available at
Expand All @@ -26,6 +26,7 @@
import javax.enterprise.inject.spi.Bean;
import javax.enterprise.inject.spi.BeanManager;
import javax.enterprise.inject.spi.InjectionTarget;
import javax.enterprise.inject.spi.InjectionTargetFactory;

import org.glassfish.jersey.inject.cdi.se.injector.CachedConstructorAnalyzer;
import org.glassfish.jersey.inject.cdi.se.injector.InjectionUtils;
Expand Down Expand Up @@ -99,7 +100,8 @@ public static <T> void registerBean(InstanceBinding<T> binding, AfterBeanDiscove
public static <T> void registerBean(ClassBinding<T> binding, AfterBeanDiscovery abd, Collection<InjectionResolver> resolvers,
BeanManager beanManager) {
AnnotatedType<T> annotatedType = beanManager.createAnnotatedType(binding.getService());
InjectionTarget<T> injectionTarget = beanManager.createInjectionTarget(annotatedType);
InjectionTargetFactory<T> injectionTargetFactory = beanManager.getInjectionTargetFactory(annotatedType);
InjectionTarget<T> injectionTarget = injectionTargetFactory.createInjectionTarget(null);

ClassBean<T> bean = new ClassBean<>(binding);
bean.setInjectionTarget(getJerseyInjectionTarget(binding.getService(), injectionTarget, bean, resolvers));
Expand Down

0 comments on commit bdb0dd0

Please sign in to comment.