A map that can have its changes observed via subscribing an IMapObserver
For each observer subscribed to this
observer.onAddedwill be called when an item is added to the collection
observer.onRemovedwill be called when an item is removed from the collection
observer.onUpdatedwill be called when an item has some of its properties changed
observer.onCollectionUpdatedwill be called when some set of the above events have occured (item added/removed/updated)
When first subscribing, the observers'
onAdded will be called for each item in the collection, and then again as items are added.
onCollectionUpdated will always give an up-to-date view of the collection.
onCollectionUpdated, on first subscription, will be called once with the entire collection, and then again as changes to the collection occur.
The type of the items in the map being observed.