org.jboss.resteasy.cdi
Class CdiPropertyInjector

java.lang.Object
  extended by org.jboss.resteasy.cdi.CdiPropertyInjector
All Implemented Interfaces:
PropertyInjector

public class CdiPropertyInjector
extends Object
implements PropertyInjector

JAX-RS property injection is performed twice on CDI Beans. Firstly by the JaxrsInjectionTarget wrapper and then again by RESTEasy (which operates on Weld proxies instead of the underlying instances). To eliminate this, we enabled the injector only for non-CDI beans (JAX-RS components outside of BDA) or CDI components that are not JAX-RS components (i.e. @Form objects).

Author:
Jozef Hartinger

Constructor Summary
CdiPropertyInjector(PropertyInjector delegate, Class<?> clazz, Map<Class<?>,Type> sessionBeanInterface, javax.enterprise.inject.spi.BeanManager manager)
           
 
Method Summary
 void inject(HttpRequest request, HttpResponse response, Object target)
          Inject values into annotated properties (fields/setter methods) of the target object.
 void inject(Object target)
          Inject values into annotated properties (fields/setter methods) of the target object.
 String toString()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

CdiPropertyInjector

public CdiPropertyInjector(PropertyInjector delegate,
                           Class<?> clazz,
                           Map<Class<?>,Type> sessionBeanInterface,
                           javax.enterprise.inject.spi.BeanManager manager)
Method Detail

inject

public void inject(Object target)
Description copied from interface: PropertyInjector
Inject values into annotated properties (fields/setter methods) of the target object. This method should only be used outside the scope of an HTTP request.

Specified by:
inject in interface PropertyInjector

inject

public void inject(HttpRequest request,
                   HttpResponse response,
                   Object target)
            throws Failure,
                   WebApplicationException,
                   ApplicationException
Description copied from interface: PropertyInjector
Inject values into annotated properties (fields/setter methods) of the target object. This method should only be used inside the scope of an HTTP request.

Specified by:
inject in interface PropertyInjector
Throws:
Failure
WebApplicationException
ApplicationException

toString

public String toString()
Overrides:
toString in class Object


Copyright © 2011. All Rights Reserved.