Documentation
¶
Index ¶
- Constants
- Variables
- func GetRsNode(l interface{}) (uio.Node, error)
- func InitDag(ctx context.Context, dataBuf *bytes.Buffer, cid string) context.Context
- func NewReedSolomonDirectory(ctx context.Context, root ipld.Node, dataNode ipld.Node, dserv ipld.DAGService, ...) (files.Node, error)
- func NewReedSolomonFileUnderDirectory(ctx context.Context, dserv ipld.DAGService, cid string, nd uio.Node, bfs bool) (files.Node, error)
- func NewReedSolomonStandaloneFile(ctx context.Context, root ipld.Node, dataNode ipld.Node, dserv ipld.DAGService, ...) (files.Node, error)
- func NewReedSolomonSubDirectory(ctx context.Context, dserv ipld.DAGService, cid string, nd uio.Node) (files.Node, error)
- func NewUnixfsFile(ctx context.Context, dserv ipld.DAGService, nd ipld.Node, ...) (files.Node, error)
- type MetadataStruct
- type ReedSolomonDag
- type RsDirectory
- type RsIterator
- type UnixfsFileOptions
Constants ¶
const ( ReedSolomonDagOff = 0 ReedSolomonDagOpen = 1 ReedSolomonDagNext = 2 ReedSolomonDagClose = 3 )
Variables ¶
var (
ErrNilTreeBuf = errors.New("treeBuf is nil for directory node")
)
Functions ¶
func NewReedSolomonDirectory ¶ added in v0.5.2
func NewReedSolomonDirectory(ctx context.Context, root ipld.Node, dataNode ipld.Node, dserv ipld.DAGService, opts UnixfsFileOptions, metaStruct *MetadataStruct) (files.Node, error)
NewReedSolomonDirectory returns files.Node for the root DAG node of a BTFS object in Reed-Solomon encoding. This builder function is supposed to be called only one time for `btfs get` for a BTFS merkle DAG.
func NewReedSolomonFileUnderDirectory ¶ added in v0.5.2
func NewReedSolomonFileUnderDirectory( ctx context.Context, dserv ipld.DAGService, cid string, nd uio.Node, bfs bool) (files.Node, error)
NewReedSolomonFileUnderDirectory returns a files.Node for the given `nd` Node. This functioon is called within the context of Reed-Solomon DAG for directory. The given `nd` is a uio.FileNode and is used to create a reader.
func NewReedSolomonStandaloneFile ¶ added in v0.5.2
func NewReedSolomonStandaloneFile(ctx context.Context, root ipld.Node, dataNode ipld.Node, dserv ipld.DAGService, opts UnixfsFileOptions, metaStruct *MetadataStruct) (files.Node, error)
func NewReedSolomonSubDirectory ¶ added in v0.5.2
func NewReedSolomonSubDirectory(ctx context.Context, dserv ipld.DAGService, cid string, nd uio.Node) (files.Node, error)
NewReedSolomonSugDirectory creates and returns a files.Dir with the given uio.Node.
func NewUnixfsFile ¶
func NewUnixfsFile(ctx context.Context, dserv ipld.DAGService, nd ipld.Node, opts UnixfsFileOptions) (files.Node, error)
NewUnixFsFile returns a DagReader for the 'nd' root node. If opts.Meta = true, only return a valid metadata node if it exists. If not, return error. If opts.Meta = false, return only the data contents. If opts.Meta = false && opts.RepairShards != nil, the shards would be reconstructed and added on this node.
Types ¶
type MetadataStruct ¶ added in v0.5.2
func ObtainMetadataFromDag ¶ added in v0.5.2
func ObtainMetadataFromDag(ctx context.Context, metaNode ipld.Node, dserv ipld.NodeGetter) (*MetadataStruct, error)
ObtainMetadataFromDag returns MetadataStruct object.
type ReedSolomonDag ¶ added in v0.5.2
type ReedSolomonDag struct {
// contains filtered or unexported fields
}
func NewReedSolomonDag ¶ added in v0.5.2
func NewReedSolomonDag(dataBuf *bytes.Buffer, cid string) *ReedSolomonDag
type RsDirectory ¶ added in v0.6.1
type RsDirectory struct {
// contains filtered or unexported fields
}
func (*RsDirectory) Close ¶ added in v0.6.1
func (d *RsDirectory) Close() error
func (*RsDirectory) Entries ¶ added in v0.6.1
func (d *RsDirectory) Entries() files.DirIterator
func (*RsDirectory) IsReedSolomon ¶ added in v0.6.1
func (f *RsDirectory) IsReedSolomon() bool
func (*RsDirectory) SetSize ¶ added in v0.6.1
func (f *RsDirectory) SetSize(size int64) error
func (*RsDirectory) Size ¶ added in v0.6.1
func (d *RsDirectory) Size() (int64, error)
type RsIterator ¶ added in v0.6.1
type RsIterator struct {
// contains filtered or unexported fields
}
func (*RsIterator) BreadthFirstTraversal ¶ added in v0.6.1
func (it *RsIterator) BreadthFirstTraversal()
func (*RsIterator) Err ¶ added in v0.6.1
func (it *RsIterator) Err() error
func (*RsIterator) Name ¶ added in v0.6.1
func (it *RsIterator) Name() string
func (*RsIterator) Next ¶ added in v0.6.1
func (it *RsIterator) Next() bool
func (*RsIterator) Node ¶ added in v0.6.1
func (it *RsIterator) Node() files.Node