Hi, Zheng Feng Both are ok.
I saw in [1] that the TransactionContext is passed using parameters. I just recommend passing some parameters in a consistent way. [1] https://issues.apache.org/jira/browse/SCB-785?focusedCommentId=16561332&page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel#comment-16561332 Best regards, Lei Zhang On November 13, 2019 at 9:45:58 PM, Zheng Feng (zh.f...@gmail.com) wrote: I'm not very clear what could be benefited from these changes ? with declaring the OmegaContext explicitly ? Willem Jiang <willem.ji...@gmail.com> 于2019年11月13日周三 下午3:47写道: > If it is optional, we need to inject the OmegaContext dynamically and > provide a wrap method for it. > > Willem Jiang > > Twitter: willemjiang > Weibo: 姜宁willem > > On Wed, Nov 13, 2019 at 3:42 PM Zhang Lei <coolbee...@gmail.com> wrote: > > > > Hi, Willem Jiang > > > > I think OmegaContext is an optional parameter in the method > > > > > > Best regards, > > Lei Zhang > > > > On November 13, 2019 at 2:48:08 PM, Willem Jiang (willem.ji...@gmail.com > ) > > wrote: > > > > Just a quick question, if user call the booking() method, he need to > > pass the OmegaContext as a parameter. > > What if the invoker doesn't know anything about the OmegaContext. > > > > > > Willem Jiang > > > > Twitter: willemjiang > > Weibo: 姜宁willem > > > > On Tue, Nov 12, 2019 at 11:34 PM Zhang Lei <coolbee...@gmail.com> wrote: > > > > > > Hi, Pack Team > > > > > > Currently, the @Autowired annotation is required to get the > OmegaContext > > on > > > the Omega side, but most of the early use does not know the existence > of > > > the OmegaContext object. > > > > > > @Autowired > > > OmegaContext omegaContext; > > > > > > @SagaStart > > > public void booking() { > > > omegaContext.globalTxId() > > > ... > > > } > > > > > > @Compensable(compensationMethod="cancel") > > > public void car(String from, int amount) { > > > omegaContext.globalTxId() > > > ... > > > } > > > > > > > > > Maybe we should allow the user to get the OmegaContext via method > > > parameters. Use the method below to define the OmegaContext parameter. > > > > > > @SagaStart > > > public void booking(OmegaContext omegaContext) { > > > omegaContext.globalTxId() > > > ... > > > } > > > > > > @Compensable(compensationMethod="cancel") > > > public void car(OmegaContext omegaContext, String from, int amount) { > > > omegaContext.globalTxId() > > > ... > > > } > > > > > > Any suggestion? > > > > > > Best regards, > > > Lei Zhang >