Documentation
¶
Index ¶
- Constants
- func DecodeNode(b blocks.Block) (format.Node, error)
- func MarshalNode(n *Node) ([]byte, error)
- func NewEncoder(dag format.DAGService) recovery.Encoder
- func NewRecoverer(ctx context.Context, dag format.DAGService, strg recovery.Strategy) recovery.Recoverer
- type Node
- func (n *Node) AddNodeLink(name string, that format.Node) error
- func (n *Node) AddRawLink(name string, l *format.Link) error
- func (n *Node) AddRedundantNode(nd format.Node)
- func (n *Node) Cid() cid.Cid
- func (n *Node) CidBuilder() cid.Builder
- func (n *Node) Copy() format.Node
- func (n *Node) Proto() *merkledag.ProtoNode
- func (n *Node) RawData() []byte
- func (n *Node) Recoverability() recovery.Recoverability
- func (n *Node) RecoveryLinks() []*format.Link
- func (n *Node) RemoveNodeLink(name string) error
- func (n *Node) RemoveRedundantNode(id cid.Cid)
- func (n *Node) SetCidBuilder(b cid.Builder)
- func (n *Node) SetData(d []byte)
- func (n *Node) Size() (uint64, error)
- func (n *Node) Stat() (*format.NodeStat, error)
- func (n *Node) String() string
Constants ¶
View Source
const Codec uint64 = 0x700 // random number // TODO Register in IPFS codec table.
Custom codec for Reed-Solomon recovery Nodes.
Variables ¶
This section is empty.
Functions ¶
func DecodeNode ¶
func DecodeNode(b blocks.Block) (format.Node, error)
func MarshalNode ¶
func NewEncoder ¶
func NewEncoder(dag format.DAGService) recovery.Encoder
NewEncoder creates new Reed-Solomon Encoder.
func NewRecoverer ¶
func NewRecoverer(ctx context.Context, dag format.DAGService, strg recovery.Strategy) recovery.Recoverer
NewRecoverer creates new Reed-Solomon Recoverer. Strategy have to be an option,
Types ¶
type Node ¶
type Node struct { *merkledag.ProtoNode // contains filtered or unexported fields }
Node is a recovery Node based ob Reed-Solomon coding.
func Encode ¶
func Encode(ctx context.Context, dag format.DAGService, nd format.Node, r recovery.Recoverability) (*Node, error)
TODO Refactor to use Shards Encode applies Reed-Solomon coding on the given IPLD Node promoting it to a recovery Node. Use `r` to specify needed amount of generated recovery Nodes.
func UnmarshalNode ¶
func (*Node) AddNodeLink ¶
func (*Node) AddRawLink ¶
Shadowed methods to reset caching.
func (*Node) AddRedundantNode ¶
func (n *Node) AddRedundantNode(nd format.Node)
func (*Node) CidBuilder ¶
func (n *Node) CidBuilder() cid.Builder
func (*Node) Recoverability ¶
func (n *Node) Recoverability() recovery.Recoverability
func (*Node) RecoveryLinks ¶
func (n *Node) RecoveryLinks() []*format.Link
func (*Node) RemoveNodeLink ¶
func (*Node) RemoveRedundantNode ¶
func (n *Node) RemoveRedundantNode(id cid.Cid)
func (*Node) SetCidBuilder ¶
func (n *Node) SetCidBuilder(b cid.Builder)
Click to show internal directories.
Click to hide internal directories.