cli_wallet: Implement update_witness command #282
This commit is contained in:
parent
fb8d17bb4b
commit
2f88cc86ba
2 changed files with 48 additions and 0 deletions
|
|
@ -1086,6 +1086,19 @@ class wallet_api
|
||||||
string url,
|
string url,
|
||||||
bool broadcast = false);
|
bool broadcast = false);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Update a witness object owned by the given account.
|
||||||
|
*
|
||||||
|
* @param witness The name of the witness's owner account. Also accepts the ID of the owner account or the ID of the witness.
|
||||||
|
* @param url Same as for create_witness. The empty string makes it remain the same.
|
||||||
|
* @param block_signing_key The new block signing public key. The empty string makes it remain the same.
|
||||||
|
* @param broadcast true if you wish to broadcast the transaction.
|
||||||
|
*/
|
||||||
|
signed_transaction update_witness(string witness_name,
|
||||||
|
string url,
|
||||||
|
string block_signing_key,
|
||||||
|
bool broadcast = false);
|
||||||
|
|
||||||
/** Vote for a given committee_member.
|
/** Vote for a given committee_member.
|
||||||
*
|
*
|
||||||
* An account can publish a list of all committee_memberes they approve of. This
|
* An account can publish a list of all committee_memberes they approve of. This
|
||||||
|
|
@ -1364,6 +1377,7 @@ FC_API( graphene::wallet::wallet_api,
|
||||||
(list_witnesses)
|
(list_witnesses)
|
||||||
(list_committee_members)
|
(list_committee_members)
|
||||||
(create_witness)
|
(create_witness)
|
||||||
|
(update_witness)
|
||||||
(vote_for_committee_member)
|
(vote_for_committee_member)
|
||||||
(vote_for_witness)
|
(vote_for_witness)
|
||||||
(set_voting_proxy)
|
(set_voting_proxy)
|
||||||
|
|
|
||||||
|
|
@ -1318,6 +1318,31 @@ public:
|
||||||
return sign_transaction( tx, broadcast );
|
return sign_transaction( tx, broadcast );
|
||||||
} FC_CAPTURE_AND_RETHROW( (owner_account)(broadcast) ) }
|
} FC_CAPTURE_AND_RETHROW( (owner_account)(broadcast) ) }
|
||||||
|
|
||||||
|
signed_transaction update_witness(string witness_name,
|
||||||
|
string url,
|
||||||
|
string block_signing_key,
|
||||||
|
bool broadcast /* = false */)
|
||||||
|
{ try {
|
||||||
|
witness_object witness = get_witness(witness_name);
|
||||||
|
account_object witness_account = get_account( witness.witness_account );
|
||||||
|
fc::ecc::private_key active_private_key = get_private_key_for_account(witness_account);
|
||||||
|
|
||||||
|
witness_update_operation witness_update_op;
|
||||||
|
witness_update_op.witness = witness.id;
|
||||||
|
witness_update_op.witness_account = witness_account.id;
|
||||||
|
if( url != "" )
|
||||||
|
witness_update_op.new_url = url;
|
||||||
|
if( block_signing_key != "" )
|
||||||
|
witness_update_op.new_signing_key = public_key_type( block_signing_key );
|
||||||
|
|
||||||
|
signed_transaction tx;
|
||||||
|
tx.operations.push_back( witness_update_op );
|
||||||
|
set_operation_fees( tx, _remote_db->get_global_properties().parameters.current_fees );
|
||||||
|
tx.validate();
|
||||||
|
|
||||||
|
return sign_transaction( tx, broadcast );
|
||||||
|
} FC_CAPTURE_AND_RETHROW( (witness_name)(url)(block_signing_key)(broadcast) ) }
|
||||||
|
|
||||||
signed_transaction vote_for_committee_member(string voting_account,
|
signed_transaction vote_for_committee_member(string voting_account,
|
||||||
string committee_member,
|
string committee_member,
|
||||||
bool approve,
|
bool approve,
|
||||||
|
|
@ -2546,6 +2571,15 @@ signed_transaction wallet_api::create_witness(string owner_account,
|
||||||
return my->create_witness(owner_account, url, broadcast);
|
return my->create_witness(owner_account, url, broadcast);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
signed_transaction wallet_api::update_witness(
|
||||||
|
string witness_name,
|
||||||
|
string url,
|
||||||
|
string block_signing_key,
|
||||||
|
bool broadcast /* = false */)
|
||||||
|
{
|
||||||
|
return my->update_witness(witness_name, url, block_signing_key, broadcast);
|
||||||
|
}
|
||||||
|
|
||||||
signed_transaction wallet_api::vote_for_committee_member(string voting_account,
|
signed_transaction wallet_api::vote_for_committee_member(string voting_account,
|
||||||
string witness,
|
string witness,
|
||||||
bool approve,
|
bool approve,
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue