public abstract class AbstractBeanConfigurator extends Object implements BeanConfigurator
Modifier and Type | Class and Description |
---|---|
static class |
AbstractBeanConfigurator.BeanDefinition |
Modifier and Type | Field and Description |
---|---|
protected TypesConverter |
defaultTypesConverter |
protected Kernel |
kernel |
DEFAULT_CONFIGURATOR_NAME
Constructor and Description |
---|
AbstractBeanConfigurator() |
Modifier and Type | Method and Description |
---|---|
void |
configurationChanged()
Method applies configuration changes to bean.
|
void |
configure(BeanConfig beanConfig,
Object bean)
Configure bean.
|
void |
configure(BeanConfig beanConfig,
Object bean,
Map<String,Object> values)
Method configures passed bean with provided values.
|
static Map<String,Class<?>> |
getBeanClassesFromAnnotations(Kernel kernel,
Class<?> requiredClass)
Method looks for bean classes (classes annotated with
@Bean which has parent property
set to passed class. |
protected ArrayDeque<String> |
getBeanConfigPath(BeanConfig beanConfig)
Method returns queue of kernel and bean names to find bean config (path to the bean config from root of
the config).
|
protected Map<String,AbstractBeanConfigurator.BeanDefinition> |
getBeanDefinitions(Map<String,Object> values)
Method returns map of bean definitions found in the configuration
|
protected abstract Map<String,Object> |
getConfiguration(BeanConfig beanConfig)
Method returns configuration of a bean.
|
TypesConverter |
getDefaultTypesConverter()
Method returns default types converter used by bean configurator.
|
Kernel |
getKernel() |
abstract Map<String,Object> |
getProperties()
Method returns current configuration map.
|
protected Map<Field,Object> |
grabCurrentConfig(Object bean,
String beanName) |
protected Map<Field,Object> |
grabDefaultConfig(BeanConfig beanConfig,
Object bean) |
protected abstract boolean |
hasDirectConfiguration(BeanConfig bc) |
boolean |
isAccessToAllFields() |
protected static boolean |
isBeanClassRegisteredInParentKernel(Kernel kernel,
String name,
Class<?> clazz)
Method checkes if bean is already registered in parent kernel.
|
protected static Map<String,AbstractBeanConfigurator.BeanDefinition> |
mergeWithBeansPropertyValue(Map<String,AbstractBeanConfigurator.BeanDefinition> beanPropConfigMap,
Map<String,Object> values) |
protected void |
refreshConfiguration_removeUndefinedBeans(Kernel kernel) |
protected void |
refreshConfiguration_updateConfiguration(Kernel kernel) |
protected void |
refreshConfiguration(Kernel kernel) |
void |
registerBeans(BeanConfig beanConfig,
Object bean,
Map<String,Object> values)
Method registers all beans which are annotated by
@Bean and which parent property is
set to class which instance is passed. |
static void |
registerBeansForBeanOfClass(Kernel kernel,
Class<?> cls)
Method registers beans which classes are annotated with
@Bean and have parent set to
the class passed as parameter. |
protected static void |
registerBeansForBeanOfClass(Kernel kernel,
Class<?> requiredClass,
Set<Class<?>> classes) |
protected static List<Class<?>> |
registerBeansForBeanOfClassGetBeansToRegister(Kernel kernel,
Class<?> requiredClass,
Set<Class<?>> classes) |
protected static Bean |
registerBeansForBeanOfClassShouldRegister(Kernel kernel,
Class<?> requiredClass,
Class<?> cls) |
void |
restoreDefaults(String beanName)
Method restors default configuration of a bean
|
void |
setAccessToAllFields(boolean accessToAllFields) |
void |
setDefaultTypesConverter(TypesConverter defaultTypesConverter) |
void |
setKernel(Kernel kernel) |
@Inject(bean="defaultTypesConverter") protected TypesConverter defaultTypesConverter
@Inject(bean="kernel", nullAllowed=false) protected Kernel kernel
public static Map<String,Class<?>> getBeanClassesFromAnnotations(Kernel kernel, Class<?> requiredClass)
@Bean
which has parent
property
set to passed class.kernel
- instance of the KernelrequiredClass
- class to look for as parent
property value of @Bean
annotationprotected static boolean isBeanClassRegisteredInParentKernel(Kernel kernel, String name, Class<?> clazz)
kernel
- kernel instance to checkname
- name of the beanclazz
- expected class of the beanprotected static Map<String,AbstractBeanConfigurator.BeanDefinition> mergeWithBeansPropertyValue(Map<String,AbstractBeanConfigurator.BeanDefinition> beanPropConfigMap, Map<String,Object> values)
public static void registerBeansForBeanOfClass(Kernel kernel, Class<?> cls)
@Bean
and have parent
set to
the class passed as parameter.protected static void registerBeansForBeanOfClass(Kernel kernel, Class<?> requiredClass, Set<Class<?>> classes)
protected static List<Class<?>> registerBeansForBeanOfClassGetBeansToRegister(Kernel kernel, Class<?> requiredClass, Set<Class<?>> classes)
protected static Bean registerBeansForBeanOfClassShouldRegister(Kernel kernel, Class<?> requiredClass, Class<?> cls)
public abstract Map<String,Object> getProperties()
public void configure(BeanConfig beanConfig, Object bean, Map<String,Object> values)
public void configure(BeanConfig beanConfig, Object bean) throws KernelException
BeanConfigurator
configure
in interface BeanConfigurator
beanConfig
- internal bean configuration.bean
- bean to configure.KernelException
public TypesConverter getDefaultTypesConverter()
public void setDefaultTypesConverter(TypesConverter defaultTypesConverter)
public Kernel getKernel()
public void setKernel(Kernel kernel)
public boolean isAccessToAllFields()
public void setAccessToAllFields(boolean accessToAllFields)
public void registerBeans(BeanConfig beanConfig, Object bean, Map<String,Object> values)
@Bean
and which parent
property is
set to class which instance is passed. Additionally this method registers beans which definitions are passed
in the configuration.registerBeans
in interface BeanConfigurator
beanConfig
- bean config of initializing beanbean
- instance of initializing beanvalues
- configuration of a beanpublic void configurationChanged()
configurationChanged
in interface BeanConfigurator
public void restoreDefaults(String beanName)
protected abstract Map<String,Object> getConfiguration(BeanConfig beanConfig)
protected Map<Field,Object> grabDefaultConfig(BeanConfig beanConfig, Object bean)
protected Map<String,AbstractBeanConfigurator.BeanDefinition> getBeanDefinitions(Map<String,Object> values)
values
- configuration mapprotected ArrayDeque<String> getBeanConfigPath(BeanConfig beanConfig)
protected abstract boolean hasDirectConfiguration(BeanConfig bc)
protected void refreshConfiguration(Kernel kernel)
protected void refreshConfiguration_removeUndefinedBeans(Kernel kernel)
protected void refreshConfiguration_updateConfiguration(Kernel kernel)
Copyright © 2004–2021 "Tigase, Inc.". All rights reserved.