quorum

package
v1.0.2 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Dec 20, 2016 License: GPL-3.0 Imports: 26 Imported by: 0

README

### Console API

$ quorum.nodeInfo returns the quorum capabilities of this node.
Example output for a node that is configured as block maker and voter:
> quorum.nodeInfo
{
  blockMakerAccount: "0x7bd175a388c7a5f33fb81bbb3b7e97cbfabb3600",
  blockmakestrategy: {
    maxblocktime: 6,
    minblocktime: 3,
    status: "active",
    type: "deadline"
  },
  canCreateBlocks: true,
  canVote: true,
  voteAccount: "0x7bd175a388c7a5f33fb81bbb3b7e97cbfabb3600"
}

$ quorum.vote accepts a block hash and votes for this hash to be the canonical head on the current height. It returns the tx hash.
> quorum.vote(eth.getBlock("latest").hash)
"0x16c69b9bdf9f10c64e65dbfe50bc997d2bc1ed321c6041db602908b7f6cab2a9"

$ quorum.canonicalHash accepts a block height and returns the canonical hash for that height (+1 will return the hash where the current pending block will be based on top of),
> quorum.canonicalHash(eth.blockNumber+1)
"0xf2c8a36d0c54c7013246fddebfc29bc881f6f10f74f761d511b5ebfaa103adfa"

$ quorum.isVoter accepts an address and returns an indication if the given address is allowed to vote for new blocks
> quorum.isVoter("0x7bd175a388c7a5f33fb81bbb3b7e97cbfabb3600")
true

$ quorum.isBlockMaker accepts an address and returns an indication if the given address is allowed to make blocks
> quorum.isBlockMaker("0x7bd175a388c7a5f33fb81bbb3b7e97cbfabb3600")
true

$ quorum.makeBlock() orders the node to create a block bypassing block maker strategy.
> quorum.makeBlock()
"0x3a07e82a48ab3c19a3d09d247e189e3a3041d1d9eafd2e1515b4ddd5b016bfd9"

$ quorum.pauseBlockMaker (temporary) orders the node to stop creating blocks
> quorum.pauseBlockMaker()
null
> quorum.nodeInfo
{
  blockMakerAccount: "0x7bd175a388c7a5f33fb81bbb3b7e97cbfabb3600",
  blockmakestrategy: {
    maxblocktime: 6,
    minblocktime: 3,
    status: "paused",
    type: "deadline"
  },
  canCreateBlocks: true,
  canVote: true,
  voteAccount: "0x7bd175a388c7a5f33fb81bbb3b7e97cbfabb3600"
}

$ quorum.resumeBlockMaker instructs the node stop begin creating blocks again when its paused.
> quorum.resumeBlockMaker()
null
> quorum.nodeInfo
{
  blockMakerAccount: "0x7bd175a388c7a5f33fb81bbb3b7e97cbfabb3600",
  blockmakestrategy: {
    maxblocktime: 6,
    minblocktime: 3,
    status: "active",
    type: "deadline"
  },
  canCreateBlocks: true,
  canVote: true,
  voteAccount: "0x7bd175a388c7a5f33fb81bbb3b7e97cbfabb3600"
}

### Command line flags
QUORUM OPTIONS:
  --voteaccount value		Address that is used to vote for blocks
  --votepassword value		Password to unlock the voting address
  --blockmakeraccount value	Address that is used to create blocks
  --blockmakerpassword value	Password to unlock the block maker address
  --singleblockmaker		Indicate this node is the only node that can create blocks
  --minblocktime value		Set minimum block time (default: 3)
  --maxblocktime value		Set max block time (default: 10)

Documentation

Index

Constants

View Source
const (
	// Create bindings with: go run cmd/abigen/main.go -abi <definition> -pkg quorum -type VotingContract > core/quorum/binding.go
	ABI = `` /* 2965-byte string literal not displayed */

	// browser solidity with optimizations: 0.4.2+commit.af6afb04.mod.Emscripten.clang
	RuntimeCode = "" /* 4026-byte string literal not displayed */
)
View Source
const VotingContractABI = `` /* 2965-byte string literal not displayed */

