Changeset View
Changeset View
Standalone View
Standalone View
swh/journal/publisher.py
Show First 20 Lines • Show All 133 Lines • ▼ Show 20 Lines | def process_objects(self, messages): | ||||
""" | """ | ||||
processors = { | processors = { | ||||
'content': self.process_contents, | 'content': self.process_contents, | ||||
'revision': self.process_revisions, | 'revision': self.process_revisions, | ||||
'release': self.process_releases, | 'release': self.process_releases, | ||||
'snapshot': self.process_snapshots, | 'snapshot': self.process_snapshots, | ||||
'origin': self.process_origins, | 'origin': self.process_origins, | ||||
'origin_visit': self.process_origin_visits, | |||||
} | } | ||||
return { | return { | ||||
key: processors[key](value) | key: processors[key](value) | ||||
for key, value in messages.items() | for key, value in messages.items() | ||||
} | } | ||||
def produce_messages(self, messages): | def produce_messages(self, messages): | ||||
Show All 24 Lines | class SWHJournalPublisher(SWHConfig): | ||||
def process_releases(self, release_objs): | def process_releases(self, release_objs): | ||||
metadata = self.storage.release_get((r[b'id'] for r in release_objs)) | metadata = self.storage.release_get((r[b'id'] for r in release_objs)) | ||||
return [(release['id'], release) for release in metadata] | return [(release['id'], release) for release in metadata] | ||||
def process_origins(self, origin_objs): | def process_origins(self, origin_objs): | ||||
return origin_objs | return origin_objs | ||||
def process_origin_visits(self, origin_visits): | |||||
metadata = [] | |||||
for ov in origin_visits: | |||||
origin_visit = self.storage.origin_visit_get_by( | |||||
ov['origin'], ov['visit']) | |||||
if origin_visit: | |||||
pk = ov['origin'], ov['visit'] | |||||
metadata.append((pk, origin_visit)) | |||||
return metadata | |||||
def process_snapshots(self, snapshot_objs): | def process_snapshots(self, snapshot_objs): | ||||
metadata = [] | metadata = [] | ||||
for snap in snapshot_objs: | for snap in snapshot_objs: | ||||
full_obj = snapshot.snapshot_get_all_branches( | full_obj = snapshot.snapshot_get_all_branches( | ||||
self.storage, snap[b'id']) | self.storage, snap[b'id']) | ||||
metadata.append((full_obj['id'], full_obj)) | metadata.append((full_obj['id'], full_obj)) | ||||
return metadata | return metadata | ||||
Show All 10 Lines |