|
2 | 2 | import sys
|
3 | 3 | import traceback
|
4 | 4 | from datetime import datetime
|
5 |
| -from typing import Dict, List, Optional, Tuple, Union, Self, Any |
| 5 | +from typing import Dict, List, Optional, Tuple, Union, Any |
6 | 6 |
|
7 | 7 | from redis import WatchError
|
8 | 8 |
|
|
19 | 19 | )
|
20 | 20 | from scheduler.redis_models import JobStatus, SchedulerLock, Result, ResultType, JobModel
|
21 | 21 | from scheduler.settings import logger, SCHEDULER_CONFIG
|
22 |
| -from scheduler.types import ConnectionType, FunctionReferenceType |
| 22 | +from scheduler.types import ConnectionType, FunctionReferenceType, Self |
23 | 23 |
|
24 | 24 |
|
25 | 25 | class InvalidJobOperation(Exception):
|
@@ -176,24 +176,24 @@ def get_all_jobs(self) -> List[JobModel]:
|
176 | 176 | return JobModel.get_many(job_names, connection=self.connection)
|
177 | 177 |
|
178 | 178 | def create_and_enqueue_job(
|
179 |
| - self, |
180 |
| - func: FunctionReferenceType, |
181 |
| - args: Union[Tuple, List, None] = None, |
182 |
| - kwargs: Optional[Dict] = None, |
183 |
| - when: Optional[datetime] = None, |
184 |
| - timeout: Optional[int] = None, |
185 |
| - result_ttl: Optional[int] = None, |
186 |
| - job_info_ttl: Optional[int] = None, |
187 |
| - description: Optional[str] = None, |
188 |
| - name: Optional[str] = None, |
189 |
| - at_front: bool = False, |
190 |
| - meta: Optional[Dict] = None, |
191 |
| - on_success: Optional[Callback] = None, |
192 |
| - on_failure: Optional[Callback] = None, |
193 |
| - on_stopped: Optional[Callback] = None, |
194 |
| - task_type: Optional[str] = None, |
195 |
| - scheduled_task_id: Optional[int] = None, |
196 |
| - pipeline: Optional[ConnectionType] = None, |
| 179 | + self, |
| 180 | + func: FunctionReferenceType, |
| 181 | + args: Union[Tuple, List, None] = None, |
| 182 | + kwargs: Optional[Dict] = None, |
| 183 | + when: Optional[datetime] = None, |
| 184 | + timeout: Optional[int] = None, |
| 185 | + result_ttl: Optional[int] = None, |
| 186 | + job_info_ttl: Optional[int] = None, |
| 187 | + description: Optional[str] = None, |
| 188 | + name: Optional[str] = None, |
| 189 | + at_front: bool = False, |
| 190 | + meta: Optional[Dict] = None, |
| 191 | + on_success: Optional[Callback] = None, |
| 192 | + on_failure: Optional[Callback] = None, |
| 193 | + on_stopped: Optional[Callback] = None, |
| 194 | + task_type: Optional[str] = None, |
| 195 | + scheduled_task_id: Optional[int] = None, |
| 196 | + pipeline: Optional[ConnectionType] = None, |
197 | 197 | ) -> JobModel:
|
198 | 198 | """Creates a job to represent the delayed function call and enqueues it.
|
199 | 199 | :param when: When to schedule the job (None to enqueue immediately)
|
@@ -245,7 +245,7 @@ def create_and_enqueue_job(
|
245 | 245 | return job_model
|
246 | 246 |
|
247 | 247 | def job_handle_success(
|
248 |
| - self, job: JobModel, result: Any, job_info_ttl: int, result_ttl: int, connection: ConnectionType |
| 248 | + self, job: JobModel, result: Any, job_info_ttl: int, result_ttl: int, connection: ConnectionType |
249 | 249 | ):
|
250 | 250 | """Saves and cleanup job after successful execution"""
|
251 | 251 | job.after_execution(
|
@@ -304,10 +304,10 @@ def run_sync(self, job: JobModel) -> JobModel:
|
304 | 304 |
|
305 | 305 | @classmethod
|
306 | 306 | def dequeue_any(
|
307 |
| - cls, |
308 |
| - queues: List[Self], |
309 |
| - timeout: Optional[int], |
310 |
| - connection: Optional[ConnectionType] = None, |
| 307 | + cls, |
| 308 | + queues: List[Self], |
| 309 | + timeout: Optional[int], |
| 310 | + connection: Optional[ConnectionType] = None, |
311 | 311 | ) -> Tuple[Optional[JobModel], Optional[Self]]:
|
312 | 312 | """Class method returning a Job instance at the front of the given set of Queues, where the order of the queues
|
313 | 313 | is important.
|
@@ -410,7 +410,7 @@ def delete_job(self, job_name: str, expire_job_model: bool = True) -> None:
|
410 | 410 | pass
|
411 | 411 |
|
412 | 412 | def enqueue_job(
|
413 |
| - self, job_model: JobModel, connection: Optional[ConnectionType] = None, at_front: bool = False |
| 413 | + self, job_model: JobModel, connection: Optional[ConnectionType] = None, at_front: bool = False |
414 | 414 | ) -> JobModel:
|
415 | 415 | """Enqueues a job for delayed execution without checking dependencies.
|
416 | 416 |
|
|
0 commit comments