feat(datatransfer): make dag service dt async
To more closely match the implementation, make calls to dag service in DT module asynchronous
This commit is contained in:
parent
d0b705705f
commit
4e1e43f10f
@ -58,14 +58,16 @@ func (impl *dagserviceImpl) OpenPushDataChannel(to peer.ID, voucher Voucher, bas
|
|||||||
// open a data transfer that will request data from the sending peer and
|
// open a data transfer that will request data from the sending peer and
|
||||||
// transfer parts of the piece that match the selector
|
// transfer parts of the piece that match the selector
|
||||||
func (impl *dagserviceImpl) OpenPullDataChannel(to peer.ID, voucher Voucher, baseCid cid.Cid, Selector ipld.Node) (ChannelID, error) {
|
func (impl *dagserviceImpl) OpenPullDataChannel(to peer.ID, voucher Voucher, baseCid cid.Cid, Selector ipld.Node) (ChannelID, error) {
|
||||||
err := merkledag.FetchGraph(context.TODO(), baseCid, impl.dag)
|
go func() {
|
||||||
var event Event
|
err := merkledag.FetchGraph(context.TODO(), baseCid, impl.dag)
|
||||||
if err != nil {
|
var event Event
|
||||||
event = Error
|
if err != nil {
|
||||||
} else {
|
event = Error
|
||||||
event = Complete
|
} else {
|
||||||
}
|
event = Complete
|
||||||
impl.subscriber(event, ChannelState{Channel: Channel{voucher: voucher}})
|
}
|
||||||
|
impl.subscriber(event, ChannelState{Channel: Channel{voucher: voucher}})
|
||||||
|
}()
|
||||||
return ChannelID{}, nil
|
return ChannelID{}, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user