Class MockBean.Builder<T>

  • Type Parameters:
    T -
    Enclosing class:
    MockBean<T>

    public static class MockBean.Builder<T>
    extends Object
    A builder instance should not be reused nor shared.
    Author:
    Martin Kouba
    • Method Detail

      • beanClass

        public MockBean.Builder<T> beanClass​(Class<?> beanClass)
        Parameters:
        beanClass -
        Returns:
        self
        See Also:
        Bean.getBeanClass()
      • name

        public MockBean.Builder<T> name​(String name)
        Parameters:
        name -
        Returns:
        self
        See Also:
        BeanAttributes.getName()
      • types

        public MockBean.Builder<T> types​(Type... types)
        Parameters:
        types -
        Returns:
        self
        See Also:
        BeanAttributes.getTypes()
      • qualifiers

        public MockBean.Builder<T> qualifiers​(Annotation... qualifiers)
        Parameters:
        qualifiers -
        Returns:
        self
        See Also:
        BeanAttributes.getQualifiers()
      • alternative

        public MockBean.Builder<T> alternative​(boolean value)
        Parameters:
        value -
        Returns:
        self
        See Also:
        BeanAttributes.isAlternative()
      • priority

        public MockBean.Builder<T> priority​(int priority)
        Programmatic equivalent to to putting Priority annotation on a bean class. Allows for globally enabled alternatives.
        Parameters:
        priority -
        Returns:
        self
        See Also:
        Prioritized.getPriority()
      • globallySelectedAlternative

        public MockBean.Builder<T> globallySelectedAlternative​(int priority)
        This beans is a globally enabled alternative with a priority equal to its method parameter. Calling this method is a shortcut for priority(int) and alternative(boolean)
        Parameters:
        priority -
        Returns:
        self
      • selectedAlternative

        public MockBean.Builder<T> selectedAlternative()
        The bean is an alternative and should be automatically selected for the synthetic bean archive.

        Users are encouraged to specify beanClass(Class) when using this method. The bean class is used to determine which alternative beans are selected for a bean archive. By default, all mock beans share the same bean class - org.jboss.weld.junit.WeldCDIExtension.

        Returns:
        self
        See Also:
        BeanAttributes.isAlternative(), Weld.addAlternative(Class), selectedAlternative(Class)
      • selectedAlternative

        public MockBean.Builder<T> selectedAlternative​(Class<?> beanClass)
        The bean has the given bean class, is an alternative and should be automatically selected for the synthetic bean archive.
        Parameters:
        beanClass -
        Returns:
        self
        See Also:
        selectedAlternative(), beanClass(Class)
      • stereotypes

        public MockBean.Builder<T> stereotypes​(Class<? extends Annotation>... stereotypes)
        Parameters:
        stereotypes -
        Returns:
        self
        See Also:
        BeanAttributes.getStereotypes()
      • creating

        public MockBean.Builder<T> creating​(T instance)
        Each invocation of Contextual.create(CreationalContext) will return the same instance.
        Parameters:
        instance -
        Returns:
        self
      • useUnmanaged

        public MockBean.Builder<T> useUnmanaged​(Class<T> beanClass)
        Use Unmanaged to create/destroy the bean instance.

        NOTE: CreationalContext#toString() is used as a key in a map and therefore must be unique for the lifetime of a bean instance. Weld implementation fulfills this requirement.

        Returns:
        self
        See Also:
        Unmanaged.UnmanagedInstance