Changeset View
Changeset View
Standalone View
Standalone View
swh/storage/storage.py
Show First 20 Lines • Show All 872 Lines • ▼ Show 20 Lines | ) -> None: | ||||
for visit_status in visit_statuses: | for visit_status in visit_statuses: | ||||
origin_url = self.origin_get({"url": visit_status.origin}, db=db, cur=cur) | origin_url = self.origin_get({"url": visit_status.origin}, db=db, cur=cur) | ||||
if not origin_url: | if not origin_url: | ||||
raise StorageArgumentException(f"Unknown origin {visit_status.origin}") | raise StorageArgumentException(f"Unknown origin {visit_status.origin}") | ||||
for visit_status in visit_statuses: | for visit_status in visit_statuses: | ||||
self._origin_visit_status_add(visit_status, db, cur) | self._origin_visit_status_add(visit_status, db, cur) | ||||
@timed | |||||
@db_transaction() | |||||
def origin_visit_status_get_latest( | |||||
self, | |||||
origin_url: str, | |||||
visit: int, | |||||
allowed_statuses: Optional[List[str]] = None, | |||||
require_snapshot: bool = False, | |||||
db=None, | |||||
cur=None, | |||||
) -> Optional[OriginVisitStatus]: | |||||
row = db.origin_visit_status_get_latest( | |||||
origin_url, visit, allowed_statuses, require_snapshot, cur=cur | |||||
) | |||||
if not row: | |||||
return None | |||||
return OriginVisitStatus.from_dict(row) | |||||
def _origin_visit_get_updated( | def _origin_visit_get_updated( | ||||
self, origin: str, visit_id: int, db, cur | self, origin: str, visit_id: int, db, cur | ||||
) -> Optional[Dict[str, Any]]: | ) -> Optional[Dict[str, Any]]: | ||||
"""Retrieve origin visit and latest origin visit status and merge them | """Retrieve origin visit and latest origin visit status and merge them | ||||
into an origin visit. | into an origin visit. | ||||
""" | """ | ||||
row_visit = db.origin_visit_get(origin, visit_id) | row_visit = db.origin_visit_get(origin, visit_id) | ||||
▲ Show 20 Lines • Show All 422 Lines • Show Last 20 Lines |