Example #1
0
    def register_producer(self, node: ElaNode):
        producer = Producer(input_private_key=node.owner_account.private_key(),
                            node=node,
                            nick_name=node.name,
                            url="http://elastos.org",
                            location=0,
                            net_address="127.0.0.1:" +
                            str(node.arbiter_node_port))
        tx = producer.register(self.rpc_port)

        if tx is None:
            return False

        ret = self.handle_tx_result(tx, self.rpc_port)
        return ret
    def active_producer(self, producer: Producer):
        tx = producer.active()

        if tx is None:
            return False

        ret = self.handle_tx_result(tx)

        return ret
    def redeem_producer(self, producer: Producer):
        tx = producer.redeem(4999 * constant.TO_SELA, self.rpc_port)

        if tx is None:
            return False

        ret = self.handle_tx_result(tx)

        return ret
Example #4
0
    def cancel_producer(self, producer: Producer):
        tx = producer.cancel(self.rpc_port)

        if tx is None:
            return False

        ret = self.handle_tx_result(tx, self.rpc_port)

        return ret
    def update_producer(self, producer: Producer, producer_info: ProducerInfo):
        tx = producer.update(producer_info, self.rpc_port)

        print(tx)
        if tx is None:
            return False

        ret = self.handle_tx_result(tx)

        return ret
    def cancel_producer(self, producer: Producer):
        tx = producer.cancel(self.rpc_port)

        if tx is None:
            return False

        ret = self.handle_tx_result(tx)

        if ret:
            self.cancel_producers_list.append(producer)
        return ret
Example #7
0
        "crc_dpos_height": 4000,
        "public_dpos_height": 4200
    },
    "side": False,
    "times": 1
}

if __name__ == '__main__':

    c = Controller(config)
    input_account = c.keystore_manager.tap_account
    node = c.node_manager.ela_nodes[2]
    rpc_port = 10016
    producer = Producer(input_private_key=input_account.private_key(),
                        node=node,
                        nick_name="James-007",
                        url="http://www.007.com",
                        location=0,
                        net_address="127.0.0.1:10019")

    tx = producer.register(rpc_port)

    ret = c.tx_manager.handle_tx_result(tx)
    Logger.info("regiser tx: {}".format(tx))
    c.check_result("producer register", ret)

    c.discrete_mining_blocks(6)

    Logger.info("producer owner pubkey: {}".format(
        producer.owner_account().public_key()))
    payload = producer.producer_info()
    payload.nickname = "HAHA"