@cryptotaxi247 / kubo / commits / 7c5679536

bugfix: use consistent interface

We'll want a `type blocks.Block interface {}` later, but for now, make sure Blockstore uses ptrs for both Get and Put. + fix NewBlock output compile error

Juan Batiz-Benet committed Oct 7, 2014 at 21:27 UTC 7c5679536c547f9f6ab0c120ae5192cfc572465e
3 files changed +7 -7
blockstore/blockstore.go
+2 -2
@@ -13,7 +13,7 @@ var ValueTypeMismatch = errors.New("The retrieved value is not a Block")
13
14 type Blockstore interface {
15 Get(u.Key) (*blocks.Block, error)
16 - Put(blocks.Block) error
16 + Put(*blocks.Block) error
17 }
18
19 func NewBlockstore(d ds.Datastore) Blockstore {
@@ -38,6 +38,6 @@ func (bs *blockstore) Get(k u.Key) (*blocks.Block, error) {
38 return blocks.NewBlock(bdata), nil
39 }
40
41 -func (bs *blockstore) Put(block blocks.Block) error {
41 +func (bs *blockstore) Put(block *blocks.Block) error {
42 return bs.datastore.Put(block.Key().DsKey(), block.Data)
43 }
exchange/bitswap/bitswap.go
+1 -1
@@ -134,7 +134,7 @@ func (bs *bitswap) ReceiveMessage(ctx context.Context, p *peer.Peer, incoming bs
134
135 for _, block := range incoming.Blocks() {
136 // TODO verify blocks?
137 - if err := bs.blockstore.Put(block); err != nil {
137 + if err := bs.blockstore.Put(&block); err != nil {
138 continue // FIXME(brian): err ignored
139 }
140 go bs.notifications.Publish(block)
exchange/bitswap/bitswap_test.go
+4 -4
@@ -67,7 +67,7 @@ func TestGetBlockFromPeerAfterPeerAnnounces(t *testing.T) {
67
68 hasBlock := g.Next()
69
70 - if err := hasBlock.blockstore.Put(*block); err != nil {
70 + if err := hasBlock.blockstore.Put(block); err != nil {
71 t.Fatal(err)
72 }
73 if err := hasBlock.exchange.HasBlock(context.Background(), *block); err != nil {
@@ -106,7 +106,7 @@ func TestSwarm(t *testing.T) {
106
107 first := instances[0]
108 for _, b := range blocks {
109 - first.blockstore.Put(*b)
109 + first.blockstore.Put(b)
110 first.exchange.HasBlock(context.Background(), *b)
111 rs.Announce(first.peer, b.Key())
112 }
@@ -177,7 +177,7 @@ func TestSendToWantingPeer(t *testing.T) {
177 beta := bg.Next()
178 t.Logf("Peer %v announes availability of %v\n", w.peer, beta.Key())
179 ctx, _ = context.WithTimeout(context.Background(), timeout)
180 - if err := w.blockstore.Put(beta); err != nil {
180 + if err := w.blockstore.Put(&beta); err != nil {
181 t.Fatal(err)
182 }
183 w.exchange.HasBlock(ctx, beta)
@@ -190,7 +190,7 @@ func TestSendToWantingPeer(t *testing.T) {
190
191 t.Logf("%v announces availability of %v\n", o.peer, alpha.Key())
192 ctx, _ = context.WithTimeout(context.Background(), timeout)
193 - if err := o.blockstore.Put(alpha); err != nil {
193 + if err := o.blockstore.Put(&alpha); err != nil {
194 t.Fatal(err)
195 }
196 o.exchange.HasBlock(ctx, alpha)