Documentation
¶
Index ¶
- Constants
- Variables
- func AskForBlock(height int32, hash string, blockHolder []b.Block) bool
- func BcHolders(w http.ResponseWriter, r *http.Request)
- func BuildTransactionsList(chain p2.Blockchain) map[string]bool
- func CIDPage(w http.ResponseWriter, r *http.Request)
- func Canonical(w http.ResponseWriter, r *http.Request)
- func ClientLogin(w http.ResponseWriter, r *http.Request)
- func ClientSignUp(w http.ResponseWriter, r *http.Request)
- func Download()
- func DownloadPeerMapPid()
- func GenerateTransactionsMPT() p1.MerklePatriciaTrie
- func GetMyId(w http.ResponseWriter, r *http.Request)
- func GetTransactionPool()
- func GiveDefaultTokens(cid p5.ClientId)
- func GiveMinerTokens(cid p5.Identity)
- func HeartBeatReceive(w http.ResponseWriter, r *http.Request)
- func InitBalanceBook()
- func Logger(inner http.Handler, name string) http.Handler
- func Login(w http.ResponseWriter, r *http.Request)
- func NewClient(w http.ResponseWriter, r *http.Request)
- func NewRouter() *mux.Router
- func Register() int32
- func SendBlockBeat(height int32, parentHash string, nonce string, mpt p1.MerklePatriciaTrie)
- func ServeClient(w http.ResponseWriter, r *http.Request)
- func SetCID(w http.ResponseWriter, r *http.Request)
- func Show(w http.ResponseWriter, r *http.Request)
- func ShowBalanceBook(w http.ResponseWriter, r *http.Request)
- func ShowBcHolders(w http.ResponseWriter, r *http.Request)
- func ShowBlockMpt(w http.ResponseWriter, r *http.Request)
- func ShowTransactionPool(w http.ResponseWriter, r *http.Request)
- func ShowWallet(w http.ResponseWriter, r *http.Request)
- func SignUp(w http.ResponseWriter, r *http.Request)
- func Start(w http.ResponseWriter, r *http.Request)
- func StartHeartBeat()
- func StartTryingNonces()
- func TransactionBeatRecv(w http.ResponseWriter, r *http.Request)
- func TransactionForm(w http.ResponseWriter, r *http.Request)
- func TransactionPoolRecv(w http.ResponseWriter, r *http.Request)
- func Upload(w http.ResponseWriter, r *http.Request)
- func UploadBlock(w http.ResponseWriter, r *http.Request)
- func UploadGenesis(w http.ResponseWriter, r *http.Request)
- func UploadPids(w http.ResponseWriter, r *http.Request)
- type Route
- type Routes
Constants ¶
const Difficulty = 5
Variables ¶
var BCH p5.BlockChainHolders
can use here --> var Peers data.PeerList
var BC_DOWNLOAD_SERVER = INIT_SERVER + "/upload"
SELF_ADDR var BC_DOWNLOAD_SERVER = TA_SERVER + "/upload"
var BalanceBook p5.BalanceBook
var CID p5.ClientId
var GetNewParent bool
var ID p5.Identity
var INIT_SERVER = "http://localhost:6686"
var TA_SERVER = "http://localhost:6688"
var PID_DOWNLOAD_SERVER = INIT_SERVER + "/uploadpids"
var Peers data.PeerList
Peers is the Peer List which is for each node
var SBC data.SyncBlockChain
SBC is safe for distributed use
var SELF_ADDR = "http://localhost:6686"
changes in init for arg of port provided
var SELF_ADDR_PREFIX = "http://localhost:"
var TxPool p5.TransactionPool
var Wallet p5.Wallet
Functions ¶
func AskForBlock ¶
AskForBlock - Ask another server to return a block of certain height and hash
func BuildTransactionsList ¶
func BuildTransactionsList(chain p2.Blockchain) map[string]bool
func Canonical ¶
func Canonical(w http.ResponseWriter, r *http.Request)
Canonical func - Display canonical chain
func ClientLogin ¶
func ClientLogin(w http.ResponseWriter, r *http.Request)
func ClientSignUp ¶
func ClientSignUp(w http.ResponseWriter, r *http.Request)
func DownloadPeerMapPid ¶
func DownloadPeerMapPid()
func GenerateTransactionsMPT ¶
func GenerateTransactionsMPT() p1.MerklePatriciaTrie
func to generate transactionMPT
func GetTransactionPool ¶
func GetTransactionPool()
func GiveDefaultTokens ¶
func GiveMinerTokens ¶
func HeartBeatReceive ¶
func HeartBeatReceive(w http.ResponseWriter, r *http.Request)
HeartBeatReceive func - Received a heartbeat in request body
func InitBalanceBook ¶
func InitBalanceBook()
func SendBlockBeat ¶
func SendBlockBeat(height int32, parentHash string, nonce string, mpt p1.MerklePatriciaTrie)
SendBlockBeat func prepares heartbeat data and sends across to peers
func ServeClient ¶
func ServeClient(w http.ResponseWriter, r *http.Request)
func ShowBalanceBook ¶
func ShowBalanceBook(w http.ResponseWriter, r *http.Request)
func ShowBcHolders ¶
func ShowBcHolders(w http.ResponseWriter, r *http.Request)
func ShowBlockMpt ¶
func ShowBlockMpt(w http.ResponseWriter, r *http.Request)
called when /showBlockMpt/{height}/{hash} is called
func ShowTransactionPool ¶
func ShowTransactionPool(w http.ResponseWriter, r *http.Request)
func ShowWallet ¶
func ShowWallet(w http.ResponseWriter, r *http.Request)
func Start ¶
func Start(w http.ResponseWriter, r *http.Request)
Start handler - does Register ID, download BlockChain, start HeartBeat
func StartHeartBeat ¶
func StartHeartBeat()
StartHeartBeat func periodically sends heartbeatdata to peers
func StartTryingNonces ¶
func StartTryingNonces()
StartTryingNonces func sends heartbeatdata with new block information to peers
func TransactionBeatRecv ¶
func TransactionBeatRecv(w http.ResponseWriter, r *http.Request)
TransactionBeatRecv func takes http request POST /txbeat/receive - verify txSig - verify tx valid - add to TxPool - forward to Peers
func TransactionForm ¶
func TransactionForm(w http.ResponseWriter, r *http.Request)
func TransactionPoolRecv ¶
func TransactionPoolRecv(w http.ResponseWriter, r *http.Request)
func Upload ¶
func Upload(w http.ResponseWriter, r *http.Request)
Upload blockchain to whoever called this method, return jsonStr
func UploadBlock ¶
func UploadBlock(w http.ResponseWriter, r *http.Request)
UploadBlock func - Upload a block to whoever called this method, return jsonStr
func UploadGenesis ¶
func UploadGenesis(w http.ResponseWriter, r *http.Request)
Upload genesis blockchain to whoever called this method, return jsonStr
func UploadPids ¶
func UploadPids(w http.ResponseWriter, r *http.Request)
Upload blockchain to whoever called this method, return jsonStr