VotingContractABI is the input ABI used to generate the binding from.

Variables

This section is empty.

Functions

func NewRandomDeadelineStrategy

func NewRandomDeadelineStrategy(mux *event.TypeMux, min, max uint) *randomDeadlineStrategy

NewRandomDeadelineStrategy returns a block maker strategy that generated blocks randomly between the given min and max seconds.

Types

type BlockMaker

type BlockMaker interface {
	// Pending returns the pending block and pending state.
	Pending() (*types.Block, *state.StateDB)
}

BlockMaker defines the interface that block makers must provide.

type BlockMakerStatus

type BlockMakerStatus int
const (
	Active BlockMakerStatus = iota
	Paused                  = iota
)

type BlockMakerStrategy

type BlockMakerStrategy interface {
	// Start generating blocks
	Start() error
	// (temporary) stop generating blocks
	Pause() error
	// Resume after a pause
	Resume() error
	// Status returns indication if this implementation
	// is generation CreateBlock events.
	Status() BlockMakerStatus
}
var (
	Strategy BlockMakerStrategy
)

type BlockVoting

type BlockVoting struct {
	// contains filtered or unexported fields
}

BlockVoting is a type of BlockMaker that uses a smart contract to determine the canonical chain. Parties that are allowed to vote send vote transactions to the voting contract. Based on these transactions the parent block is selected where the next block will be build on top of.

func NewBlockVoting

func NewBlockVoting(bc *core.BlockChain, chainConfig *core.ChainConfig, txpool *core.TxPool, mux *event.TypeMux, db ethdb.Database, accountMgr *accounts.Manager, isSynchronised bool) *BlockVoting

NewBlockVoting creates a new BlockVoting instance. blockMakerKey and/or voteKey can be nil in case this node doesn't create blocks or vote. Note, don't forget to call Start.

func (*BlockVoting) Pending

func (bv *BlockVoting) Pending() (*types.Block, *state.StateDB, *state.StateDB)

func (*BlockVoting) Start

func (bv *BlockVoting) Start(client *rpc.Client, strat BlockMakerStrategy, voteKey, blockMakerKey *ecdsa.PrivateKey) error

Start runs the event loop.

type CreateBlock

type CreateBlock struct {
	Hash chan common.Hash
	Err  chan error
}

CreateBlock is posted to the event mux when the BlockVoting instance is ordered to create a new block. Either the hash of the created block is returned is hash or an error.

type PublicQuorumAPI

type PublicQuorumAPI struct {
	// contains filtered or unexported fields
}

func NewPublicQuorumAPI

func NewPublicQuorumAPI(bv *BlockVoting) *PublicQuorumAPI

func (*PublicQuorumAPI) CanonicalHash

func (api *PublicQuorumAPI) CanonicalHash(height rpc.HexNumber) (common.Hash, error)

func (*PublicQuorumAPI) IsBlockMaker

func (api *PublicQuorumAPI) IsBlockMaker(addr common.Address) (bool, error)

func (*PublicQuorumAPI) IsVoter

func (api *PublicQuorumAPI) IsVoter(addr common.Address) (bool, error)

func (*PublicQuorumAPI) MakeBlock

func (api *PublicQuorumAPI) MakeBlock() (common.Hash, error)

func (*PublicQuorumAPI) NodeInfo

func (api *PublicQuorumAPI) NodeInfo() map[string]interface{}

func (*PublicQuorumAPI) PauseBlockMaker

func (api *PublicQuorumAPI) PauseBlockMaker() error

func (PublicQuorumAPI) ResumeBlockMaker

func (api PublicQuorumAPI) ResumeBlockMaker() error

func (*PublicQuorumAPI) Vote

