Total Complexity | 6 |
Total Lines | 30 |
Duplicated Lines | 0 % |
1 | import csv |
||
4 | class csvToJsonConverter: |
||
5 | |||
6 | PROPERTY_INDEX = 1 |
||
7 | CONSTRAINT_INDEX = 2 |
||
8 | JSON_BLOB_INDEX = 3 |
||
9 | |||
10 | |||
11 | def write_dump_list_to_file(self, dump_list, jsonPath): |
||
12 | with open(jsonPath, 'w') as f: |
||
13 | complete_dump = json.dump(dump_list, f) |
||
14 | |||
15 | |||
16 | def create_dump_list(self, csvPath): |
||
17 | with open(csvPath, 'r') as csv_file: |
||
18 | csv_reader = csv.reader(csv_file) |
||
19 | dump_list = [] |
||
20 | for line in csv_reader: |
||
21 | csv_json_blob = json.loads(line[self.JSON_BLOB_INDEX]) |
||
22 | dump_element = { |
||
23 | 'Property': line[self.PROPERTY_INDEX], |
||
24 | 'Constraint': line[self.CONSTRAINT_INDEX], |
||
25 | 'Constraint_Parameters': csv_json_blob |
||
26 | } |
||
27 | dump_list.append(dump_element) |
||
28 | return dump_list |
||
29 | |||
30 | |||
31 | def run(self, csvPath, jsonPath): |
||
32 | dump_list = self.create_dump_list(csvPath) |
||
33 | self.write_dump_list_to_file(dump_list, jsonPath) |
||
34 | |||
40 | if __name__ == "__main__": main() |