return p.block
}
-func (p *attachBlockProcessor) processWithdrawalToMainchain(txIndex uint64, tx *btmTypes.Tx) error {
+func (p *attachBlockProcessor) processIssuing(db *gorm.DB, txs []*btmTypes.Tx) error {
+ return addIssueAssets(db, txs)
+}
+
+func (p *attachBlockProcessor) processDepositFromMainchain(txIndex uint64, tx *btmTypes.Tx) error {
blockHash := p.getBlock().(*btmTypes.Block).Hash()
var muxID btmBc.Hash
ormTx := &orm.CrossTransaction{
ChainID: p.chain.ID,
- Direction: common.WithdrawalDirection,
+ Direction: common.DepositDirection,
BlockHeight: p.getBlock().(*btmTypes.Block).Height,
BlockHash: blockHash.String(),
TxIndex: txIndex,
return errors.Wrap(err, fmt.Sprintf("create DepositFromMainchain tx %s", tx.ID.String()))
}
+ for i, input := range getCrossChainInputs(ormTx.ID, tx) {
+ if err := p.db.Create(input).Error; err != nil {
+ return errors.Wrap(err, fmt.Sprintf("create DepositFromMainchain input: txid(%s), pos(%d)", tx.ID.String(), i))
+ }
+ }
+
return nil
}
-func (p *attachBlockProcessor) processDepositFromMainchain(txIndex uint64, tx *btmTypes.Tx) error {
+func (p *attachBlockProcessor) processWithdrawalToMainchain(txIndex uint64, tx *btmTypes.Tx) error {
blockHash := p.getBlock().(*btmTypes.Block).Hash()
var muxID btmBc.Hash
ormTx := &orm.CrossTransaction{
ChainID: p.chain.ID,
- Direction: common.DepositDirection,
+ Direction: common.WithdrawalDirection,
BlockHeight: p.getBlock().(*btmTypes.Block).Height,
BlockHash: blockHash.String(),
TxIndex: txIndex,
return errors.Wrap(err, fmt.Sprintf("create DepositFromMainchain tx %s", tx.ID.String()))
}
- for i, input := range getCrossChainInputs(ormTx.ID, tx) {
- if err := p.db.Create(input).Error; err != nil {
- return errors.Wrap(err, fmt.Sprintf("create DepositFromMainchain input: txid(%s), pos(%d)", tx.ID.String(), i))
- }
- }
+ return nil
+}
+func (p *attachBlockProcessor) processDepositToSidechain(txIndex uint64, tx *vaporTypes.Tx) error {
return nil
}
-func (p *attachBlockProcessor) processIssuing(db *gorm.DB, txs []*btmTypes.Tx) error {
- return addIssueAssets(db, txs)
+func (p *attachBlockProcessor) processWithdrawalFromSidechain(txIndex uint64, tx *vaporTypes.Tx) error {
+ return nil
}
func (p *attachBlockProcessor) processChainInfo() error {
getBlock() interface{}
processWithdrawalToMainchain(uint64, *btmTypes.Tx) error
processDepositFromMainchain(uint64, *btmTypes.Tx) error
+ processDepositToSidechain(uint64, *vaporTypes.Tx) error
+ processWithdrawalFromSidechain(uint64, *vaporTypes.Tx) error
processIssuing(*gorm.DB, []*btmTypes.Tx) error
processChainInfo() error
// getCoin() *orm.Coin
block := bp.getBlock().(*vaporTypes.Block)
for i, tx := range block.Transactions {
if isDepositToSidechain(tx) {
- // bp.processDepositToSidechain(uint64(i), tx)
+ bp.processDepositToSidechain(uint64(i), tx)
}
if isWithdrawalFromSidechain(tx) {
- // bp.processWithdrawalFromSidechain(uint64(i), tx)
+ bp.processWithdrawalFromSidechain(uint64(i), tx)
}
}
}
return p.block
}
-func (p *detachBlockProcessor) processWithdrawalToMainchain(txIndex uint64, tx *btmTypes.Tx) error {
- return p.db.Delete(&orm.CrossTransaction{ChainID: p.chain.ID, TxHash: tx.ID.String()}).Error
+func (p *detachBlockProcessor) processIssuing(db *gorm.DB, txs []*btmTypes.Tx) error {
+ return nil
}
func (p *detachBlockProcessor) processDepositFromMainchain(txIndex uint64, tx *btmTypes.Tx) error {
return p.db.Delete(ormTx).Error
}
-func (p *detachBlockProcessor) processIssuing(db *gorm.DB, txs []*btmTypes.Tx) error {
+func (p *detachBlockProcessor) processWithdrawalToMainchain(txIndex uint64, tx *btmTypes.Tx) error {
+ return p.db.Delete(&orm.CrossTransaction{ChainID: p.chain.ID, TxHash: tx.ID.String()}).Error
+}
+
+func (p *detachBlockProcessor) processDepositToSidechain(txIndex uint64, tx *vaporTypes.Tx) error {
+ return nil
+}
+
+func (p *detachBlockProcessor) processWithdrawalFromSidechain(txIndex uint64, tx *vaporTypes.Tx) error {
return nil
}
if db.RowsAffected != 1 {
return ErrInconsistentDB
}
+
return nil
}