71 lines
2.0 KiB
Go
71 lines
2.0 KiB
Go
package bchain
|
|
|
|
import (
|
|
"errors"
|
|
"math/big"
|
|
)
|
|
|
|
// BaseChain is base type for bchain.BlockChain
|
|
type BaseChain struct {
|
|
Parser BlockChainParser
|
|
Testnet bool
|
|
Network string
|
|
}
|
|
|
|
// TODO more bchain.BlockChain methods
|
|
|
|
// GetChainParser returns BlockChainParser
|
|
func (b *BaseChain) GetChainParser() BlockChainParser {
|
|
return b.Parser
|
|
}
|
|
|
|
// IsTestnet returns true if the blockchain is testnet
|
|
func (b *BaseChain) IsTestnet() bool {
|
|
return b.Testnet
|
|
}
|
|
|
|
// GetNetworkName returns network name
|
|
func (b *BaseChain) GetNetworkName() string {
|
|
return b.Network
|
|
}
|
|
|
|
// GetBlockRaw is not supported by default
|
|
func (b *BaseChain) GetBlockRaw(hash string) (string, error) {
|
|
return "", errors.New("GetBlockRaw: not supported")
|
|
}
|
|
|
|
// GetMempoolEntry is not supported by default
|
|
func (b *BaseChain) GetMempoolEntry(txid string) (*MempoolEntry, error) {
|
|
return nil, errors.New("GetMempoolEntry: not supported")
|
|
}
|
|
|
|
// EthereumTypeGetBalance is not supported
|
|
func (b *BaseChain) EthereumTypeGetBalance(addrDesc AddressDescriptor) (*big.Int, error) {
|
|
return nil, errors.New("Not supported")
|
|
}
|
|
|
|
// EthereumTypeGetNonce is not supported
|
|
func (b *BaseChain) EthereumTypeGetNonce(addrDesc AddressDescriptor) (uint64, error) {
|
|
return 0, errors.New("Not supported")
|
|
}
|
|
|
|
// EthereumTypeEstimateGas is not supported
|
|
func (b *BaseChain) EthereumTypeEstimateGas(params map[string]interface{}) (uint64, error) {
|
|
return 0, errors.New("Not supported")
|
|
}
|
|
|
|
// GetContractInfo is not supported
|
|
func (b *BaseChain) GetContractInfo(contractDesc AddressDescriptor) (*ContractInfo, error) {
|
|
return nil, errors.New("Not supported")
|
|
}
|
|
|
|
// EthereumTypeGetErc20ContractBalance is not supported
|
|
func (b *BaseChain) EthereumTypeGetErc20ContractBalance(addrDesc, contractDesc AddressDescriptor) (*big.Int, error) {
|
|
return nil, errors.New("Not supported")
|
|
}
|
|
|
|
// GetContractInfo returns URI of non fungible or multi token defined by token id
|
|
func (p *BaseChain) GetTokenURI(contractDesc AddressDescriptor, tokenID *big.Int) (string, error) {
|
|
return "", errors.New("Not supported")
|
|
}
|