def get_vote_from_lookup(self, vote_hash) -> BaseVote: lookup = Lookup.vote(vote_hash) if lookup in self.db: height, seek_index = loads(self.db.get(lookup)) header = self.get_header_from_height(height) vote_root = header.hash_vote_root trie = prepare_trie(vote_root, self.db) trie_key = get_trie_key(int_to_bytes32(seek_index)) vote = trie.get(trie_key) return vote
def _set_vote_from_lookup(self, height, seek_index, vote): lookup_key = Lookup.vote(vote.hash) leaf_key = dumps((height, seek_index)) self.db.put(lookup_key, leaf_key)