dash box is the main feather need to be refactored.

  1. omega-api module provide bootstrap interface which can be integrated with spring-boot and other middleware
  2. In omega-spring module, we can extend AbstractAutoProxyCreator that annotation scan and adviser wave would gracefully implement.
  3. in omega-core module, we can introduce transaction engine function where client timeout can be easily implement.


  • No labels

2 Comments

  1. 1. I don't think we need to use the internal AOP API (AbstractAutoProxyCreator),  current AOP solution is much straightforward, we don't need to bind to the internal API unless we want to create the proxy ourselves.
    2. In ServiceComb starter, we have the configure to setup beans of Omega to use, I think we just need to find a way to reuse this code in none Spring Boot application.
    3.  +1 to create the Transaction Engine in the Omega Core.

  2. Thanks for the comment.

    1. Current implement we use @EnableAspectJAutoProxy to create proxy bean, please see TransactionAspectConfig.
       it will auto-config AnontaionAwareAspectJAutoProxyCreator, this is the AspectJ implementation for AbstractAutoProxyCreator.
       If we exetend AbstractAutoProxyCreator directly, we can control the annotation and proxy creator more flexible.
       We can complete annotation parse within proxy creator instead of defining another BeanPostProcessor to parse it.
       In one word, we can make currently implement more better.

    2. Yes, we can find a way to aggregate this code together, and provider a api interface for spring-boot.