func (api *PublicQuorumAPI) Vote(blockHash common.Hash) (common.Hash, error)

type Vote

type Vote struct {
	Hash   common.Hash
	Number *big.Int
	TxHash chan common.Hash
	Err    chan error
}

Vote is posted to the event mux when the BlockVoting instance is ordered to send a new vote transaction. Hash is the hash for the given number depth.

type VotingContract

type VotingContract struct {
	VotingContractCaller     // Read-only binding to the contract
	VotingContractTransactor // Write-only binding to the contract
}

VotingContract is an auto generated Go binding around an Ethereum contract.

func NewVotingContract

func NewVotingContract(address common.Address, backend bind.ContractBackend) (*VotingContract, error)

NewVotingContract creates a new instance of VotingContract, bound to a specific deployed contract.

type VotingContractCaller

type VotingContractCaller struct {
	// contains filtered or unexported fields
}

VotingContractCaller is an auto generated read-only Go binding around an Ethereum contract.

func NewVotingContractCaller

func NewVotingContractCaller(address common.Address, caller bind.ContractCaller) (*VotingContractCaller, error)

NewVotingContractCaller creates a new read-only instance of VotingContract, bound to a specific deployed contract.

func (*VotingContractCaller) BlockMakerCount

func (_VotingContract *VotingContractCaller) BlockMakerCount(opts *bind.CallOpts) (*big.Int, error)

BlockMakerCount is a free data retrieval call binding the contract method 0xcf528985.

Solidity: function blockMakerCount() constant returns(uint256)

func (*VotingContractCaller) CanCreateBlocks

func (_VotingContract *VotingContractCaller) CanCreateBlocks(opts *bind.CallOpts, arg0 common.Address) (bool, error)

CanCreateBlocks is a free data retrieval call binding the contract method 0x488099a6.

Solidity: function canCreateBlocks( address) constant returns(bool)

func (*VotingContractCaller) CanVote

func (_VotingContract *VotingContractCaller) CanVote(opts *bind.CallOpts, arg0 common.Address) (bool, error)

CanVote is a free data retrieval call binding the contract method 0xadfaa72e.

Solidity: function canVote( address) constant returns(bool)

func (*VotingContractCaller) GetCanonHash

func (_VotingContract *VotingContractCaller) GetCanonHash(opts *bind.CallOpts, height *big.Int) ([32]byte, error)

GetCanonHash is a free data retrieval call binding the contract method 0x559c390c.

Solidity: function getCanonHash(height uint256) constant returns(bytes32)

func (*VotingContractCaller) GetEntry

func (_VotingContract *VotingContractCaller) GetEntry(opts *bind.CallOpts, height *big.Int, n *big.Int) ([32]byte, error)

GetEntry is a free data retrieval call binding the contract method 0x98ba676d.

Solidity: function getEntry(height uint256, n uint256) constant returns(bytes32)

func (*VotingContractCaller) GetSize

func (_VotingContract *VotingContractCaller) GetSize(opts *bind.CallOpts) (*big.Int, error)

GetSize is a free data retrieval call binding the contract method 0xde8fa431.

Solidity: function getSize() constant returns(uint256)

func (*VotingContractCaller) IsBlockMaker

func (_VotingContract *VotingContractCaller) IsBlockMaker(opts *bind.CallOpts, addr common.Address) (bool, error)

IsBlockMaker is a free data retrieval call binding the contract method 0xe814d1c7.

Solidity: function isBlockMaker(addr address) constant returns(bool)

func (*VotingContractCaller) IsVoter

func (_VotingContract *VotingContractCaller) IsVoter(opts *bind.CallOpts, addr common.Address) (bool, error)

IsVoter is a free data retrieval call binding the contract method 0xa7771ee3.

Solidity: function isVoter(addr address) constant returns(bool)

func (*VotingContractCaller) VoteThreshold

func (_VotingContract *VotingContractCaller) VoteThreshold(opts *bind.CallOpts) (*big.Int, error)

