Friday, July 10, 2020

Java Design : Naming Standards

Creational Structural Behavioural
Abstract Factory Assember Accumumator
Factory Builder Advisor
Decorator Applier
Augmenter Buncher
Checker
Collector
Command
Controller
Decider
Editor
Executor
Exporter
Handler
Iterator
Loader
Matcher
Notifier
Searcher
Selector
summarizer
Weaver

Thursday, July 9, 2020

Dynamic handling Spring Flow


Dynamically create your own BeanDefinition

BeanDefinitionRegistryPostProcessor has a hook on the BeanDefinitionRegistry

@Component
public class DynamicRegistryPostProcessor
        implements BeanDefinitionRegistryPostProcessor {

    @Override
    public void postProcessBeanDefinitionRegistry(BeanDefinitionRegistry registry)
            throws BeansException {

        RootBeanDefinition beanDefinition =
                new RootBeanDefinition(MyServiceImpl.class); 
        serviceDefinition.setTargetType(MyService.class); 
        serviceDefinition.setRole(BeanDefinition.ROLE_APPLICATION);
        registry.registerBeanDefinition("myBeanName", beanDefinition );
    }
}