コード例 #1
0
ファイル: ops.py プロジェクト: websauna/websauna.wallet
    def perform_tx():
        op = dbsession.query(CryptoOperation).get(opid)
        # Check everyting looks sane
        assert op.crypto_account.id
        assert op.crypto_account.account.id

        asset = op.holding_account.asset
        assert asset.id

        # Set information on asset that we have now created and have its smart contract id
        assert not asset.external_id, "Asset has been already assigned its smart contract id. Recreate error?"

        address = bin_to_eth_address(op.crypto_account.address.address)

        # Create Tonex proxy object
        token = Token.create_token(web3, name=asset.name, symbol=asset.symbol, supply=asset.supply, owner=address)

        # Call geth RPC API over Populus contract proxy
        op.txid = txid_to_bin(token.initial_txid)
        op.block = None
        op.external_address = eth_address_to_bin(token.address)

        asset.external_id = op.external_address

        op.mark_performed()
        op.mark_broadcasted()
コード例 #2
0
ファイル: ops.py プロジェクト: websauna/websauna.wallet
    def perform_tx():
        op = dbsession.query(CryptoOperation).get(opid)
        # Check everyting looks sane
        assert op.crypto_account.id
        assert op.crypto_account.account.id

        asset = op.holding_account.asset
        assert asset.id

        # Set information on asset that we have now created and have its smart contract id
        assert not asset.external_id, "Asset has been already assigned its smart contract id. Recreate error?"

        address = bin_to_eth_address(op.crypto_account.address.address)

        # Create Tonex proxy object
        token = Token.create_token(web3,
                                   name=asset.name,
                                   symbol=asset.symbol,
                                   supply=asset.supply,
                                   owner=address)

        # Call geth RPC API over Populus contract proxy
        op.txid = txid_to_bin(token.initial_txid)
        op.block = None
        op.external_address = eth_address_to_bin(token.address)

        asset.external_id = op.external_address

        op.mark_performed()
        op.mark_broadcasted()
コード例 #3
0
def token(dbsession, web3, eth_service, eth_network_id) -> Callable:
    # signer, multisig, cap
    extra_arguments = [
        web3.eth.coinbase,
        "0x8f480474b014ea63d4fe5e52478e833fb9e8f938",  # Mikko's testnet address
        to_wei(6000, "ether"),
        2,  # 2 share per each ETH
        10**18,  # 1 ETH 10**18 wei
    ]

    token = Token.create_token(web3, name="Toycrowd", supply=0, symbol="TOYCROWD", owner=web3.eth.coinbase, extra_arguments=extra_arguments, contract_name="CrowdfundToken")

    print("Token deployed")

    return token
コード例 #4
0
def token(web3, coinbase) -> Contract:
    """Deploy a token contract in the blockchain."""

    # signer, multisig, cap
    extra_arguments = [
        coinbase,
        MULTISIG,
        CAP,
        2,  # 2 share per each ETH
        10**18,  # 1 ETH 10**18 wei
    ]
    return Token.create_token(web3,
                              name="Mootoken",
                              supply=0,
                              symbol="MOO",
                              owner=coinbase,
                              extra_arguments=extra_arguments,
                              contract_name="CrowdfundToken")
コード例 #5
0
ファイル: conftest.py プロジェクト: websauna/websauna.wallet
def token(web3, coinbase) -> Contract:
    """Deploy a token contract in the blockchain."""
    return Token.create_token(web3, name="Mootoken", supply=10000, symbol="MOO", owner=coinbase)
コード例 #6
0
def token(web3, coinbase) -> Contract:
    """Deploy a token contract in the blockchain."""
    return Token.create_token(web3, name="Mootoken", supply=10000, symbol="MOO", owner=coinbase)