Documentation
¶
Index ¶
- Constants
- func AuthHandler(handler http.Handler, accessTokens *accesstoken.CredentialStore) http.Handler
- func RedirectHandler(next http.Handler) http.Handler
- type API
- func (a *API) GetNodeInfo() *NetInfo
- func (a *API) GetTxFeedByAlias(ctx context.Context, filter string) ([]byte, error)
- func (a *API) GetWork() (*GetWorkResp, error)
- func (a *API) IsMining() bool
- func (a *API) ServeHTTP(rw http.ResponseWriter, req *http.Request)
- func (a *API) StartServer(address string)
- func (a *API) SubmitWork(bh *types.BlockHeader) error
- type AccountInfo
- type BlockReq
- type BlockTx
- type BuildRequest
- type EstimateTxGasResp
- type GetBlockHeaderResp
- type GetBlockResp
- type GetDifficultyResp
- type GetWorkResp
- type NetInfo
- type RawTx
- type ResetPasswordResp
- type Response
- type SignMsgResp
- type SubmitWorkReq
- type TxResponse
- type VerifyMsgResp
- type WalletImage
Constants ¶
const ( // SUCCESS indicates the rpc calling is successful. SUCCESS = "success" // FAIL indicated the rpc calling is failed. FAIL = "fail" )
Variables ¶
This section is empty.
Functions ¶
func AuthHandler ¶
func AuthHandler(handler http.Handler, accessTokens *accesstoken.CredentialStore) http.Handler
AuthHandler access token auth Handler
Types ¶
type API ¶
type API struct {
// contains filtered or unexported fields
}
API is the scheduling center for server
func NewAPI ¶
func NewAPI(sync *netsync.SyncManager, wallet *wallet.Wallet, txfeeds *txfeed.Tracker, cpuMiner *cpuminer.CPUMiner, miningPool *miningpool.MiningPool, chain *protocol.Chain, config *cfg.Config, token *accesstoken.CredentialStore) *API
NewAPI create and initialize the API
func (*API) GetTxFeedByAlias ¶
func (*API) SubmitWork ¶
func (a *API) SubmitWork(bh *types.BlockHeader) error
SubmitWork submit work
type BlockReq ¶
type BlockReq struct {
BlockHeight uint64 `json:"block_height"`
BlockHash chainjson.HexBytes `json:"block_hash"`
}
BlockReq is used to handle getBlock req
type BlockTx ¶
type BlockTx struct {
ID bc.Hash `json:"id"`
Version uint64 `json:"version"`
Size uint64 `json:"size"`
TimeRange uint64 `json:"time_range"`
Inputs []*query.AnnotatedInput `json:"inputs"`
Outputs []*query.AnnotatedOutput `json:"outputs"`
StatusFail bool `json:"status_fail"`
}
BlockTx is the tx struct for getBlock func
type BuildRequest ¶
type BuildRequest struct {
Tx *types.TxData `json:"base_transaction"`
Actions []map[string]interface{} `json:"actions"`
TTL json.Duration `json:"ttl"`
TimeRange uint64 `json:"time_range"`
}
BuildRequest is main struct when building transactions
type EstimateTxGasResp ¶
type EstimateTxGasResp struct {
TotalNeu int64 `json:"total_neu"`
StorageNeu int64 `json:"storage_neu"`
VMNeu int64 `json:"vm_neu"`
}
EstimateTxGasResp estimate transaction consumed gas
func EstimateTxGas ¶
func EstimateTxGas(template txbuilder.Template) (*EstimateTxGasResp, error)
EstimateTxGas estimate consumed neu for transaction
type GetBlockHeaderResp ¶
type GetBlockHeaderResp struct {
BlockHeader *types.BlockHeader `json:"block_header"`
Reward uint64 `json:"reward"`
}
GetBlockHeaderResp is resp struct for getBlockHeader API
type GetBlockResp ¶
type GetBlockResp struct {
Hash *bc.Hash `json:"hash"`
Size uint64 `json:"size"`
Version uint64 `json:"version"`
Height uint64 `json:"height"`
PreviousBlockHash *bc.Hash `json:"previous_block_hash"`
Timestamp uint64 `json:"timestamp"`
Nonce uint64 `json:"nonce"`
Bits uint64 `json:"bits"`
Difficulty string `json:"difficulty"`
TransactionsMerkleRoot *bc.Hash `json:"transaction_merkle_root"`
TransactionStatusHash *bc.Hash `json:"transaction_status_hash"`
Transactions []*BlockTx `json:"transactions"`
}
GetBlockResp is the resp for getBlock api
type GetDifficultyResp ¶
type GetDifficultyResp struct {
BlockHash *bc.Hash `json:"hash"`
BlockHeight uint64 `json:"height"`
Bits uint64 `json:"bits"`
Difficulty string `json:"difficulty"`
}
GetDifficultyResp is resp struct for getDifficulty API
type GetWorkResp ¶
type GetWorkResp struct {
BlockHeader *types.BlockHeader `json:"block_header"`
Seed *bc.Hash `json:"seed"`
}
GetWorkResp is resp struct for API
type NetInfo ¶
type NetInfo struct {
Listening bool `json:"listening"`
Syncing bool `json:"syncing"`
Mining bool `json:"mining"`
PeerCount int `json:"peer_count"`
CurrentBlock uint64 `json:"current_block"`
HighestBlock uint64 `json:"highest_block"`
NetWorkID string `json:"network_id"`
Version string `json:"version"`
}
NetInfo indicate net information
type RawTx ¶
type RawTx struct {
Version uint64 `json:"version"`
Size uint64 `json:"size"`
TimeRange uint64 `json:"time_range"`
Inputs []*query.AnnotatedInput `json:"inputs"`
Outputs []*query.AnnotatedOutput `json:"outputs"`
Fee int64 `json:"fee"`
}
RawTx is the tx struct for getRawTransaction
type ResetPasswordResp ¶
type ResetPasswordResp struct {
Changed bool `json:"changed"`
}
ResetPasswordResp is response for reset password password
type Response ¶
type Response struct {
Status string `json:"status,omitempty"`
Msg string `json:"msg,omitempty"`
Data interface{} `json:"data,omitempty"`
}
Response describes the response standard.
func NewSuccessResponse ¶
func NewSuccessResponse(data interface{}) Response
NewSuccessResponse success response
type SignMsgResp ¶
type SignMsgResp struct {
Signature string `json:"signature"`
DerivedXPub chainkd.XPub `json:"derived_xpub"`
}
SignMsgResp is response for sign message
type SubmitWorkReq ¶
type SubmitWorkReq struct {
BlockHeader *types.BlockHeader `json:"block_header"`
}
SubmitWorkReq used to submitWork req
type TxResponse ¶
type TxResponse struct {
ID string `json:"id"`
Timestamp uint64 `json:"timestamp"`
BlockID string `json:"block_id"`
BlockHeight uint64 `json:"block_height"`
BlockTransactionsCount uint32 `json:"block_transaction_count"`
Confirmation uint64 `json:"confirmation"`
StatusFail bool `json:"status_fail"`
Inputs []*db.TxInputs `json:"inputs"`
Outputs []*db.TxOutputs `json:"outputs"`
Op string `json:"op"`
Fee uint64 `json:"fee"`
Amount uint64 `json:"amount"`
}
TxResponse for list-transactions response
type VerifyMsgResp ¶
type VerifyMsgResp struct {
VerifyResult bool `json:"result"`
}
VerifyMsgResp is response for verify message