Remove FileContents::origin and Feed::origin.
FileContents no longer depends on keeping its list of TextFragments in sync with the corresponding array of items in the Client's feed. Instead, whenever FileContents is updated, we compare the list of ids we previously had with the new one, and use that to update all our fields that refer to indices in our list. This refactoring is groundwork for supporting changes to the list that aren't rigid, in the sense that the distance between existing items changes. In particular, this will enable us to handle an item being deleted from a feed we're watching. The previously tiny wrapper method File::update_items now contains all the code to do these updates, including the complicated handling for what happens if an item we were interested in has actually vanished.
parent
fcf5ee04
No related branches found
Tags debian/0.9.55
Loading
Please register or sign in to comment