VoteThreshold is a free data retrieval call binding the contract method 0x4fe437d5.

Solidity: function voteThreshold() constant returns(uint256)

func (*VotingContractCaller) VoterCount

func (_VotingContract *VotingContractCaller) VoterCount(opts *bind.CallOpts) (*big.Int, error)

VoterCount is a free data retrieval call binding the contract method 0x42169e48.

Solidity: function voterCount() constant returns(uint256)

type VotingContractCallerRaw

type VotingContractCallerRaw struct {
	Contract *VotingContractCaller // Generic read-only contract binding to access the raw methods on
}

VotingContractCallerRaw is an auto generated low-level read-only Go binding around an Ethereum contract.

func (*VotingContractCallerRaw) Call

func (_VotingContract *VotingContractCallerRaw) Call(opts *bind.CallOpts, result interface{}, method string, params ...interface{}) error

Call invokes the (constant) contract method with params as input values and sets the output to result. The result type might be a single field for simple returns, a slice of interfaces for anonymous returns and a struct for named returns.

type VotingContractCallerSession

type VotingContractCallerSession struct {
	Contract *VotingContractCaller // Generic contract caller binding to set the session for
	CallOpts bind.CallOpts         // Call options to use throughout this session
}

VotingContractCallerSession is an auto generated read-only Go binding around an Ethereum contract, with pre-set call options.

func (*VotingContractCallerSession) BlockMakerCount

func (_VotingContract *VotingContractCallerSession) BlockMakerCount() (*big.Int, error)

BlockMakerCount is a free data retrieval call binding the contract method 0xcf528985.

Solidity: function blockMakerCount() constant returns(uint256)

func (*VotingContractCallerSession) CanCreateBlocks

func (_VotingContract *VotingContractCallerSession) CanCreateBlocks(arg0 common.Address) (bool, error)

CanCreateBlocks is a free data retrieval call binding the contract method 0x488099a6.

Solidity: function canCreateBlocks( address) constant returns(bool)

func (*VotingContractCallerSession) CanVote

func (_VotingContract *VotingContractCallerSession) CanVote(arg0 common.Address) (bool, error)

CanVote is a free data retrieval call binding the contract method 0xadfaa72e.

Solidity: function canVote( address) constant returns(bool)

func (*VotingContractCallerSession) GetCanonHash

func (_VotingContract *VotingContractCallerSession) GetCanonHash(height *big.Int) ([32]byte, error)

GetCanonHash is a free data retrieval call binding the contract method 0x559c390c.

Solidity: function getCanonHash(height uint256) constant returns(bytes32)

func (*VotingContractCallerSession) GetEntry

func (_VotingContract *VotingContractCallerSession) GetEntry(height *big.Int, n *big.Int) ([32]byte, error)

GetEntry is a free data retrieval call binding the contract method 0x98ba676d.

Solidity: function getEntry(height uint256, n uint256) constant returns(bytes32)

func (*VotingContractCallerSession) GetSize

func (_VotingContract *VotingContractCallerSession) GetSize() (*big.Int, error)

GetSize is a free data retrieval call binding the contract method 0xde8fa431.

Solidity: function getSize() constant returns(uint256)

func (*VotingContractCallerSession) IsBlockMaker

func (_VotingContract *VotingContractCallerSession) IsBlockMaker(addr common.Address) (bool, error)

IsBlockMaker is a free data retrieval call binding the contract method 0xe814d1c7.

Solidity: function isBlockMaker(addr address) constant returns(bool)

func (*VotingContractCallerSession) IsVoter

func (_VotingContract *VotingContractCallerSession) IsVoter(addr common.Address) (bool, error)

IsVoter is a free data retrieval call binding the contract method 0xa7771ee3.

Solidity: function isVoter(addr address) constant returns(bool)

func (*VotingContractCallerSession) VoteThreshold

