github.com/sixexorg/magnetic-ring@v0.0.0-20191119090307-31705a21e419/p2pserver/actor/req/txnpool.go (about)

     1  package req
     2  
     3  import (
     4  	"time"
     5  
     6  	"github.com/sixexorg/magnetic-ring/p2pserver/temp"
     7  
     8  	"github.com/ontio/ontology-eventbus/actor"
     9  	"github.com/sixexorg/magnetic-ring/log"
    10  
    11  	// "github.com/sixexorg/magnetic-ring/core/mainchain/types"
    12  	p2pcommon "github.com/sixexorg/magnetic-ring/p2pserver/common"
    13  	tc "github.com/sixexorg/magnetic-ring/txpool/mainchain"
    14  )
    15  
    16  const txnPoolReqTimeout = p2pcommon.ACTOR_TIMEOUT * time.Second
    17  
    18  var txnPoolPid *actor.PID
    19  
    20  func SetTxnPoolPid(txnPid *actor.PID) {
    21  	txnPoolPid = txnPid
    22  }
    23  
    24  //add txn to txnpool
    25  func AddTransaction(msgTrn *p2pcommon.Trn) {
    26  	if msgTrn.SyncType == p2pcommon.SYNC_DATA_ORG {
    27  		addOrgTransaction(msgTrn)
    28  		return
    29  	}
    30  	if txnPoolPid == nil {
    31  		log.Error("[p2p]net_server AddTransaction(): txnpool pid is nil")
    32  		return
    33  	}
    34  	txReq := tc.TxReq{
    35  		Tx:       msgTrn.Txn,
    36  		RespChan: nil,
    37  	}
    38  	txnPoolPid.Tell(txReq)
    39  }
    40  
    41  func addOrgTransaction(msgTrn *p2pcommon.Trn) {
    42  	container, err := temp.GetContainerByOrgID(msgTrn.OrgID)
    43  	if err != nil {
    44  		log.Error("GetLedger err", "orgid", msgTrn.OrgID, "err", err)
    45  		return
    46  	}
    47  	orgtxpool := container.TxPool()
    48  	if orgtxpool == nil {
    49  		log.Error("orgtxpool is null ", "orgid", msgTrn.OrgID, "err", err)
    50  		return
    51  	}
    52  	txnSubPoolPid := orgtxpool.GetTxpoolPID()
    53  	if txnSubPoolPid == nil {
    54  		log.Error("[p2p]net_server addOrgTransaction(): txnSubPoolPid pid is nil")
    55  		return
    56  	}
    57  	txReq := tc.TxReq{
    58  		Tx:       msgTrn.Txn,
    59  		RespChan: nil,
    60  	}
    61  	txnSubPoolPid.Tell(txReq)
    62  
    63  }