2011-09-30 17 views
6

क्लाइंट पक्ष पर RequestFactory अनुरोधों को अवरुद्ध करने का कोई तरीका है?इंटरसेप्टिंग जीडब्ल्यूटी अनुरोध फैक्टरी अनुरोध

मैं इस तरह कॉल अवरोधन करना चाहते हैं:

dummyRequest.dummyOperation().fire(new Receiver<String>() { 
    @Override 
    public void onSuccess(String response) {   
    } 
}); 

विचार जब सर्वर से संचार कुछ लोड हो रहा है संकेत दिखाने के लिए है।

उत्तर

6

आप डिफ़ॉल्ट परिवहन कार्यान्वयन को ओवरराइड और आरएफ आरंभीकरण के दौरान इसे पारित कर सकते हैं:

SampleRequestFactory factory = GWT.create(SampleRequestFactory.class); 
factory.initialize(new SimpleEventBus(), new DefaultRequestTransport()); 

आप सुपर कार्यान्वयन कॉल करने से पहले DefaultRequestTransport से विरासत और विधि

send(String payload, TransportReceiver receiver) 

कुछ प्रसंस्करण करते ओवरराइड कर सकते हैं और परिणाम को संभालने के लिए एक प्रतिनिधि के साथ TransportReceiver लपेटें।

3
final DefaultRequestTransport requestTransport = new DefaultRequestTransport() { 
     @Override 
     public void send(final String payload, final TransportReceiver receiver) { 
      GWT.log("making rpc"); 
      final TransportReceiver proxy = new TransportReceiver() { 
       @Override 
       public void onTransportFailure(final ServerFailure failure) { 
        GWT.log("rpc returned"); 
        receiver.onTransportFailure(failure); 
       } 

       @Override 
       public void onTransportSuccess(final String payload) { 
        GWT.log("rpc returned"); 
        receiver.onTransportSuccess(payload); 
       } 
      }; 

      super.send(payload, proxy); 

} 
संबंधित मुद्दे