func (_VotingContract *VotingContractCallerSession) VoteThreshold() (*big.Int, error)

VoteThreshold is a free data retrieval call binding the contract method 0x4fe437d5.

Solidity: function voteThreshold() constant returns(uint256)

func (*VotingContractCallerSession) VoterCount

func (_VotingContract *VotingContractCallerSession) VoterCount() (*big.Int, error)

VoterCount is a free data retrieval call binding the contract method 0x42169e48.

Solidity: function voterCount() constant returns(uint256)

type VotingContractRaw

type VotingContractRaw struct {
	Contract *VotingContract // Generic contract binding to access the raw methods on
}

VotingContractRaw is an auto generated low-level Go binding around an Ethereum contract.

func (*VotingContractRaw) Call

func (_VotingContract *VotingContractRaw) Call(opts *bind.CallOpts, result interface{}, method string, params ...interface{}) error

Call invokes the (constant) contract method with params as input values and sets the output to result. The result type might be a single field for simple returns, a slice of interfaces for anonymous returns and a struct for named returns.

func (*VotingContractRaw) Transact

func (_VotingContract *VotingContractRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error)

Transact invokes the (paid) contract method with params as input values.

func (*VotingContractRaw) Transfer

func (_VotingContract *VotingContractRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error)

Transfer initiates a plain transaction to move funds to the contract, calling its default method if one is available.

type VotingContractSession

type VotingContractSession struct {
	Contract     *VotingContract   // Generic contract binding to set the session for
	CallOpts     bind.CallOpts     // Call options to use throughout this session
	TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session
}

VotingContractSession is an auto generated Go binding around an Ethereum contract, with pre-set call and transact options.

func (*VotingContractSession) AddBlockMaker

func (_VotingContract *VotingContractSession) AddBlockMaker(addr common.Address) (*types.Transaction, error)

AddBlockMaker is a paid mutator transaction binding the contract method 0x72a571fc.

Solidity: function addBlockMaker(addr address) returns()

func (*VotingContractSession) AddVoter

func (_VotingContract *VotingContractSession) AddVoter(addr common.Address) (*types.Transaction, error)

AddVoter is a paid mutator transaction binding the contract method 0xf4ab9adf.

Solidity: function addVoter(addr address) returns()

func (*VotingContractSession) BlockMakerCount

func (_VotingContract *VotingContractSession) BlockMakerCount() (*big.Int, error)

BlockMakerCount is a free data retrieval call binding the contract method 0xcf528985.

Solidity: function blockMakerCount() constant returns(uint256)

func (*VotingContractSession) CanCreateBlocks

func (_VotingContract *VotingContractSession) CanCreateBlocks(arg0 common.Address) (bool, error)

CanCreateBlocks is a free data retrieval call binding the contract method 0x488099a6.

Solidity: function canCreateBlocks( address) constant returns(bool)

func (*VotingContractSession) CanVote

func (_VotingContract *VotingContractSession) CanVote(arg0 common.Address) (bool, error)

CanVote is a free data retrieval call binding the contract method 0xadfaa72e.

Solidity: function canVote( address) constant returns(bool)

func (*VotingContractSession) GetCanonHash

func (_VotingContract *VotingContractSession) GetCanonHash(height *big.Int) ([32]byte, error)

GetCanonHash is a free data retrieval call binding the contract method 0x559c390c.

Solidity: function getCanonHash(height uint256) constant returns(bytes32)

func (*VotingContractSession) GetEntry

func (_VotingContract *VotingContractSession) GetEntry(height *big.Int, n *big.Int) ([32]byte, error)

GetEntry is a free data retrieval call binding the contract method 0x98ba676d.

Solidity: function getEntry(height uint256, n uint256) constant returns(bytes32)

func (*VotingContractSession) GetSize

func (_VotingContract *VotingContractSession) GetSize() (*big.Int, error)

GetSize is a free data retrieval call binding the contract method 0xde8fa431.

