fix uuid checks on save

This commit is contained in:
Nick Sweeting 2024-08-28 03:01:19 -07:00
parent 6456cb1727
commit e558d71b10
No known key found for this signature in database
3 changed files with 11 additions and 22 deletions

View file

@ -93,6 +93,7 @@ class ABIDModel(models.Model):
super().save(*args, **kwargs)
assert str(self.id) == str(self.ABID.uuid), f'self.id {self.id} does not match self.ABID {self.ABID.uuid}'
assert str(self.abid) == str(self.ABID), f'self.abid {self.id} does not match self.ABID {self.ABID.uuid}'
assert str(self.uuid) == str(self.ABID.uuid), f'self.uuid ({self.uuid}) does not match .ABID.uuid ({self.ABID.uuid})'
@property
def abid_values(self) -> Dict[str, Any]:
@ -186,6 +187,14 @@ class ABIDModel(models.Model):
Get a uuid.UUID (v4) representation of the object's ABID.
"""
return self.ABID.uuid
@property
def uuid(self) -> str:
"""
Get a str uuid.UUID (v4) representation of the object's ABID.
"""
assert str(self.id) == str(self.ABID.uuid)
return str(self.id)
@property
def TypeID(self) -> TypeID:

View file

@ -91,4 +91,5 @@ class SinglefileConfig(AppConfig):
verbose_name = 'SingleFile'
def ready(self):
print('Loaded singlefile plugin')
pass
# print('Loaded singlefile plugin')

View file

@ -158,9 +158,6 @@ class Snapshot(ABIDModel):
objects = SnapshotManager()
@property
def uuid(self):
return self.id
def __repr__(self) -> str:
title = (self.title_stripped or '-')[:64]
@ -170,13 +167,6 @@ class Snapshot(ABIDModel):
title = (self.title_stripped or '-')[:64]
return f'[{self.timestamp}] {self.url[:64]} ({title})'
def save(self, *args, **kwargs):
super().save(*args, **kwargs)
try:
assert str(self.id) == str(self.ABID.uuid) == str(self.uuid), f'Snapshot.id ({self.id}) does not match .ABID.uuid ({self.ABID.uuid})'
except AssertionError as e:
print(e)
@classmethod
def from_json(cls, info: dict):
info = {k: v for k, v in info.items() if k in cls.keys}
@ -471,17 +461,6 @@ class ArchiveResult(ABIDModel):
def __str__(self):
return self.extractor
def save(self, *args, **kwargs):
super().save(*args, **kwargs)
try:
assert str(self.id) == str(self.ABID.uuid) == str(self.uuid), f'ArchiveResult.id ({self.id}) does not match .ABID.uuid ({self.ABID.uuid})'
except AssertionError as e:
print(e)
@property
def uuid(self):
return self.id
@cached_property
def snapshot_dir(self):
return Path(self.snapshot.link_dir)