Home Reference Source Test
public class | source

NanoConsensus

Extends:

ObservableBaseConsensusBaseMiniConsensus → NanoConsensus

Constructor Summary

Public Constructor
public

constructor(blockchain: NanoChain, mempool: NanoMempool, network: Network)

Member Summary

Public Members
public get
public get

Inherited Summary

From class Observable
public static get

WILDCARD: string: string

public

bubble(observable: Observable, types: ...string)

public

fire(type: string, args: ...*): Promise

public

off(type: string, id: number)

public

on(type: string, callback: Function): number

From class BaseConsensus
public get

established: boolean

public get
public get
protected

_established: boolean

public abstract

async getAccounts(addresses: Array<Address>): Promise<Array<Account>>

public

async getBlock(hash: Hash, includeBody: boolean, includeBodyFromLocal: boolean, blockHeight: number): Promise<Block>

public

async getBlockAt(height: number, includeBody: boolean): Promise<Block>

public

async getBlockTemplate(minerAddress: Address, extraData: Uint8Array): Promise<Block>

public

async getHeadHash(): Promise<Hash>

public

async getHeadHeight(): Promise<number>

public
public

getPendingTransactions(hashes: Array<Hash>): Promise<Array<Transaction>>

public

async getPendingTransactionsByAddress(address: Address): Promise<Array<Transaction>>

public
public
public

getTransactionReceiptsByHashes(hashes: Array<Hash>): Promise<Array<TransactionReceipt>>

public

async getTransactionsFromBlock(hashes: Array<Hash>, blockHash: Hash, blockHeight: number, block: Block): Promise<Array<Transaction>>

public

async getTransactionsFromBlockByAddresses(addresses: Array<Address>, blockHash: Hash, blockHeight: number): Promise<Array<Transaction>>

public
public abstract

async sendTransaction(tx: Transaction): Promise<BaseConsensus.SendTransactionResult>

public

async submitBlock(block: Block): Promise<boolean>

public

subscribe(subscription: Subscription)

protected
protected

_hasEnoughPeers(numSyncedFullNodes: number, numSyncedNodes: number): boolean

protected
protected
protected
protected

_onPeerLeft(peer: Peer)

protected
protected
protected

_onToDisconnect(obj: Observable, type: string, callback: function)

protected
protected
protected

async _requestBlockProof(blockHashToProve: Hash, blockHeightToProve: number): Promise<Block>

protected

async _requestBlockProofAt(blockHeightToProve: number): Promise<Block>

protected

async _requestTransactionHistory(address: Address): Promise<Array<{transaction: Transaction, header: BlockHeader}>>

this method was deprecated.
protected
protected

async _requestTransactionsByAddresses(addresses: Array<Address>, block: Block): Promise<Array<Transaction>>

protected
From class BaseMiniConsensus
public

addSubscriptions(newAddresses: Array<Address> | Address)

this method was deprecated.
public

async getAccount(address: Address, blockHash: Hash): PromiseAccount>

public

async getAccounts(addresses: Array<Address>, blockHash: Hash): Promise<Array<Account>>

public

async getPendingTransactions(hashes: Array<Hash>): Promise<Array<Transaction>>

public

async getPendingTransactionsByAddress(address: Address): Promise<Array<Transaction>>

public

async relayTransaction(transaction: Transaction): Promise<void>

public

removeSubscriptions(addressesToRemove: Array<Address> | Address)

this method was deprecated.
public

async sendTransaction(tx: Transaction): Promise<BaseConsensus.SendTransactionResult>

public

subscribe(subscription: *)

public

subscribeAccounts(addresses: Array<Address>)

this method was deprecated.
protected

Public Constructors

public constructor(blockchain: NanoChain, mempool: NanoMempool, network: Network) source

Override:

BaseMiniConsensus#constructor

Params:

NameTypeAttributeDescription
blockchain NanoChain
mempool NanoMempool
network Network

Public Members

public get blockchain: NanoChain source

public get mempool: NanoMempool source