Hi, Willem 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. ------------------ Zhao Jun Apache Sharding-Sphere & ServiceComb > On Jan 15, 2019, at 9:47 AM, Willem Jiang <willem.ji...@gmail.com> wrote: > > Here are some of my comments for the design: > 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. > > Willem Jiang > > Twitter: willemjiang > Weibo: 姜宁willem > > On Mon, Jan 14, 2019 at 7:38 PM zhaojun <zhaoju...@126.com> wrote: >> >> I have made omega design for this issue[1], please feel free to give me some >> advice. >> >> >> [1] >> https://cwiki.apache.org/confluence/display/SERVICECOMB/refactor+design+of+service-comb+pack+omega >> >> >> ------------------ >> Zhao Jun >> Apache Sharding-Sphere & ServiceComb >> >>> On Jan 14, 2019, at 5:27 PM, zhaojun <zhaoju...@126.com> wrote: >>> >>> I have created SCB-1113[1] to track this issue. >>> >>> [1] https://issues.apache.org/jira/browse/SCB-1113 >>> >>> ------------------ >>> Zhao Jun >>> Apache Sharding-Sphere & ServiceComb >>> >>>> On Jan 14, 2019, at 5:21 PM, zhaojun <zhaoju...@126.com> wrote: >>>> >>>> OK, let me create a JIRA, and try to refactor it >>>> >>>> ------------------ >>>> Zhao Jun >>>> Apache Sharding-Sphere & ServiceComb >>>> >>>> >>>>> On Jan 14, 2019, at 4:50 PM, Willem Jiang <willem.ji...@gmail.com> wrote: >>>>> >>>>> Yeah, we just need to think about starting the Omega context by wiring >>>>> the components through Spring API, then wrap it with Spring Boot >>>>> Starter API. >>>>> In this way we could support to inject the Omega context not only to >>>>> the Spring Boot Application but also Spring Application. >>>>> >>>>> Willem Jiang >>>>> >>>>> Twitter: willemjiang >>>>> Weibo: 姜宁willem >>>>> >>>>> On Mon, Jan 14, 2019 at 3:09 PM zhaojun <zhaoju...@126.com> wrote: >>>>>> >>>>>> Hi, all >>>>>> >>>>>> I think we should provide api way to bootstrap omega and alpha. >>>>>> Now our code was tightly coupled with spring-boot, it is not possible >>>>>> for integrated with other middleware. >>>>>> We should provide Omega.init(), Alpha.init() api, spring-boot was just >>>>>> one implementation for Pack. >>>>>> >>>>>> Any thought? >>>>>> >>>>>> ------------------ >>>>>> Zhao Jun >>>>>> Apache Sharding-Sphere & ServiceComb >>>>>> >>>> >>> >>