mirror of
https://github.com/craigerl/aprsd.git
synced 2026-03-03 05:30:11 -05:00
Fix JSON serialization of UnknownPacket in stats
The SimpleJSONEncoder didn't handle dataclasses like UnknownPacket, causing a TypeError when saving stats to disk. Added support for dataclasses using dataclasses.asdict().
This commit is contained in:
parent
fcfb349d29
commit
698d218572
@ -2,6 +2,7 @@ import datetime
|
||||
import decimal
|
||||
import json
|
||||
import sys
|
||||
from dataclasses import asdict, is_dataclass
|
||||
|
||||
from aprsd.packets import core
|
||||
|
||||
@ -63,6 +64,8 @@ class SimpleJSONEncoder(json.JSONEncoder):
|
||||
return str(obj)
|
||||
elif isinstance(obj, core.Packet):
|
||||
return obj.to_dict()
|
||||
elif is_dataclass(obj):
|
||||
return asdict(obj)
|
||||
else:
|
||||
return super().default(obj)
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user