Coverage for rivapy/marketdata/factory.py: 83%
12 statements
« prev ^ index » next coverage.py v7.8.2, created at 2025-06-05 14:27 +0000
« prev ^ index » next coverage.py v7.8.2, created at 2025-06-05 14:27 +0000
1_factory_entries = None
3def _factory(depp=None):
4 global _factory_entries
5 if _factory_entries is None:
6 _factory_entries = {}
7 return _factory_entries
9def create(data: dict)->object:
10 if 'cls' not in data.keys():
11 raise Exception('Given dictionary has not a cls key, unable create from factory.')
12 cls = data['cls']
14 if cls not in _factory_entries.keys():
15 raise Exception('No class registered for given cls key ' + data['cls'])
16 return _factory_entries[cls].from_dict(data)