I’ll try to refactor the code in my local repo today. Please feel free if you have any advice.
------------------ Zhao Jun Apache Sharding-Sphere & ServiceComb > On Jan 15, 2019, at 11:37 AM, zhaojun <zhaoju...@126.com> wrote: > > 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 >>>>>>> >>>>> >>>> >>> >