Source code for simdb.uda.checksum

from ..uri import URI, Query


[docs] def checksum(uri: URI) -> str: if uri.scheme != "uda": raise ValueError("invalid scheme for UDA checksum: %s" % uri.scheme) import pyuda import hashlib if uri.query is None: raise ValueError( "UDA object must have uri uda:///?signal=<SIGNAL>&source=<SOURCE>" ) query: Query = uri.query signal = query.get("signal") source = query.get("source") if signal is None or source is None: raise ValueError( "UDA object must have uri uda:///?signal=<SIGNAL>&source=<SOURCE>" ) client = pyuda.Client() res = client.get(signal, source, raw=True) sha1 = hashlib.sha1() sha1.update(res) return sha1.hexdigest()