1 from datetime import datetime
2 from django.utils.timezone import now, utc
7 def sync(cls, user, instance, data):
8 ts = data.get('timestamp')
12 ts = datetime.fromtimestamp(ts, tz=utc)
14 if instance is not None:
15 if ts and ts < instance.reported_timestamp:
19 if data.get('deleted'):
21 instance = cls.create_from_data(user, data)
25 instance.reported_timestamp = ts
26 for f in cls.syncable_fields:
28 setattr(instance, f, data[f])
35 return self.updated_at.timestamp()
38 def create_from_data(cls, user, data):
39 raise NotImplementedError