github.com/evdatsion/aphelion-dpos-bft@v0.32.1/rpc/core/routes.go (about) 1 package core 2 3 import ( 4 rpc "github.com/evdatsion/aphelion-dpos-bft/rpc/lib/server" 5 ) 6 7 // TODO: better system than "unsafe" prefix 8 // NOTE: Amino is registered in rpc/core/types/wire.go. 9 var Routes = map[string]*rpc.RPCFunc{ 10 // subscribe/unsubscribe are reserved for websocket events. 11 "subscribe": rpc.NewWSRPCFunc(Subscribe, "query"), 12 "unsubscribe": rpc.NewWSRPCFunc(Unsubscribe, "query"), 13 "unsubscribe_all": rpc.NewWSRPCFunc(UnsubscribeAll, ""), 14 15 // info API 16 "health": rpc.NewRPCFunc(Health, ""), 17 "status": rpc.NewRPCFunc(Status, ""), 18 "net_info": rpc.NewRPCFunc(NetInfo, ""), 19 "blockchain": rpc.NewRPCFunc(BlockchainInfo, "minHeight,maxHeight"), 20 "genesis": rpc.NewRPCFunc(Genesis, ""), 21 "block": rpc.NewRPCFunc(Block, "height"), 22 "block_results": rpc.NewRPCFunc(BlockResults, "height"), 23 "commit": rpc.NewRPCFunc(Commit, "height"), 24 "tx": rpc.NewRPCFunc(Tx, "hash,prove"), 25 "tx_search": rpc.NewRPCFunc(TxSearch, "query,prove,page,per_page"), 26 "validators": rpc.NewRPCFunc(Validators, "height"), 27 "dump_consensus_state": rpc.NewRPCFunc(DumpConsensusState, ""), 28 "consensus_state": rpc.NewRPCFunc(ConsensusState, ""), 29 "consensus_params": rpc.NewRPCFunc(ConsensusParams, "height"), 30 "unconfirmed_txs": rpc.NewRPCFunc(UnconfirmedTxs, "limit"), 31 "num_unconfirmed_txs": rpc.NewRPCFunc(NumUnconfirmedTxs, ""), 32 33 // broadcast API 34 "broadcast_tx_commit": rpc.NewRPCFunc(BroadcastTxCommit, "tx"), 35 "broadcast_tx_sync": rpc.NewRPCFunc(BroadcastTxSync, "tx"), 36 "broadcast_tx_async": rpc.NewRPCFunc(BroadcastTxAsync, "tx"), 37 38 // abci API 39 "abci_query": rpc.NewRPCFunc(ABCIQuery, "path,data,height,prove"), 40 "abci_info": rpc.NewRPCFunc(ABCIInfo, ""), 41 } 42 43 func AddUnsafeRoutes() { 44 // control API 45 Routes["dial_seeds"] = rpc.NewRPCFunc(UnsafeDialSeeds, "seeds") 46 Routes["dial_peers"] = rpc.NewRPCFunc(UnsafeDialPeers, "peers,persistent") 47 Routes["unsafe_flush_mempool"] = rpc.NewRPCFunc(UnsafeFlushMempool, "") 48 49 // profiler API 50 Routes["unsafe_start_cpu_profiler"] = rpc.NewRPCFunc(UnsafeStartCPUProfiler, "filename") 51 Routes["unsafe_stop_cpu_profiler"] = rpc.NewRPCFunc(UnsafeStopCPUProfiler, "") 52 Routes["unsafe_write_heap_profile"] = rpc.NewRPCFunc(UnsafeWriteHeapProfile, "filename") 53 }