X-Git-Url: http://average.org/gitweb/?a=blobdiff_plain;f=loctrkd%2Fmkgpx.py;h=6d1ee27ab07024a471ca45b98069709c354b6ab5;hb=2a5d40ae0d3eebe40e6b53ee0776e10b228179f2;hp=6c1ce002327bb0e49f29bb0af9725ffa2ed38e60;hpb=cbb7603aebedf517d7b7c61ff6de02d3e7193409;p=loctrkd.git diff --git a/loctrkd/mkgpx.py b/loctrkd/mkgpx.py index 6c1ce00..6d1ee27 100644 --- a/loctrkd/mkgpx.py +++ b/loctrkd/mkgpx.py @@ -19,17 +19,9 @@ from .protomodule import ProtoModule log = getLogger("loctrkd/mkgpx") -pmods: List[ProtoModule] = [] - - def main( conf: ConfigParser, opts: List[Tuple[str, str]], args: List[str] ) -> None: - global pmods - pmods = [ - cast(ProtoModule, import_module("." + modnm, __package__)) - for modnm in conf.get("collector", "protocols").split(",") - ] db = connect(conf.get("storage", "dbfn")) c = db.cursor() c.execute( @@ -52,9 +44,9 @@ def main( ) for tstamp, is_incoming, proto, packet in c: - for pmod in pmods: - if pmod.proto_handled(proto): - msg = pmod.parse_message(packet, is_incoming=is_incoming) + pmod = common.pmod_for_proto(proto) + if pmod is not None: + msg = pmod.parse_message(packet, is_incoming=is_incoming) lat, lon = msg.latitude, msg.longitude isotime = ( datetime.fromtimestamp(tstamp)