Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func GetChannelStateMigrations ¶
func GetChannelStateMigrations(selfPeer peer.ID) (versioning.VersionedMigrationList, error)
GetChannelStateMigrations returns a migration list for the channel states
func MigrateChannelState2To3 ¶
func MigrateChannelState2To3(oldChannelState *ChannelStateV2) (*internal.ChannelState, error)
Types ¶
type ChannelStateV2 ¶
type ChannelStateV2 struct {
// PeerId of the manager peer
SelfPeer peer.ID
// an identifier for this channel shared by request and responder, set by requester through protocol
TransferID datatransfer.TransferID
// Initiator is the person who intiated this datatransfer request
Initiator peer.ID
// Responder is the person who is responding to this datatransfer request
Responder peer.ID
// base CID for the piece being transferred
BaseCid cid.Cid
// portion of Piece to return, specified by an IPLD selector
Selector internal.CborGenCompatibleNode
// the party that is sending the data (not who initiated the request)
Sender peer.ID
// the party that is receiving the data (not who initiated the request)
Recipient peer.ID
// expected amount of data to be transferred
TotalSize uint64
// current status of this deal
Status datatransfer.Status
// total bytes read from this node and queued for sending (0 if receiver)
Queued uint64
// total bytes sent from this node (0 if receiver)
Sent uint64
// total bytes received by this node (0 if sender)
Received uint64
// more informative status on a channel
Message string
Vouchers []internal.EncodedVoucher
VoucherResults []internal.EncodedVoucherResult
// Number of blocks that have been received, including blocks that are
// present in more than one place in the DAG
ReceivedBlocksTotal int64
// Number of blocks that have been queued, including blocks that are
// present in more than one place in the DAG
QueuedBlocksTotal int64
// Number of blocks that have been sent, including blocks that are
// present in more than one place in the DAG
SentBlocksTotal int64
// DataLimit is the maximum data that can be transferred on this channel before
// revalidation. 0 indicates no limit.
DataLimit uint64
// RequiresFinalization indicates at the end of the transfer, the channel should
// be left open for a final settlement
RequiresFinalization bool
// Stages traces the execution of a data transfer.
//
// EXPERIMENTAL; subject to change.
Stages *datatransfer.ChannelStages
}
ChannelStateV2 is the internal representation on disk for the channel fsm, version 2
func NoOpChannelState0To2 ¶
func NoOpChannelState0To2(oldChannelState *ChannelStateV2) (*ChannelStateV2, error)
func (*ChannelStateV2) MarshalCBOR ¶
func (t *ChannelStateV2) MarshalCBOR(w io.Writer) error
func (*ChannelStateV2) UnmarshalCBOR ¶
func (t *ChannelStateV2) UnmarshalCBOR(r io.Reader) (err error)
Click to show internal directories.
Click to hide internal directories.