Class AbstractMemberProducer<X,T>

java.lang.Object
org.jboss.weld.injection.producer.AbstractProducer<T>
org.jboss.weld.injection.producer.AbstractMemberProducer<X,T>
All Implemented Interfaces:
jakarta.enterprise.inject.spi.Producer<T>
Direct Known Subclasses:
ProducerFieldProducer, ProducerMethodProducer

public abstract class AbstractMemberProducer<X,T> extends AbstractProducer<T>
Common functionality for Producers backing producer fields and producer methods.
Author:
Jozef Hartinger, Marko Luksa
  • Constructor Details

  • Method Details

    • checkDeclaringBean

      protected void checkDeclaringBean()
    • checkProducerReturnType

      protected void checkProducerReturnType(EnhancedAnnotatedMember<T,? super X,? extends Member> enhancedMember)
    • producerWithInvalidTypeVariable

      protected abstract DefinitionException producerWithInvalidTypeVariable(jakarta.enterprise.inject.spi.AnnotatedMember<?> member)
    • producerWithInvalidWildcard

      protected abstract DefinitionException producerWithInvalidWildcard(jakarta.enterprise.inject.spi.AnnotatedMember<?> member)
    • producerWithParameterizedTypeWithTypeVariableBeanTypeMustBeDependent

      protected abstract DefinitionException producerWithParameterizedTypeWithTypeVariableBeanTypeMustBeDependent(jakarta.enterprise.inject.spi.AnnotatedMember<?> member)
    • getReceiver

      protected Object getReceiver(jakarta.enterprise.context.spi.CreationalContext<?> productCreationalContext, jakarta.enterprise.context.spi.CreationalContext<?> receiverCreationalContext)
      Gets the receiver of the product. The two creational contexts need to be separated because the receiver only serves the product creation (it is not a dependent instance of the created instance).
      Parameters:
      productCreationalContext - the creational context of the produced instance
      receiverCreationalContext - the creational context of the receiver
      Returns:
      The receiver
    • dispose

      public void dispose(T instance)
    • produce

      public T produce(jakarta.enterprise.context.spi.CreationalContext<T> ctx)
    • getDisposalMethod

      public DisposalMethod<?,?> getDisposalMethod()
    • isTypeSerializable

      protected boolean isTypeSerializable(Object object)
    • getBeanManager

      public abstract BeanManagerImpl getBeanManager()
    • getDeclaringBean

      public abstract jakarta.enterprise.inject.spi.Bean<X> getDeclaringBean()
    • getBean

      public abstract jakarta.enterprise.inject.spi.Bean<T> getBean()
      Description copied from class: AbstractProducer
      Returns a Bean this producer is associated with or null if no such bean exists.
      Specified by:
      getBean in class AbstractProducer<T>
    • getAnnotated

      public abstract jakarta.enterprise.inject.spi.AnnotatedMember<? super X> getAnnotated()
      Specified by:
      getAnnotated in class AbstractProducer<T>
    • produce

      protected abstract T produce(Object receiver, jakarta.enterprise.context.spi.CreationalContext<T> ctx)
    • toString

      public String toString()
      Overrides:
      toString in class Object