2017-05-18 12 views
0

私は、反応jsを使ってgrailsプロジェクトを持っています。以下のコードの一部は、グルーヴィーなファイルの1@Selector and notify

に関数の先頭に
@Selector('update.intrans.info') 
    def updateIntransInfoForLot(String lotNumber) { 
     log.info "updateIntransInfoForLot: $lotNumber" 
     def lot = Lot.findByAlotNumber(lotNumber) 
...................//some code here 
lot.save(flush:true) 

である私は他のプロジェクトでこのupdateIntransInfoForLotを見つけようとしましたが、見つけることができませんでした。だから私は

update.intrans.info

で検索しようとしましたが、私は別のグルーヴィーなファイルに以下を発見しました。

notify 'update.intrans.info', lot.alotNumber 
result = [type: 'lot', function: 'releaseIntransLot', arguments: [mapFields(lot)]] 

この@Selectorについて知り、通知することができますか?どのようにリンクされ、このコードで何が起こっていますか?誰でも私にこれをさらに読むことができる適切な文書へのウェブサイトのリンクを簡単に伝えることができれば助けになるだろう。

答えて

0

ここでGrailsのドキュメント

0

asyncセクションを見てください、本当に簡単な例です:

は通知:

def sendFromPrimaryAccount() { 
    notify 'pl.stepwise.primary.mail', new MyEvent() 
} 

とソースコード: https://github.com/rgorzkowski/grails-multiple-mail-senders/blob/master/grails-app/services/pl/stepwise/MailSenderService.groovy

セレクタ:

@Selector('pl.stepwise.primary.mail') 
def handler(MyEvent event) { 
    .... 
} 

ソースコード: https://github.com/rgorzkowski/grails-multiple-mail-senders/blob/master/grails-app/services/pl/stepwise/EmailNotificationService.groovy