diff options
Diffstat (limited to 'src/buildstream/_scheduler/queues/fetchqueue.py')
-rw-r--r-- | src/buildstream/_scheduler/queues/fetchqueue.py | 15 |
1 files changed, 13 insertions, 2 deletions
diff --git a/src/buildstream/_scheduler/queues/fetchqueue.py b/src/buildstream/_scheduler/queues/fetchqueue.py index bbb3b3d78..3d0f80342 100644 --- a/src/buildstream/_scheduler/queues/fetchqueue.py +++ b/src/buildstream/_scheduler/queues/fetchqueue.py @@ -41,8 +41,11 @@ class FetchQueue(Queue): self._skip_cached = skip_cached self._fetch_original = fetch_original - def process(self, element): - element._fetch(fetch_original=self._fetch_original) + def get_process_func(self): + if self._fetch_original: + return FetchQueue._fetch_original + else: + return FetchQueue._fetch_no_original def status(self, element): # Optionally skip elements that are already in the artifact cache @@ -78,3 +81,11 @@ class FetchQueue(Queue): # Set a "can_query_cache" callback for an element not yet ready # to be processed in the fetch queue. element._set_can_query_cache_callback(self._enqueue_element) + + @staticmethod + def _fetch_no_original(element): + element._fetch(fetch_original=False) + + @staticmethod + def _fetch_original(element): + element._fetch(fetch_original=True) |