9
9
10
10
11
11
class BaseProcessor (ABC ):
12
+ """
13
+ Abstract class for batch processors.
14
+ """
15
+
12
16
@abstractmethod
13
17
def _prepare (self ):
14
18
"""
@@ -24,10 +28,16 @@ def _clean(self):
24
28
raise NotImplementedError ()
25
29
26
30
@abstractmethod
27
- def _process_record (self , record ):
31
+ def _process_record (self , record : Any ):
32
+ """
33
+ Process record with handler.
34
+ """
28
35
raise NotImplementedError ()
29
36
30
37
def process (self ) -> List [Tuple ]:
38
+ """
39
+ Call instance's handler for each record.
40
+ """
31
41
return [self ._process_record (record ) for record in self .records ]
32
42
33
43
def __enter__ (self ):
@@ -43,7 +53,6 @@ def __call__(self, records: Iterable[Any], handler: Callable):
43
53
44
54
Parameters
45
55
----------
46
-
47
56
records: Iterable[Any]
48
57
Iterable with objects to be processed.
49
58
handler: Callable
@@ -59,15 +68,15 @@ class BasePartialProcessor(BaseProcessor):
59
68
success_messages : MutableSequence = None
60
69
fail_messages : MutableSequence = None
61
70
62
- def success_handler (self , record , result ):
71
+ def success_handler (self , record : Any , result : Any ):
63
72
"""
64
73
Success callback
65
74
"""
66
75
entry = ("success" , result , record )
67
76
self .success_messages .append (record )
68
77
return entry
69
78
70
- def failure_handler (self , record , exception ):
79
+ def failure_handler (self , record : Any , exception : Exception ):
71
80
"""
72
81
Failure callback
73
82
"""
0 commit comments