Annotation Interface Bean
Defines name of bean.
This annotation is not required, but each bean must be named! Instead of using annotation, name of bean may be defined during registration.
-
Required Element Summary
Required ElementsModifier and TypeRequired ElementDescriptionbooleanIs active by default. *
trueif annotated bean (if registered) should be active (automatically loaded if required);falseif annotated bean will not be automatically loaded, even if it will be registered.Name of bean. *
This name will be used to find bean and load configuration for the bean. -
Optional Element Summary
Optional ElementsModifier and TypeOptional ElementDescriptionbooleanIs bean exportable?Class of a parent bean. *
Returns parent class for which this bean should always be registered. *
Following cases are supported:Objectif bean should never be automatically registeredKernelif bean should be automatically registered in the main/root kernel class implementingRegistrarBeanif bean should be loaded automatically for that classClass[]Classes of parent beans. *
In some cases same beans should be automatically registered for more than one class.Class<? extends BeanSelector>[]Automatic registration selectors. *
In some cases it is required/useful to decide if beans should be registered automatically depending on more global configuration option.
-
Element Details
-
name
String nameName of bean. *
This name will be used to find bean and load configuration for the bean.- Returns:
- name of bean.
-
active
boolean activeIs active by default. *
trueif annotated bean (if registered) should be active (automatically loaded if required);falseif annotated bean will not be automatically loaded, even if it will be registered. It will require manual activation in the configuration.
- Returns:
trueif bean should be automatically loaded
-
exportable
boolean exportableIs bean exportable? *
Exportable beans are available not only in the context of a kernel in which they are registered but are available also to all beans registered in subkernels.- Returns:
trueif bean should be available also in subkernels
- Default:
false
-
parent
Class parentClass of a parent bean. *
Returns parent class for which this bean should always be registered. *
Following cases are supported:Objectif bean should never be automatically registeredKernelif bean should be automatically registered in the main/root kernel- class implementing
RegistrarBeanif bean should be loaded automatically for that class
- Returns:
- parent class for which this class should be automatically registered
- Default:
java.lang.Object.class
-
parents
Class[] parentsClasses of parent beans. *
In some cases same beans should be automatically registered for more than one class. This method allows to return more than one class.- Returns:
- array of classes for which this class should be automatically registered
- See Also:
- Default:
{}
-
selectors
Class<? extends BeanSelector>[] selectorsAutomatic registration selectors. *
In some cases it is required/useful to decide if beans should be registered automatically depending on more global configuration option. This method returns array ofBeanSelectorclasses which provide a logic deciding if bean should be automatically loaded or not. *
Will only work ifparent()orparents()returns correct values.- Returns:
- array of classes deciding if bean should be automatically loaded.
- Default:
{}
-