32 lines
795 B
Python
32 lines
795 B
Python
import typing
|
|
|
|
|
|
class BlobInfo:
|
|
__slots__ = [
|
|
'blob_hash',
|
|
'blob_num',
|
|
'length',
|
|
'iv',
|
|
'added_on',
|
|
'is_mine'
|
|
]
|
|
|
|
def __init__(
|
|
self, blob_num: int, length: int, iv: str, added_on,
|
|
blob_hash: typing.Optional[str] = None, is_mine=False):
|
|
self.blob_hash = blob_hash
|
|
self.blob_num = blob_num
|
|
self.length = length
|
|
self.iv = iv
|
|
self.added_on = added_on
|
|
self.is_mine = is_mine
|
|
|
|
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
|