Skip to content
Commit afbc3e6d authored by Tobias Koenig's avatar Tobias Koenig
Browse files

Fix problems with outdated items/collections in monitor cache

All monitors of a process register at the ChangeMediator singleton now
and the ChangeMediator provides API to the Item/CollectionModifyJob to
mark an item or collection as modified. The ChangeMediator will trigger
all registered monitors to invalidate thos item/collection in their cache.

This fixes the following scenario: Client A executes a modify job, followed
by a move job. The parent resource of the item/collection handles the modification
in its itemChanged() method and propably adapts the remote id.
Afterwards, the itemMoved() method of the resource is called, however the passed
item contains the cached item from the monitor and not the updated on with the
new remote id.

By invalidating the item/collection cache in the monitor on every successfull
item/collection modify job ensures that the monitor always provides the up-to-date
data to the resource.
parent 994ec275
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment