in transcoder/output/json/JsonOutputManager.py [0:0]
def _add_schema(self, schema: DatacastSchema):
# pylint: disable=duplicate-code
if schema.name in self.schemas:
del self.schemas[schema.name]
if schema.name in self.writers:
self.writers[schema.name].close()
del self.writers[schema.name]
output_file = open( # pylint: disable=consider-using-with
self._get_file_name(schema.name, 'jsonl'), 'w',
encoding='utf-8')
schema_json = {
'$schema': 'https://json-schema.org/draft/2019-09/schema',
'type': 'object',
'name': schema.name,
'properties': {}}
for field in schema.fields:
schema_json['properties'][field.name] = field.create_json_field(field)
obj = json.dumps(schema_json)
self._save_schema(schema.name, obj)
self.schemas[schema.name] = obj
self.writers[schema.name] = output_file