Versions in this module Expand all Collapse all v1 v1.6.6 Jun 23, 2017 v1.6.5 Jun 1, 2017 v1.6.4 Jun 1, 2017 v1.6.3 Jun 1, 2017 v1.6.2 May 31, 2017 v1.6.1 May 4, 2017 v1.6.0 Apr 14, 2017 v1.5.8 Feb 1, 2017 v1.5.7 Jan 16, 2017 v1.5.2 Nov 18, 2016 v1.5.1 Nov 16, 2016 v1.5.0 Nov 15, 2016 Changes in this version + var ZeroKey = Key(common.Hash{}.Bytes()) + func BytesToU64(data []byte) uint64 + func IsZeroKey(key Key) bool + func NewDpaChunkStore(localStore, netStore ChunkStore) *dpaChunkStore + func U64ToBytes(val uint64) []byte + type Chunk struct + C chan bool + Key Key + Req *RequestStatus + SData []byte + Size int64 + Source Peer + func NewChunk(key Key, rs *RequestStatus) *Chunk + func (self *Chunk) String() string + type ChunkStore interface + Get func(Key) (*Chunk, error) + Put func(*Chunk) + type Chunker interface + type ChunkerParams struct + Branches int64 + Hash string + func NewChunkerParams() *ChunkerParams + type CloudStore interface + Deliver func(*Chunk) + Retrieve func(*Chunk) + Store func(*Chunk) + type DPA struct + Chunker Chunker + func NewDPA(store ChunkStore, params *ChunkerParams) *DPA + func NewLocalDPA(datadir string) (*DPA, error) + func (self *DPA) Retrieve(key Key) LazySectionReader + func (self *DPA) Start() + func (self *DPA) Stop() + func (self *DPA) Store(data io.Reader, size int64, swg *sync.WaitGroup, wwg *sync.WaitGroup) (key Key, err error) + type DbStore struct + func NewDbStore(path string, hash Hasher, capacity uint64, radius int) (s *DbStore, err error) + func (s *DbStore) Counter() uint64 + func (s *DbStore) Get(key Key) (chunk *Chunk, err error) + func (s *DbStore) Put(chunk *Chunk) + func (self *DbStore) NewSyncIterator(state DbSyncState) (si *dbSyncIterator, err error) + type DbSyncState struct + First uint64 + Last uint64 + Start Key + Stop Key + type Hasher func() hash.Hash + func MakeHashFunc(hash string) Hasher + type Joiner interface + Join func(key Key, chunkC chan *Chunk) LazySectionReader + type Key []byte + func (key *Key) UnmarshalJSON(value []byte) error + func (key Key) Hex() string + func (key Key) Log() string + func (key Key) MarshalJSON() (out []byte, err error) + func (key Key) String() string + func (x Key) Size() uint + type LDBDatabase struct + func NewLDBDatabase(file string) (*LDBDatabase, error) + func (self *LDBDatabase) Close() + func (self *LDBDatabase) Delete(key []byte) error + func (self *LDBDatabase) Get(key []byte) ([]byte, error) + func (self *LDBDatabase) LastKnownTD() []byte + func (self *LDBDatabase) NewIterator() iterator.Iterator + func (self *LDBDatabase) Put(key []byte, value []byte) + func (self *LDBDatabase) Write(batch *leveldb.Batch) error + type LazyChunkReader struct + func (s *LazyChunkReader) Seek(offset int64, whence int) (int64, error) + func (self *LazyChunkReader) Read(b []byte) (read int, err error) + func (self *LazyChunkReader) ReadAt(b []byte, off int64) (read int, err error) + func (self *LazyChunkReader) Size(quitC chan bool) (n int64, err error) + type LazySectionReader interface + Size func(chan bool) (int64, error) + type LazyTestSectionReader struct + func (self *LazyTestSectionReader) Size(chan bool) (int64, error) + type LocalStore struct + DbStore ChunkStore + func NewLocalStore(hash Hasher, params *StoreParams) (*LocalStore, error) + func (self *LocalStore) Get(key Key) (chunk *Chunk, err error) + func (self *LocalStore) Put(chunk *Chunk) + type MemStore struct + func NewMemStore(d *DbStore, capacity uint) (m *MemStore) + func (s *MemStore) Get(hash Key) (chunk *Chunk, err error) + func (s *MemStore) Put(entry *Chunk) + type NetStore struct + func NewNetStore(hash Hasher, lstore *LocalStore, cloud CloudStore, params *StoreParams) *NetStore + func (self *NetStore) Get(key Key) (*Chunk, error) + func (self *NetStore) Put(entry *Chunk) + type Node struct + Children []common.Hash + Last bool + Pending int64 + Size uint64 + func (self *Node) String() string + type Peer interface + type PyramidChunker struct + func NewPyramidChunker(params *ChunkerParams) (self *PyramidChunker) + func (self *PyramidChunker) Split(data io.Reader, size int64, chunkC chan *Chunk, swg, wwg *sync.WaitGroup) (Key, error) + type RequestStatus struct + C chan bool + Key Key + Requesters map[uint64][]interface{} + Source Peer + type Splitter interface + Split func(io.Reader, int64, chan *Chunk, *sync.WaitGroup, *sync.WaitGroup) (Key, error) + type StoreParams struct + CacheCapacity uint + ChunkDbPath string + DbCapacity uint64 + Radius int + func NewStoreParams(path string) (self *StoreParams) + type Task struct + Data []byte + Index int64 + Last bool + Size uint64 + type Tree struct + Chunks int64 + Levels []map[int64]*Node + Lock sync.RWMutex + type TreeChunker struct + func NewTreeChunker(params *ChunkerParams) (self *TreeChunker) + func (self *TreeChunker) Join(key Key, chunkC chan *Chunk) LazySectionReader + func (self *TreeChunker) Split(data io.Reader, size int64, chunkC chan *Chunk, swg, wwg *sync.WaitGroup) (Key, error)