/// <summary> /// handles the response stream /// copies it into the memory stream, or parses it into a feed. /// </summary> /// <param name="data"></param> /// <param name="responseStream"></param> /// <param name="contentLength"></param> /// <returns></returns> protected virtual void HandleResponseStream(AsyncData data, Stream responseStream, long contentLength, IService service) { data.DataStream = CopyResponseToMemory(data, responseStream, contentLength); IAsyncEntryData entryData = data as IAsyncEntryData; Service serviceImpl = service as Service; if (entryData != null && service != null) { entryData.Entry = serviceImpl.CreateAndParseEntry(data.DataStream, data.UriToUse); } }
/// <summary> /// constructor. takes the async data blob /// </summary> /// <param name="data">async data to constructor</param> internal AsyncOperationCompletedEventArgs(AsyncData data) : base(data.Exception, false, data.UserData) { feedObject = data.Feed; stream = data.DataStream; IAsyncEntryData entryData = data as IAsyncEntryData; if (entryData != null) { entryObject = entryData.Entry; } }