Exemplo n.º 1
0
 def make_query(self) -> Query:
     query = Query()
     query.payload.meta.creator_account_id = "admin@test"
     query.payload.meta.query_counter = 1
     query.payload.meta.created_time = Iroha.now()
     #  query.payload.get_account.account_id = "admin@test"
     query.payload.get_transactions.tx_hashes.append("asdf")
     query.payload.get_transactions.tx_hashes.append("asdfasdf")
     query = IrohaCrypto.sign_query(
         query,
         "f101537e319568c765b2cc89698325604991dca57b9716b58016b253506cab70",
     )
     return query
    def __init__(self, *args, **kwargs):
        self.target_transaction = kwargs.pop("transaction", None)
        self.is_tx_valid = True

        self.transaction = Transaction()
        self.transaction.payload.reduced_payload.created_time = Iroha.now()
        self.transaction.payload.reduced_payload.quorum = 1

        self.tx_proto_proxy = ProtoMessageProxy(self.transaction)
        if self.target_transaction:
            self.transaction.CopyFrom(self.target_transaction)

        super().__init__(*args, **kwargs)
def create_genesis_block(txs: Iterable["Transaction"]) -> Block:
    """
    Generate a genesis block with the passed transactions.
    @param txs - iterable of transactions.
    """
    block = Block()
    for tx in txs:
        block.block_v1.payload.transactions.append(tx)
    block.block_v1.payload.created_time = Iroha.now()
    block.block_v1.payload.height = 1
    block.block_v1.payload.prev_block_hash = b"0" * 64
    block.block_v1.payload.tx_number = len(block.block_v1.payload.transactions)
    return block
Exemplo n.º 4
0
    def make_transaction(self) -> Transaction:
        transaction = Transaction()
        transaction.payload.reduced_payload.quorum = 1
        transaction.payload.reduced_payload.creator_account_id = "admin@test"
        transaction.payload.reduced_payload.created_time = Iroha.now()

        transaction.payload.reduced_payload.commands.extend(
            [self.make_command()])

        transaction = IrohaCrypto.sign_transaction(
            transaction,
            "f101537e319568c765b2cc89698325604991dca57b9716b58016b253506cab70",
        )

        return transaction
Exemplo n.º 5
0
    def __init__(self, *args, **kwargs):
        self.target_query = kwargs.pop("query", None)

        self.query = Query()
        self.query.payload.meta.created_time = Iroha.now()

        self.query_proto_proxy = ProtoMessageProxy(self.query)
        if self.target_query:
            self.query.CopyFrom(self.target_query)
        logger.debug(self.query)

        self.is_query_valid = False
        self.payload_proxy = None

        queries = ProtoQueryLoader().queries
        self.query_type_options = [(x[0], x[2]) for x in queries]
        if self.target_query:
            self.default_query_type = self.query.payload.WhichOneof("query")
            self._update_payload_proxy(self.default_query_type)
        else:
            self.default_query_type = queries[0][2]

        super().__init__(*args, **kwargs)