# HG changeset patch # User Paul Boddie # Date 1463180151 -7200 # Node ID f13a53554da3256eb78b16ce1d5dfcd7909ecac5 # Parent fb85b9ab5b44dfe67202ecebace06fb8549716b3 Fixed period removal during free/busy collection updates by introducing special period removal methods that distinguish between specific period instances using additional collection-specific information. diff -r fb85b9ab5b44 -r f13a53554da3 imiptools/period.py --- a/imiptools/period.py Sat May 14 00:53:42 2016 +0200 +++ b/imiptools/period.py Sat May 14 00:55:51 2016 +0200 @@ -755,7 +755,7 @@ self._check_mutable() - self.remove_event_periods(uid, recurrenceid) + self.remove_specific_event_periods(uid, recurrenceid) for p in periods: self.insert_period(p) @@ -792,7 +792,7 @@ self._check_mutable() - self.remove_event_periods(uid, recurrenceid, attendee) + self.remove_specific_event_periods(uid, recurrenceid, attendee) for p in periods: self.insert_period(p) @@ -919,6 +919,10 @@ return removed + # Specific period removal when updating event details. + + remove_specific_event_periods = remove_event_periods + def remove_additional_periods(self, uid, recurrenceids=None): """ @@ -1048,7 +1052,7 @@ "A collection of quota group free/busy objects." - def remove_event_periods(self, uid, recurrenceid=None, attendee=None): + def remove_specific_event_periods(self, uid, recurrenceid=None, attendee=None): """ Remove from the collection all periods associated with 'uid' and @@ -1198,6 +1202,10 @@ return map(lambda t: self.make_period(t), removed) + # Specific period removal when updating event details. + + remove_specific_event_periods = remove_event_periods + def remove_additional_periods(self, uid, recurrenceids=None): """ @@ -1377,7 +1385,7 @@ "A collection of quota group free/busy objects." - def remove_event_periods(self, uid, recurrenceid=None, attendee=None): + def remove_specific_event_periods(self, uid, recurrenceid=None, attendee=None): """ Remove from the collection all periods associated with 'uid' and