Solidity: function getSize() constant returns(uint256)

func (*VotingContractSession) IsBlockMaker

func (_VotingContract *VotingContractSession) IsBlockMaker(addr common.Address) (bool, error)

IsBlockMaker is a free data retrieval call binding the contract method 0xe814d1c7.

Solidity: function isBlockMaker(addr address) constant returns(bool)

func (*VotingContractSession) IsVoter

func (_VotingContract *VotingContractSession) IsVoter(addr common.Address) (bool, error)

IsVoter is a free data retrieval call binding the contract method 0xa7771ee3.

Solidity: function isVoter(addr address) constant returns(bool)

func (*VotingContractSession) RemoveBlockMaker

func (_VotingContract *VotingContractSession) RemoveBlockMaker(addr common.Address) (*types.Transaction, error)

RemoveBlockMaker is a paid mutator transaction binding the contract method 0x284d163c.

Solidity: function removeBlockMaker(addr address) returns()

func (*VotingContractSession) RemoveVoter

func (_VotingContract *VotingContractSession) RemoveVoter(addr common.Address) (*types.Transaction, error)

RemoveVoter is a paid mutator transaction binding the contract method 0x86c1ff68.

Solidity: function removeVoter(addr address) returns()

func (*VotingContractSession) SetVoteThreshold

func (_VotingContract *VotingContractSession) SetVoteThreshold(threshold *big.Int) (*types.Transaction, error)

SetVoteThreshold is a paid mutator transaction binding the contract method 0x12909485.

Solidity: function setVoteThreshold(threshold uint256) returns()

func (*VotingContractSession) Vote

func (_VotingContract *VotingContractSession) Vote(height *big.Int, hash [32]byte) (*types.Transaction, error)

Vote is a paid mutator transaction binding the contract method 0x68bb8bb6.

Solidity: function vote(height uint256, hash bytes32) returns()

func (*VotingContractSession) VoteThreshold

func (_VotingContract *VotingContractSession) VoteThreshold() (*big.Int, error)

VoteThreshold is a free data retrieval call binding the contract method 0x4fe437d5.

Solidity: function voteThreshold() constant returns(uint256)

func (*VotingContractSession) VoterCount

func (_VotingContract *VotingContractSession) VoterCount() (*big.Int, error)

VoterCount is a free data retrieval call binding the contract method 0x42169e48.

Solidity: function voterCount() constant returns(uint256)

type VotingContractTransactor

type VotingContractTransactor struct {
	// contains filtered or unexported fields
}

VotingContractTransactor is an auto generated write-only Go binding around an Ethereum contract.

func NewVotingContractTransactor

func NewVotingContractTransactor(address common.Address, transactor bind.ContractTransactor) (*VotingContractTransactor, error)

NewVotingContractTransactor creates a new write-only instance of VotingContract, bound to a specific deployed contract.

func (*VotingContractTransactor) AddBlockMaker

func (_VotingContract *VotingContractTransactor) AddBlockMaker(opts *bind.TransactOpts, addr common.Address) (*types.Transaction, error)

AddBlockMaker is a paid mutator transaction binding the contract method 0x72a571fc.

Solidity: function addBlockMaker(addr address) returns()

func (*VotingContractTransactor) AddVoter

func (_VotingContract *VotingContractTransactor) AddVoter(opts *bind.TransactOpts, addr common.Address) (*types.Transaction, error)

AddVoter is a paid mutator transaction binding the contract method 0xf4ab9adf.

Solidity: function addVoter(addr address) returns()

func (*VotingContractTransactor) RemoveBlockMaker

func (_VotingContract *VotingContractTransactor) RemoveBlockMaker(opts *bind.TransactOpts, addr common.Address) (*types.Transaction, error)

RemoveBlockMaker is a paid mutator transaction binding the contract method 0x284d163c.

Solidity: function removeBlockMaker(addr address) returns()

func (*VotingContractTransactor) RemoveVoter

