mirror of
https://github.com/kaspanet/kaspad.git
synced 2025-11-27 15:53:57 +00:00
addresses as string
This commit is contained in:
parent
75a2af1d71
commit
518aa6b351
@ -34,7 +34,7 @@ func HandleGetMempoolEntriesByAddresses(context *rpccontext.Context, _ *router.R
|
||||
return nil, err
|
||||
}
|
||||
|
||||
if transaction, found := sendingInMempool[address]; found {
|
||||
if transaction, found := sendingInMempool[address.String()]; found {
|
||||
rpcTransaction := appmessage.DomainTransactionToRPCTransaction(transaction)
|
||||
err := context.PopulateTransactionWithVerboseData(rpcTransaction, nil)
|
||||
if err != nil {
|
||||
@ -44,10 +44,12 @@ func HandleGetMempoolEntriesByAddresses(context *rpccontext.Context, _ *router.R
|
||||
sending = append(sending, &appmessage.MempoolEntry{
|
||||
Fee: transaction.Fee,
|
||||
Transaction: rpcTransaction,
|
||||
IsOrphan: false})
|
||||
IsOrphan: false,
|
||||
},
|
||||
)
|
||||
}
|
||||
|
||||
if transaction, found := receivingInMempool[address]; found {
|
||||
if transaction, found := receivingInMempool[address.String()]; found {
|
||||
rpcTransaction := appmessage.DomainTransactionToRPCTransaction(transaction)
|
||||
err := context.PopulateTransactionWithVerboseData(rpcTransaction, nil)
|
||||
if err != nil {
|
||||
@ -57,7 +59,9 @@ func HandleGetMempoolEntriesByAddresses(context *rpccontext.Context, _ *router.R
|
||||
receiving = append(receiving, &appmessage.MempoolEntry{
|
||||
Fee: transaction.Fee,
|
||||
Transaction: rpcTransaction,
|
||||
IsOrphan: false})
|
||||
IsOrphan: false,
|
||||
},
|
||||
)
|
||||
}
|
||||
}
|
||||
if getMempoolEntriesByAddressesRequest.IncludeOrphanPool {
|
||||
@ -67,7 +71,7 @@ func HandleGetMempoolEntriesByAddresses(context *rpccontext.Context, _ *router.R
|
||||
return nil, err
|
||||
}
|
||||
|
||||
if transaction, found := sendingInOrphanPool[address]; found {
|
||||
if transaction, found := sendingInOrphanPool[address.String()]; found {
|
||||
rpcTransaction := appmessage.DomainTransactionToRPCTransaction(transaction)
|
||||
err := context.PopulateTransactionWithVerboseData(rpcTransaction, nil)
|
||||
if err != nil {
|
||||
@ -77,10 +81,12 @@ func HandleGetMempoolEntriesByAddresses(context *rpccontext.Context, _ *router.R
|
||||
sending = append(sending, &appmessage.MempoolEntry{
|
||||
Fee: transaction.Fee,
|
||||
Transaction: rpcTransaction,
|
||||
IsOrphan: true})
|
||||
IsOrphan: true,
|
||||
},
|
||||
)
|
||||
}
|
||||
|
||||
if transaction, found := receivingInOrphanPool[address]; found {
|
||||
if transaction, found := receivingInOrphanPool[address.String()]; found {
|
||||
rpcTransaction := appmessage.DomainTransactionToRPCTransaction(transaction)
|
||||
err := context.PopulateTransactionWithVerboseData(rpcTransaction, nil)
|
||||
if err != nil {
|
||||
@ -90,7 +96,9 @@ func HandleGetMempoolEntriesByAddresses(context *rpccontext.Context, _ *router.R
|
||||
receiving = append(receiving, &appmessage.MempoolEntry{
|
||||
Fee: transaction.Fee,
|
||||
Transaction: rpcTransaction,
|
||||
IsOrphan: true})
|
||||
IsOrphan: true,
|
||||
},
|
||||
)
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@ -5,7 +5,6 @@ import (
|
||||
|
||||
"github.com/kaspanet/kaspad/domain/consensusreference"
|
||||
"github.com/kaspanet/kaspad/domain/dagconfig"
|
||||
"github.com/kaspanet/kaspad/util"
|
||||
|
||||
"github.com/kaspanet/kaspad/domain/consensus/model/externalapi"
|
||||
miningmanagermodel "github.com/kaspanet/kaspad/domain/miningmanager/model"
|
||||
@ -55,8 +54,8 @@ func (mp *mempool) GetTransaction(transactionID *externalapi.DomainTransactionID
|
||||
}
|
||||
|
||||
func (mp *mempool) GetTransactionsByAddresses() (
|
||||
sending map[util.Address]*externalapi.DomainTransaction,
|
||||
receiving map[util.Address]*externalapi.DomainTransaction,
|
||||
sending map[string]*externalapi.DomainTransaction,
|
||||
receiving map[string]*externalapi.DomainTransaction,
|
||||
err error,
|
||||
) {
|
||||
mp.mtx.RLock()
|
||||
@ -80,8 +79,8 @@ func (mp *mempool) GetOrphanTransaction(transactionID *externalapi.DomainTransac
|
||||
}
|
||||
|
||||
func (mp *mempool) GetOrphanTransactionsByAddresses() (
|
||||
sending map[util.Address]*externalapi.DomainTransaction,
|
||||
receiving map[util.Address]*externalapi.DomainTransaction,
|
||||
sending map[string]*externalapi.DomainTransaction,
|
||||
receiving map[string]*externalapi.DomainTransaction,
|
||||
err error,
|
||||
) {
|
||||
mp.mtx.RLock()
|
||||
|
||||
@ -5,7 +5,6 @@ import (
|
||||
|
||||
"github.com/kaspanet/kaspad/domain/consensus/utils/constants"
|
||||
"github.com/kaspanet/kaspad/domain/consensus/utils/txscript"
|
||||
"github.com/kaspanet/kaspad/util"
|
||||
|
||||
"github.com/kaspanet/kaspad/domain/consensus/ruleerrors"
|
||||
|
||||
@ -346,11 +345,11 @@ func (op *orphansPool) getOrphanTransaction(transactionID *externalapi.DomainTra
|
||||
}
|
||||
|
||||
func (op *orphansPool) getOrphanTransactionsByAddresses(clone bool) (
|
||||
sending map[util.Address]*externalapi.DomainTransaction,
|
||||
receiving map[util.Address]*externalapi.DomainTransaction,
|
||||
sending map[string]*externalapi.DomainTransaction,
|
||||
receiving map[string]*externalapi.DomainTransaction,
|
||||
err error) {
|
||||
sending = make(map[util.Address]*externalapi.DomainTransaction)
|
||||
receiving = make(map[util.Address]*externalapi.DomainTransaction)
|
||||
sending = make(map[string]*externalapi.DomainTransaction)
|
||||
receiving = make(map[string]*externalapi.DomainTransaction)
|
||||
var transaction *externalapi.DomainTransaction
|
||||
for _, mempoolTransaction := range op.allOrphans {
|
||||
if clone {
|
||||
@ -369,21 +368,20 @@ func (op *orphansPool) getOrphanTransactionsByAddresses(clone bool) (
|
||||
if address == nil { //none standard tx
|
||||
continue
|
||||
}
|
||||
sending[address] = transaction
|
||||
for _, output := range transaction.Outputs {
|
||||
_, address, err := txscript.ExtractScriptPubKeyAddress(output.ScriptPublicKey, op.mempool.params)
|
||||
if err != nil {
|
||||
return nil, nil, err
|
||||
}
|
||||
if address == nil { //none standard tx
|
||||
continue
|
||||
}
|
||||
receiving[address] = transaction
|
||||
|
||||
sending[address.String()] = transaction
|
||||
}
|
||||
for _, output := range transaction.Outputs {
|
||||
_, address, err := txscript.ExtractScriptPubKeyAddress(output.ScriptPublicKey, op.mempool.params)
|
||||
if err != nil {
|
||||
return nil, nil, err
|
||||
}
|
||||
if address == nil { //none standard tx
|
||||
continue
|
||||
}
|
||||
receiving[address.String()] = transaction
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
return sending, receiving, nil
|
||||
}
|
||||
|
||||
|
||||
@ -8,7 +8,6 @@ import (
|
||||
"github.com/kaspanet/kaspad/domain/consensus/model/externalapi"
|
||||
"github.com/kaspanet/kaspad/domain/consensus/utils/txscript"
|
||||
"github.com/kaspanet/kaspad/domain/miningmanager/mempool/model"
|
||||
"github.com/kaspanet/kaspad/util"
|
||||
)
|
||||
|
||||
type transactionsPool struct {
|
||||
@ -221,11 +220,11 @@ func (tp *transactionsPool) getTransaction(transactionID *externalapi.DomainTran
|
||||
}
|
||||
|
||||
func (tp *transactionsPool) getTransactionsByAddresses(clone bool) (
|
||||
sending map[util.Address]*externalapi.DomainTransaction,
|
||||
receiving map[util.Address]*externalapi.DomainTransaction,
|
||||
sending map[string]*externalapi.DomainTransaction,
|
||||
receiving map[string]*externalapi.DomainTransaction,
|
||||
err error) {
|
||||
sending = make(map[util.Address]*externalapi.DomainTransaction)
|
||||
receiving = make(map[util.Address]*externalapi.DomainTransaction)
|
||||
sending = make(map[string]*externalapi.DomainTransaction)
|
||||
receiving = make(map[string]*externalapi.DomainTransaction)
|
||||
var transaction *externalapi.DomainTransaction
|
||||
for _, mempoolTransaction := range tp.allTransactions {
|
||||
if clone {
|
||||
@ -234,6 +233,9 @@ func (tp *transactionsPool) getTransactionsByAddresses(clone bool) (
|
||||
transaction = mempoolTransaction.Transaction()
|
||||
}
|
||||
for _, input := range transaction.Inputs {
|
||||
if input.UTXOEntry == nil { //this should be fixed
|
||||
return nil, nil, err
|
||||
}
|
||||
_, address, err := txscript.ExtractScriptPubKeyAddress(input.UTXOEntry.ScriptPublicKey(), tp.mempool.params)
|
||||
if err != nil {
|
||||
return nil, nil, err
|
||||
@ -241,19 +243,20 @@ func (tp *transactionsPool) getTransactionsByAddresses(clone bool) (
|
||||
if address == nil { //ignore none-standard script
|
||||
continue
|
||||
}
|
||||
sending[address] = transaction
|
||||
for _, output := range transaction.Outputs {
|
||||
_, address, err := txscript.ExtractScriptPubKeyAddress(output.ScriptPublicKey, tp.mempool.params)
|
||||
if err != nil {
|
||||
return nil, nil, err
|
||||
}
|
||||
if address == nil { //ignore none-standard script
|
||||
continue
|
||||
}
|
||||
receiving[address] = transaction
|
||||
sending[address.String()] = transaction
|
||||
}
|
||||
for _, output := range transaction.Outputs {
|
||||
_, address, err := txscript.ExtractScriptPubKeyAddress(output.ScriptPublicKey, tp.mempool.params)
|
||||
if err != nil {
|
||||
return nil, nil, err
|
||||
}
|
||||
if address == nil { //ignore none-standard script
|
||||
continue
|
||||
}
|
||||
receiving[address.String()] = transaction
|
||||
}
|
||||
}
|
||||
|
||||
return sending, receiving, nil
|
||||
}
|
||||
|
||||
|
||||
@ -7,7 +7,6 @@ import (
|
||||
"github.com/kaspanet/kaspad/domain/consensus/model/externalapi"
|
||||
"github.com/kaspanet/kaspad/domain/consensusreference"
|
||||
miningmanagermodel "github.com/kaspanet/kaspad/domain/miningmanager/model"
|
||||
"github.com/kaspanet/kaspad/util"
|
||||
)
|
||||
|
||||
// MiningManager creates block templates for mining as well as maintaining
|
||||
@ -18,14 +17,14 @@ type MiningManager interface {
|
||||
GetBlockTemplateBuilder() miningmanagermodel.BlockTemplateBuilder
|
||||
GetTransaction(transactionID *externalapi.DomainTransactionID) (*externalapi.DomainTransaction, bool)
|
||||
GetTransactionsByAddresses() (
|
||||
sending map[util.Address]*externalapi.DomainTransaction,
|
||||
receiving map[util.Address]*externalapi.DomainTransaction,
|
||||
sending map[string]*externalapi.DomainTransaction,
|
||||
receiving map[string]*externalapi.DomainTransaction,
|
||||
err error)
|
||||
AllTransactions() []*externalapi.DomainTransaction
|
||||
GetOrphanTransaction(transactionID *externalapi.DomainTransactionID) (*externalapi.DomainTransaction, bool)
|
||||
GetOrphanTransactionsByAddresses() (
|
||||
sending map[util.Address]*externalapi.DomainTransaction,
|
||||
receiving map[util.Address]*externalapi.DomainTransaction,
|
||||
sending map[string]*externalapi.DomainTransaction,
|
||||
receiving map[string]*externalapi.DomainTransaction,
|
||||
err error)
|
||||
AllOrphanTransactions() []*externalapi.DomainTransaction
|
||||
TransactionCount() int
|
||||
@ -128,8 +127,8 @@ func (mm *miningManager) AllTransactions() []*externalapi.DomainTransaction {
|
||||
}
|
||||
|
||||
func (mm *miningManager) GetTransactionsByAddresses() (
|
||||
sending map[util.Address]*externalapi.DomainTransaction,
|
||||
receiving map[util.Address]*externalapi.DomainTransaction,
|
||||
sending map[string]*externalapi.DomainTransaction,
|
||||
receiving map[string]*externalapi.DomainTransaction,
|
||||
err error) {
|
||||
return mm.mempool.GetTransactionsByAddresses()
|
||||
}
|
||||
@ -141,8 +140,8 @@ func (mm *miningManager) GetOrphanTransaction(
|
||||
}
|
||||
|
||||
func (mm *miningManager) GetOrphanTransactionsByAddresses() (
|
||||
sending map[util.Address]*externalapi.DomainTransaction,
|
||||
receiving map[util.Address]*externalapi.DomainTransaction,
|
||||
sending map[string]*externalapi.DomainTransaction,
|
||||
receiving map[string]*externalapi.DomainTransaction,
|
||||
err error) {
|
||||
return mm.mempool.GetTransactionsByAddresses()
|
||||
}
|
||||
|
||||
@ -2,7 +2,6 @@ package model
|
||||
|
||||
import (
|
||||
"github.com/kaspanet/kaspad/domain/consensus/model/externalapi"
|
||||
"github.com/kaspanet/kaspad/util"
|
||||
)
|
||||
|
||||
// Mempool maintains a set of known transactions that
|
||||
@ -15,14 +14,14 @@ type Mempool interface {
|
||||
RemoveTransactions(txs []*externalapi.DomainTransaction, removeRedeemers bool) error
|
||||
GetTransaction(transactionID *externalapi.DomainTransactionID) (*externalapi.DomainTransaction, bool)
|
||||
GetTransactionsByAddresses() (
|
||||
sending map[util.Address]*externalapi.DomainTransaction,
|
||||
receiving map[util.Address]*externalapi.DomainTransaction,
|
||||
sending map[string]*externalapi.DomainTransaction,
|
||||
receiving map[string]*externalapi.DomainTransaction,
|
||||
err error)
|
||||
AllTransactions() []*externalapi.DomainTransaction
|
||||
GetOrphanTransaction(transactionID *externalapi.DomainTransactionID) (*externalapi.DomainTransaction, bool)
|
||||
GetOrphanTransactionsByAddresses() (
|
||||
sending map[util.Address]*externalapi.DomainTransaction,
|
||||
receiving map[util.Address]*externalapi.DomainTransaction,
|
||||
sending map[string]*externalapi.DomainTransaction,
|
||||
receiving map[string]*externalapi.DomainTransaction,
|
||||
err error)
|
||||
AllOrphanTransactions() []*externalapi.DomainTransaction
|
||||
TransactionCount() int
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user