[job] implement '"archive-event": "after"' (#8373)
This commit is contained in:
@@ -1134,15 +1134,16 @@ Type
|
|||||||
Default
|
Default
|
||||||
``"file"``
|
``"file"``
|
||||||
Example
|
Example
|
||||||
* ``"file,skip"``
|
* ``"after,skip"``
|
||||||
* ``["file", "skip"]``
|
* ``["after", "skip"]``
|
||||||
Description
|
Description
|
||||||
`Event(s) <metadata.event_>`__
|
`Event(s) <metadata.event_>`__
|
||||||
for which IDs get written to an
|
for which IDs get written to an
|
||||||
`archive <extractor.*.archive_>`__.
|
`archive <extractor.*.archive_>`__.
|
||||||
|
Available Events
|
||||||
Available events are:
|
* ``file``
|
||||||
``file``, ``skip``
|
* ``after``
|
||||||
|
* ``skip``
|
||||||
|
|
||||||
|
|
||||||
extractor.*.archive-format
|
extractor.*.archive-format
|
||||||
|
|||||||
@@ -388,6 +388,8 @@ class DownloadJob(Job):
|
|||||||
if "after" in hooks:
|
if "after" in hooks:
|
||||||
for callback in hooks["after"]:
|
for callback in hooks["after"]:
|
||||||
callback(pathfmt)
|
callback(pathfmt)
|
||||||
|
if archive and self._archive_write_after:
|
||||||
|
archive.add(kwdict)
|
||||||
|
|
||||||
def handle_directory(self, kwdict):
|
def handle_directory(self, kwdict):
|
||||||
"""Set and create the target directory for downloads"""
|
"""Set and create the target directory for downloads"""
|
||||||
@@ -593,11 +595,13 @@ class DownloadJob(Job):
|
|||||||
if events is None:
|
if events is None:
|
||||||
self._archive_write_file = True
|
self._archive_write_file = True
|
||||||
self._archive_write_skip = False
|
self._archive_write_skip = False
|
||||||
|
self._archive_write_after = False
|
||||||
else:
|
else:
|
||||||
if isinstance(events, str):
|
if isinstance(events, str):
|
||||||
events = events.split(",")
|
events = events.split(",")
|
||||||
self._archive_write_file = ("file" in events)
|
self._archive_write_file = ("file" in events)
|
||||||
self._archive_write_skip = ("skip" in events)
|
self._archive_write_skip = ("skip" in events)
|
||||||
|
self._archive_write_after = ("after" in events)
|
||||||
|
|
||||||
if skip := cfg("skip", True):
|
if skip := cfg("skip", True):
|
||||||
self._skipexc = None
|
self._skipexc = None
|
||||||
|
|||||||
Reference in New Issue
Block a user