xbmc/xbmc — pull request #1582 by alcoheca (2012-10-09 09:35:02+00:00)
Title: Upnp cache notify

This should hopefully go in to - as it stands we never tell clients that items have been updated. They must restart XBMC in order to get a refreshed listing.

This is a ContentDirectory:1 compliant (though not particularly efficient) way of handling this.

Everytime an item is updated and announced, we increment the container's updateid and set a modified bit. Then we update the ContainerUpdateIDs statevariable in Platinum. Clients are then notified.

ContentDirectory:3 has a better way to achieve this - only updating the actual object's metadata, not the entire container but that is a lot more work to achieve.

Users can disable this if they find it annoying (enabled by default).

We should look at the list of which containers are updated for particular events (ie VideoDb scan), MusicItem being updated, as currently every item is updated after a play event - and therefore the Songs / Movies container is updated - which is a performance nightmare.