|
8 | 8 | from .writer.csvwriter import CSVWriter
|
9 | 9 | from .writer.chcsvwriter import CHCSVWriter
|
10 | 10 | from .writer.poolwriter import PoolWriter
|
| 11 | +from .writer.processwriter import ProcessWriter |
11 | 12 | from .objectbuilder import ObjectBuilder
|
12 | 13 |
|
13 | 14 | from .converter.csvwriteconverter import CSVWriteConverter
|
@@ -42,19 +43,23 @@ def reader(self):
|
42 | 43 | return MySQLReader(**self.config['reader-config']['mysql'])
|
43 | 44 |
|
44 | 45 | def writer_builder(self):
|
45 |
| - |
46 | 46 | if self.config['app-config']['csvpool']:
|
47 |
| - return ObjectBuilder(class_name=CSVWriter, params={ |
48 |
| - **self.config['writer-config']['file'], |
49 |
| - 'next_writer_builder': ObjectBuilder(instance=CHCSVWriter(**self.config['writer-config']['clickhouse']['connection_settings'])), |
50 |
| - 'converter_builder': ObjectBuilder(instance=CSVWriteConverter(defaults=self.config['converter-config']['csv']['column_default_value'])) if self.config['converter-config']['csv']['column_default_value'] else None, |
| 47 | + return ObjectBuilder(class_name=ProcessWriter, constructor_params={ |
| 48 | + 'next_writer_builder': ObjectBuilder(class_name=CSVWriter, constructor_params={ |
| 49 | + **self.config['writer-config']['file'], |
| 50 | + 'next_writer_builder': ObjectBuilder( |
| 51 | + class_name=CHCSVWriter, |
| 52 | + constructor_params=self.config['writer-config']['clickhouse']['connection_settings'] |
| 53 | + ), |
| 54 | + 'converter_builder': ObjectBuilder(instance=CSVWriteConverter(defaults=self.config['converter-config']['csv']['column_default_value'])) if self.config['converter-config']['csv']['column_default_value'] else None, |
| 55 | + }) |
51 | 56 | })
|
52 | 57 |
|
53 | 58 | elif self.config['writer-config']['file']['csv_file_path']:
|
54 |
| - return ObjectBuilder(class_name=CSVWriter, params=self.config['writer-config']['file']) |
| 59 | + return ObjectBuilder(class_name=CSVWriter, constructor_params=self.config['writer-config']['file']) |
55 | 60 |
|
56 | 61 | else:
|
57 |
| - return ObjectBuilder(class_name=CHWriter, params=self.config['writer-config']['clickhouse']) |
| 62 | + return ObjectBuilder(class_name=CHWriter, constructor_params=self.config['writer-config']['clickhouse']) |
58 | 63 |
|
59 | 64 | def writer(self):
|
60 | 65 | if self.config['app-config']['mempool']:
|
|
0 commit comments