def __init__( self, amount: typing.TokenAmount, expiration: typing.BlockNumber, secrethash: typing.Keccak256): if not isinstance(amount, typing.T_TokenAmount): raise ValueError('amount must be a token_amount instance') if not isinstance(expiration, typing.T_BlockNumber): raise ValueError('expiration must be a block_number instance') if not isinstance(secrethash, typing.T_Keccak256): raise ValueError('secrethash must be a keccak256 instance') packed = messages.Lock(buffer_for(messages.Lock)) packed.amount = amount packed.expiration = expiration packed.secrethash = secrethash encoded = bytes(packed.data) self.amount = amount self.expiration = expiration self.secrethash = secrethash self.encoded = encoded self.lockhash: typing.LockHash = typing.LockHash(sha3(encoded))
def as_bytes(self): packed = messages.Lock(buffer_for(messages.Lock)) packed.amount = self.amount packed.expiration = self.expiration packed.secrethash = self.secrethash # convert bytearray to bytes return bytes(packed.data)
def packed(self): klass = messages.CMDID_MESSAGE[self.cmdid] data = buffer_for(klass) data[0] = self.cmdid packed = klass(data) self.pack(packed) return packed
def make_message(message, **attrs): klass = CMDID_MESSAGE[message] message = klass(buffer_for(klass)) for name, value in attrs.items(): setattr(message, name, value) return message
def as_bytes(self): if self._asbytes is None: packed = messages.Lock(buffer_for(messages.Lock)) packed.amount = self.amount packed.expiration = self.expiration packed.hashlock = self.hashlock self._asbytes = packed.data return self._asbytes
def as_bytes(self): if self._asbytes is None: packed = messages.Lock(buffer_for(messages.Lock)) packed.amount = self.amount packed.expiration = self.expiration packed.hashlock = self.hashlock self._asbytes = packed.data # convert bytearray to bytes return bytes(self._asbytes)
def __init__(self, amount: typing.token_amount, expiration: typing.block_number, hashlock: typing.keccak256): if not isinstance(amount, typing.token_amount): raise ValueError('amount must be a token_amount instance') if not isinstance(expiration, typing.block_number): raise ValueError('expiration must be a block_number instance') if not isinstance(hashlock, typing.keccak256): raise ValueError('hashlock must be a keccak256 instance') packed = messages.Lock(buffer_for(messages.Lock)) packed.amount = amount packed.expiration = expiration packed.hashlock = hashlock encoded = bytes(packed.data) self.amount = amount self.expiration = expiration self.hashlock = hashlock self.encoded = encoded self.lockhash = sha3(encoded)
def __init__(self, amount: typing.TokenAmount, expiration: typing.BlockNumber, secrethash: typing.Keccak256): if not isinstance(amount, typing.T_TokenAmount): raise ValueError('amount must be a token_amount instance') if not isinstance(expiration, typing.T_BlockNumber): raise ValueError('expiration must be a block_number instance') if not isinstance(secrethash, typing.T_Keccak256): raise ValueError('secrethash must be a keccak256 instance') packed = messages.Lock(buffer_for(messages.Lock)) packed.amount = amount packed.expiration = expiration packed.secrethash = secrethash encoded = bytes(packed.data) self.amount = amount self.expiration = expiration self.secrethash = secrethash self.encoded = encoded self.lockhash: typing.LockHash = typing.LockHash(sha3(encoded))