client = ElisaHttpClient(pipeline=True) dfr = CancellableDeferred() model = ListModel() import pdb def connected(result, uris): for uri in uris: fetch_dfr = client.request(str(uri.path+'?'+uri.get_params_string())) fetch_dfr.addCallback(fetched) fetch_dfr.addCallback(streamed) fetch_dfr.addCallback(finished) def fetched(response): return BufferedStream(response.stream).read() def streamed(data): #parse data pdb.set_trace() return Model() def finished(model): pdb.set_trace() dfr.callback(model) pdb.set_trace() connect_dfr = client.open(MediaUri(self.ml2_base).host) connect_dfr.addCallback(connected, ml2_uris[1])