Mercurial > hg > gcmultimerge
comparison multimerge.py @ 104:f6274227114b
Make debug/error messages more consistent.
author | Matti Hamalainen <ccr@tnsp.org> |
---|---|
date | Mon, 17 Oct 2016 14:06:48 +0300 |
parents | fc361e368630 |
children | 481cfea49e19 |
comparison
equal
deleted
inserted
replaced
103:fc361e368630 | 104:f6274227114b |
---|---|
127 if show == None or show(event): | 127 if show == None or show(event): |
128 ev_start = event["start"].get("dateTime", event["start"].get("date")) if "start" in event else "?" | 128 ev_start = event["start"].get("dateTime", event["start"].get("date")) if "start" in event else "?" |
129 ev_end = event["end"].get("dateTime", event["end"].get("date")) if "end" in event else "?" | 129 ev_end = event["end"].get("dateTime", event["end"].get("date")) if "end" in event else "?" |
130 summary = event["summary"] if "summary" in event else "?" | 130 summary = event["summary"] if "summary" in event else "?" |
131 status = "*" if event["status"] != u"cancelled" else "!" | 131 status = "*" if event["status"] != u"cancelled" else "!" |
132 gcm_print(u"[{4}] {0:25} - {1:25} : {2} [{3}]".format(ev_start, ev_end, summary, event["id"], status)) | 132 gcm_print(u"[{0}] {1:25} - {2:25} : {3} [{4}] [{5}]".format(status, ev_start, ev_end, summary, event["iCalUID"], event["id"])) |
133 | 133 |
134 | 134 |
135 ## Generate gcm IDs for given list of events | 135 ## Generate gcm IDs for given list of events |
136 def gcm_generate_ids(events, calendar_id, sep): | 136 def gcm_generate_ids(events, calendar_id, sep): |
137 if not events: | 137 if not events: |
572 | 572 |
573 for event in src_events: | 573 for event in src_events: |
574 # Does the event exist already in the target? | 574 # Does the event exist already in the target? |
575 if event["gcm_id"] in dst_ids: | 575 if event["gcm_id"] in dst_ids: |
576 # Check if event NEEDS updating .. aka compare data | 576 # Check if event NEEDS updating .. aka compare data |
577 gcm_debug(4, u"Event {0} : {1} exists, checking ..".format(event["id"], event["gcm_id"])) | 577 gcm_debug(4, u"Event {0} [{1}] exists, checking ..".format(event["id"], event["gcm_id"])) |
578 d_event = gcm_get_event_by_gcm_id(dst_events, event["gcm_id"]) | 578 d_event = gcm_get_event_by_gcm_id(dst_events, event["gcm_id"]) |
579 if not gcm_compare_events(event, d_event): | 579 if not gcm_compare_events(event, d_event): |
580 # Seems we need to update | 580 # Seems we need to update |
581 evn_updated += 1 | 581 evn_updated += 1 |
582 gcm_debug(4, u"Updating event {0} : {1}..".format(event["id"], event["gcm_id"])) | 582 gcm_debug(4, u"Updating event {0} [{1}]".format(event["id"], event["gcm_id"])) |
583 try: | 583 try: |
584 event.pop("sequence", None) | 584 event.pop("sequence", None) |
585 event.pop("id", None) | 585 event.pop("id", None) |
586 event["iCalUID"] = event["gcm_id"] | 586 event["iCalUID"] = event["gcm_id"] |
587 new_event = service.events().update(calendarId=cfg.dst_id, eventId=d_event["id"], body=event).execute() | 587 new_event = service.events().update(calendarId=cfg.dst_id, eventId=d_event["id"], body=event).execute() |
588 except Exception as e: | 588 except Exception as e: |
589 gcm_fatal(u"Failed to update event {0}:\n\n{1}\n\nERROR: {2}\n".format(event["gcm_id"], event, str(e))) | 589 gcm_fatal(u"Failed to update event {0} [{1}]:\n\n{2}\n\nERROR: {3}\n".format(event["id"], event["gcm_id"], event, str(e))) |
590 else: | 590 else: |
591 evn_unchanged += 1 | 591 evn_unchanged += 1 |
592 gcm_debug(4, u"No need to update event {0} : {1}.".format(event["id"], event["gcm_id"])) | 592 gcm_debug(4, u"No need to update event {0} [{1}]".format(event["id"], event["gcm_id"])) |
593 else: | 593 elif event["status"] != u"cancelled": |
594 ## Event does not seem to exist. Insert new event. | 594 ## Event does not seem to exist. Insert new event. |
595 gcm_debug(4, u"Inserting new event {0}".format(event["gcm_id"])) | |
596 evn_new += 1 | 595 evn_new += 1 |
596 gcm_debug(4, u"Inserting new event {0} [{1}]".format(event["id"], event["gcm_id"])) | |
597 event.pop("id", None) | 597 event.pop("id", None) |
598 event["iCalUID"] = event["gcm_id"] # Replace Google generated ID with our own | 598 event["iCalUID"] = event["gcm_id"] # Replace Google generated ID with our own |
599 try: | 599 try: |
600 new_event = service.events().insert(calendarId=cfg.dst_id, body=event).execute() | 600 new_event = service.events().insert(calendarId=cfg.dst_id, body=event).execute() |
601 except Exception as e: | 601 except Exception as e: |
608 gcm_debug(3, u"Purging stale events ..") | 608 gcm_debug(3, u"Purging stale events ..") |
609 evn_purged = 0 | 609 evn_purged = 0 |
610 for event in dst_events: | 610 for event in dst_events: |
611 gcm_debug(4, u"Checking event {0}".format(event["gcm_id"])) | 611 gcm_debug(4, u"Checking event {0}".format(event["gcm_id"])) |
612 if not event["gcm_id"] in src_ids and event["status"] != u"cancelled": | 612 if not event["gcm_id"] in src_ids and event["status"] != u"cancelled": |
613 gcm_debug(4, u"Deleting event {0}".format(event["gcm_id"])) | 613 gcm_debug(4, u"Deleting event {0} [{1}]".format(event["id"], event["gcm_id"])) |
614 evn_purged += 1 | 614 evn_purged += 1 |
615 try: | 615 try: |
616 service.events().delete(calendarId=cfg.dst_id, eventId=event["id"]).execute() | 616 service.events().delete(calendarId=cfg.dst_id, eventId=event["id"]).execute() |
617 except Exception as e: | 617 except Exception as e: |
618 gcm_fatal(u"Failed to delete stale event:\n{0}\n\nERROR: {1}\n".format(event, str(e))) | 618 gcm_fatal(u"Failed to delete stale event:\n{0}\n\nERROR: {1}\n".format(event, str(e))) |