diff --git a/swarm/network/stream/common_test.go b/swarm/network/stream/common_test.go index c14a078087..cfbfa37b2d 100644 --- a/swarm/network/stream/common_test.go +++ b/swarm/network/stream/common_test.go @@ -75,8 +75,7 @@ func NewStreamerService(ctx *adapters.ServiceContext) (node.Service, error) { addr := toAddr(id) kad := network.NewKademlia(addr.Over(), network.NewKadParams()) store := stores[id].(*storage.LocalStore) - netStore := storage.NewNetStore(store, nil) - db := storage.NewDBAPI(netStore) + db := storage.NewDBAPI(store) delivery := NewDelivery(kad, db) deliveries[id] = delivery r := NewRegistry(addr, delivery, db, state.NewMemStore(), defaultSkipCheck, false) @@ -108,9 +107,7 @@ func newStreamerTester(t *testing.T) (*p2ptest.ProtocolTester, *Registry, *stora return nil, nil, nil, removeDataDir, err } - netStore := storage.NewNetStore(localStore, nil) - db := storage.NewDBAPI(netStore) - + db := storage.NewDBAPI(localStore) delivery := NewDelivery(to, db) streamer := NewRegistry(addr, delivery, db, state.NewMemStore(), defaultSkipCheck, false) teardown := func() { diff --git a/swarm/network/stream/intervals_test.go b/swarm/network/stream/intervals_test.go index af6496fb73..2823b7e855 100644 --- a/swarm/network/stream/intervals_test.go +++ b/swarm/network/stream/intervals_test.go @@ -47,9 +47,7 @@ func newIntervalsStreamerService(ctx *adapters.ServiceContext) (node.Service, er addr := toAddr(id) kad := network.NewKademlia(addr.Over(), network.NewKadParams()) store := stores[id].(*storage.LocalStore) - - netStore := storage.NewNetStore(store, nil) - db := storage.NewDBAPI(netStore) + db := storage.NewDBAPI(store) delivery := NewDelivery(kad, db) deliveries[id] = delivery r := NewRegistry(addr, delivery, db, state.NewMemStore(), defaultSkipCheck, false) diff --git a/swarm/network/stream/syncer_test.go b/swarm/network/stream/syncer_test.go index 9afe38adbb..938c33d98c 100644 --- a/swarm/network/stream/syncer_test.go +++ b/swarm/network/stream/syncer_test.go @@ -108,8 +108,7 @@ func testSyncBetweenNodes(t *testing.T, nodes, conns, chunkCount int, skipCheck // create DBAPI-s for all nodes dbs := make([]*storage.DBAPI, nodes) for i := 0; i < nodes; i++ { - netStore := storage.NewNetStore(sim.Stores[i].(*storage.LocalStore), nil) - dbs[i] = storage.NewDBAPI(netStore) + dbs[i] = storage.NewDBAPI(sim.Stores[i].(*storage.LocalStore)) } // collect hashes in po 1 bin for each node diff --git a/swarm/storage/dbapi.go b/swarm/storage/dbapi.go index 565ef9f8fa..a9c6d749e7 100644 --- a/swarm/storage/dbapi.go +++ b/swarm/storage/dbapi.go @@ -18,34 +18,35 @@ package storage // wrapper of db-s to provide mockable custom local chunk store access to syncer type DBAPI struct { - ns *NetStore + db *LDBStore + loc *LocalStore } -func NewDBAPI(ns *NetStore) *DBAPI { - return &DBAPI{ns: ns} +func NewDBAPI(loc *LocalStore) *DBAPI { + return &DBAPI{loc.DbStore, loc} } // to obtain the chunks from key or request db entry only func (self *DBAPI) Get(key Key) (*Chunk, error) { - return self.ns.localStore.Get(key) + return self.loc.Get(key) } // current storage counter of chunk db func (self *DBAPI) CurrentBucketStorageIndex(po uint8) uint64 { - return self.ns.localStore.DbStore.CurrentBucketStorageIndex(po) + return self.db.CurrentBucketStorageIndex(po) } // iteration storage counter and proximity order func (self *DBAPI) Iterator(from uint64, to uint64, po uint8, f func(Key, uint64) bool) error { - return self.ns.localStore.DbStore.SyncIterator(from, to, po, f) + return self.db.SyncIterator(from, to, po, f) } // to obtain the chunks from key or request db entry only func (self *DBAPI) GetOrCreateRequest(key Key) (*Chunk, bool) { - return self.ns.localStore.GetOrCreateRequest(key) + return self.loc.GetOrCreateRequest(key) } // to obtain the chunks from key or request db entry only func (self *DBAPI) Put(chunk *Chunk) { - self.ns.localStore.Put(chunk) + self.loc.Put(chunk) } diff --git a/swarm/swarm.go b/swarm/swarm.go index 28351527d3..dac54f5270 100644 --- a/swarm/swarm.go +++ b/swarm/swarm.go @@ -146,10 +146,7 @@ func NewSwarm(ctx *node.ServiceContext, backend chequebook.Backend, config *api. HiveParams: config.HiveParams, } - // init netStore - ns := storage.NewNetStore(self.lstore, self.streamer.Retrieve) - - db := storage.NewDBAPI(ns) + db := storage.NewDBAPI(self.lstore) delivery := stream.NewDelivery(to, db) // TODO: decide on intervals store file location stateStore, err := state.NewDBStore(filepath.Join(config.Path, "state-store.db")) @@ -161,10 +158,10 @@ func NewSwarm(ctx *node.ServiceContext, backend chequebook.Backend, config *api. self.bzz = network.NewBzz(bzzconfig, to, stateStore, stream.Spec, self.streamer.Run) // set up DPA, the cloud storage local access layer - //dpaChunkStore := storage.NewNetStore(self.lstore, self.streamer.Retrieve) + dpaChunkStore := storage.NewNetStore(self.lstore, self.streamer.Retrieve) log.Debug(fmt.Sprintf("-> Local Access to Swarm")) // Swarm Hash Merklised Chunking for Arbitrary-length Document/File storage - self.dpa = storage.NewDPA(ns, self.config.ChunkerParams) + self.dpa = storage.NewDPA(dpaChunkStore, self.config.ChunkerParams) log.Debug(fmt.Sprintf("-> Content Store API")) // Pss = postal service over swarm (devp2p over bzz)