Annotations, recurrence instances etc

Various cases

Simple event

BwEventObj entity - indexed by uid

Single detached recurrence instance

Might occur if an attendee is invited to a single instance of a recurring meeting. Or if we import a recurrence instance. BwEventObj entity - indexed by uid and rid.

We might be invited to more than one instance so we need the rid to distinguish.

Annotated single event

BwEventAnnotation referring to a !BWEventObj - indexed by uid

Annotated Single detached recurrence instance

BwEventAnnotation referring to a !BWEventObj - indexed by uid adn rid

Recurring event - no overrides

BwEventObj as master event. Instances created in instance table to provide indexing. BwEventProxy created for each instance with annotation providing date/time etc

Recurring event - overrides

As above but we will also retrieve annotation objects with same uid, rid to identify instance, override flag set to indicate overrides.

Extra complications

Annotations to annotations.

Trying to make this work correctly in 3.5

problem 1 - unable to retrieve single detached recurrence

Potential solution was to remove masterOnly flag in CoreEvents.eventsQuery and pass the rid. Seems to work but some annotated events may fail.