मेरे पास प्रतिक्रिया जेएस का उपयोग कर एक ग्रेल्स प्रोजेक्ट है। ग्रोवी फ़ाइल में से किसी एक में फ़ंक्शन की शुरुआत में कोड का अंश नीचे दिया गया है

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

मैं इस अद्यतन को खोजने की कोशिश कर रहा थाIntransInfoForLot परियोजना में कहीं और नहीं मिला। इसलिए मैंने द्वारा खोजने की कोशिश की

update.intrans.info

और मैंने नीचे एक और ग्रोवी फ़ाइल में पाया।

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

क्या मैं जान सकता हूँ कि यह @Selector क्या हैं और सूचित करें? वे एक साथ कैसे जुड़े हुए हैं और इस कोड में क्या चल रहा है? यह मददगार होगा यदि कोई मुझे उपयुक्त दस्तावेज के लिए वेबसाइट लिंक के साथ एक संक्षिप्त जानकारी दे सकता है जिसे मैं इस पर आगे पढ़ सकता हूं।

0
Venos 18 मई 2017, 22:22

2 जवाब

Grails डॉक्स में async अनुभाग पर एक नज़र डालें

0
Mike W 19 मई 2017, 12:24

यहाँ वास्तव में सरल उदाहरण है:

सूचित करें:

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

0
Rafał Gorzkowski 19 मई 2017, 16:53