func (_VotingContract *VotingContractTransactor) RemoveVoter(opts *bind.TransactOpts, addr common.Address) (*types.Transaction, error)

RemoveVoter is a paid mutator transaction binding the contract method 0x86c1ff68.

Solidity: function removeVoter(addr address) returns()

func (*VotingContractTransactor) SetVoteThreshold

func (_VotingContract *VotingContractTransactor) SetVoteThreshold(opts *bind.TransactOpts, threshold *big.Int) (*types.Transaction, error)

SetVoteThreshold is a paid mutator transaction binding the contract method 0x12909485.

Solidity: function setVoteThreshold(threshold uint256) returns()

func (*VotingContractTransactor) Vote

func (_VotingContract *VotingContractTransactor) Vote(opts *bind.TransactOpts, height *big.Int, hash [32]byte) (*types.Transaction, error)

Vote is a paid mutator transaction binding the contract method 0x68bb8bb6.

Solidity: function vote(height uint256, hash bytes32) returns()

type VotingContractTransactorRaw

type VotingContractTransactorRaw struct {
	Contract *VotingContractTransactor // Generic write-only contract binding to access the raw methods on
}

VotingContractTransactorRaw is an auto generated low-level write-only Go binding around an Ethereum contract.

func (*VotingContractTransactorRaw) Transact

func (_VotingContract *VotingContractTransactorRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error)

Transact invokes the (paid) contract method with params as input values.

func (*VotingContractTransactorRaw) Transfer

func (_VotingContract *VotingContractTransactorRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error)

Transfer initiates a plain transaction to move funds to the contract, calling its default method if one is available.

type VotingContractTransactorSession

type VotingContractTransactorSession struct {
	Contract     *VotingContractTransactor // Generic contract transactor binding to set the session for
	TransactOpts bind.TransactOpts         // Transaction auth options to use throughout this session
}

VotingContractTransactorSession is an auto generated write-only Go binding around an Ethereum contract, with pre-set transact options.

func (*VotingContractTransactorSession) AddBlockMaker

func (_VotingContract *VotingContractTransactorSession) AddBlockMaker(addr common.Address) (*types.Transaction, error)

AddBlockMaker is a paid mutator transaction binding the contract method 0x72a571fc.

Solidity: function addBlockMaker(addr address) returns()

func (*VotingContractTransactorSession) AddVoter

func (_VotingContract *VotingContractTransactorSession) AddVoter(addr common.Address) (*types.Transaction, error)

AddVoter is a paid mutator transaction binding the contract method 0xf4ab9adf.

Solidity: function addVoter(addr address) returns()

func (*VotingContractTransactorSession) RemoveBlockMaker

func (_VotingContract *VotingContractTransactorSession) RemoveBlockMaker(addr common.Address) (*types.Transaction, error)

RemoveBlockMaker is a paid mutator transaction binding the contract method 0x284d163c.

Solidity: function removeBlockMaker(addr address) returns()

func (*VotingContractTransactorSession) RemoveVoter

func (_VotingContract *VotingContractTransactorSession) RemoveVoter(addr common.Address) (*types.Transaction, error)

RemoveVoter is a paid mutator transaction binding the contract method 0x86c1ff68.

Solidity: function removeVoter(addr address) returns()

func (*VotingContractTransactorSession) SetVoteThreshold

func (_VotingContract *VotingContractTransactorSession) SetVoteThreshold(threshold *big.Int) (*types.Transaction, error)

SetVoteThreshold is a paid mutator transaction binding the contract method 0x12909485.

Solidity: function setVoteThreshold(threshold uint256) returns()

func (*VotingContractTransactorSession) Vote

func (_VotingContract *VotingContractTransactorSession) Vote(height *big.Int, hash [32]byte) (*types.Transaction, error)

Vote is a paid mutator transaction binding the contract method 0x68bb8bb6.

Solidity: function vote(height uint256, hash bytes32) returns()

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL