तक पहुंचने के लिए स्प्रिंग एओपी पॉइंटकट अभिव्यक्ति मेरे पास कई विधियों के साथ एक सेवा इंटरफ़ेस है, जिनमें से सभी एक अनुरोध ऑब्जेक्ट लेते हैं और एक प्रतिक्रिया ऑब्जेक्ट वापस करते हैं। सभी अनुरोध वस्तुओं में एक आम पूर्वज होता है और सभी प्रतिक्रिया वस्तुओं के पास एक अलग आम पूर्वज होता है (जिसमें सफलता ध्वज और संदेश फ़ील्ड होता है)।विधि वापसी प्रकार
अब मैं एक ऐसा पहलू रखना चाहता हूं जो अनुमतियों की जांच करता है, सेवा कॉल करता है और कुछ विफल होने पर विफलता कोड के साथ प्रतिक्रिया ऑब्जेक्ट देता है। समस्या यह है: मुझे यह जानने की ज़रूरत है कि किस प्रकार का प्रतिक्रिया ऑब्जेक्ट बनाना है। क्या कोई पॉइंटकट अभिव्यक्ति है जो मुझे रिटर्न प्रकार तक पहुंच प्रदान करती है? ऐसा कुछ, शायद?
@Around(value = "execution(public *"
+ " com.mycompany.MyService+.*(..))"
+ " && args(request)"
+ " && returning(returnType)" // something like this would be nice
, argNames = "request,returnType")
public Object handleServiceCall(final ProceedingJoinPoint pjp,
final Request request,
final Class<? extends Response> returnType){ ... }
तो आप एक ही पहलू के साथ कई विधियों की सलाह देना चाहते हैं, जिन्हें कभी-कभी सेवा कॉल किए बिना प्रतिक्रिया ऑब्जेक्ट का उत्पादन करने और वापस करने की आवश्यकता होती है, और यह प्रतिक्रिया ऑब्जेक्ट सेवा विधि के लिए उचित उप प्रकार का होना चाहिए? –
yup, यह वही है जो मैं चाहता हूं कि –