26 lines
642 B
Python
26 lines
642 B
Python
import typing
|
|
|
|
|
|
class BlobInfo:
|
|
__slots__ = [
|
|
'blob_hash',
|
|
'blob_num',
|
|
'length',
|
|
'iv',
|
|
]
|
|
|
|
def __init__(self, blob_num: int, length: int, iv: str, blob_hash: typing.Optional[str] = None):
|
|
self.blob_hash = blob_hash
|
|
self.blob_num = blob_num
|
|
self.length = length
|
|
self.iv = iv
|
|
|
|
def as_dict(self) -> typing.Dict:
|
|
d = {
|
|
'length': self.length,
|
|
'blob_num': self.blob_num,
|
|
'iv': self.iv,
|
|
}
|
|
if self.blob_hash: # non-terminator blobs have a blob hash
|
|
d['blob_hash'] = self.blob_hash
|
|
return d
|