Commit Graph

4835 Commits

Author SHA1 Message Date
Brian Tiger Chow
b8fcc137a6 refac(bitswap) inline helper methods
for readability
2014-09-22 04:05:22 -07:00
Brian Tiger Chow
4448494155 feat(bitswap:strategy) add interfaces
refac(bitswap:strategy) update interface
2014-09-22 04:05:22 -07:00
Brian Tiger Chow
cff3a86622 refac(bitswap) privatize send block 2014-09-22 04:05:21 -07:00
Brian Tiger Chow
830883722d chore(bitswap) remove dead/unused wantlist code 2014-09-22 04:05:21 -07:00
Brian Tiger Chow
547f9e1cf6 fix(core) patiently convince the core to compile
=)
2014-09-22 04:05:21 -07:00
Brian Tiger Chow
56e6c453a2 fix(routing/dht) match the routing interface
the channel's "spin" is specified in the interface now =)
2014-09-22 04:05:21 -07:00
Juan Batiz-Benet
29322a24da tests compile 2014-09-22 04:05:21 -07:00
Juan Batiz-Benet
67bd041b9c got everything to build 2014-09-22 04:05:21 -07:00
Juan Batiz-Benet
551c40930e chan queue 2014-09-22 04:05:21 -07:00
Juan Batiz-Benet
ae1f7688aa separate to ensure sync safety 2014-09-22 04:05:21 -07:00
Juan Batiz-Benet
9e2c3fb8fc expose Len on PQ 2014-09-22 04:05:21 -07:00
Juan Batiz-Benet
51eeec1a79 sync safety to pq 2014-09-22 04:05:21 -07:00
Juan Batiz-Benet
a21c1b6b62 PeerQueue (based on XOR distance metric) 2014-09-22 04:05:21 -07:00
Juan Batiz-Benet
e62b822277 refactored keyspace Adjusted -> Bytes 2014-09-22 04:05:20 -07:00
Juan Batiz-Benet
6c00938e78 kbucket use new keyspace 2014-09-22 04:05:20 -07:00
Juan Batiz-Benet
ac9745bc4c moved keyspace 2014-09-22 04:05:20 -07:00
Juan Batiz-Benet
ab04137853 SortByDistance copy fix 2014-09-22 04:05:20 -07:00
Juan Batiz-Benet
b838cc0619 cleaner KeySpace abstraction. 2014-09-22 04:05:20 -07:00
Brian Tiger Chow
7622c4bb17 refac(bitswap) define Directory interface 2014-09-22 04:05:20 -07:00
Brian Tiger Chow
b36670df7e refac(bitswap) privatize ledger
temporarily. at least until refactor is complete
2014-09-22 04:05:20 -07:00
Brian Tiger Chow
e4bceca229 refac(bitswap) privatize strategies
temporarily. until bitswap is refactored
2014-09-22 04:05:20 -07:00
Brian Tiger Chow
c07578d6ab chore(util) rm unused DatastoreKey method 2014-09-22 04:05:20 -07:00
Brian Tiger Chow
03ffdbffed refac(bitswap): privatize bitswap 2014-09-22 04:05:20 -07:00
Brian Tiger Chow
881447e68e refac(bitswap) use blockstore 2014-09-22 04:05:20 -07:00
Juan Batiz-Benet
15a823d058 newMessage and more impl. 2014-09-22 04:05:19 -07:00
Juan Batiz-Benet
0773e584fd updated Update function 2014-09-22 04:05:19 -07:00
Juan Batiz-Benet
3ae7021700 getFromPeerList and peerFromInfo 2014-09-22 04:05:19 -07:00
Juan Batiz-Benet
e4e021085b add Peerstore to dht 2014-09-22 04:05:19 -07:00
Juan Batiz-Benet
c4fa995faf Peer: change locking to whole Peer object. 2014-09-22 04:05:19 -07:00
Juan Batiz-Benet
5dea384510 peer: golint 2014-09-22 04:05:19 -07:00
Juan Batiz-Benet
71e411e538 Peer: only add addresses once. 2014-09-22 04:05:19 -07:00
Juan Batiz-Benet
34a0580ea6 godep multiaddr update 2014-09-22 04:05:19 -07:00
Juan Batiz-Benet
70ea4f540c added peerstore to core 2014-09-22 04:05:19 -07:00
Juan Batiz-Benet
9c6a3b2091 peerstore test 2014-09-22 04:05:19 -07:00
Juan Batiz-Benet
c08b895851 Peerstore - threadsafe peer collection
will have persistence later on as a datastore passed in.
2014-09-22 04:05:19 -07:00
Juan Batiz-Benet
4cc1f60d91 Peerstore -- threadsafe collection
this will later have persistent storage, but no need yet
2014-09-22 04:05:19 -07:00
Juan Batiz-Benet
3711d54098 getValueSingle using SendRequest 2014-09-22 04:05:18 -07:00
Juan Batiz-Benet
520640840f check type assertion
`v.([]byte)` coming from a datastore can panic.
`byt, ok := v.([]byte)` to be safe.

@whyrusleeping
2014-09-22 04:05:18 -07:00
Juan Batiz-Benet
0fca9868ae uncomment all handlers 2014-09-22 04:05:18 -07:00
Brian Tiger Chow
014157cac6 refac(bitswap) simply network interfaces 2014-09-22 04:05:18 -07:00
Brian Tiger Chow
c34d4df96d feat(bitswap:network) define a service interface for use with net/service/Service 2014-09-22 04:05:18 -07:00
Brian Tiger Chow
503b1aa79e feat(net:service) add SetHandler method
Allows the service to be used through an interface.

NB: If the handler is exposed directly, clients of the service cannot swap out their concrete references and replace them with interfaces
2014-09-22 04:05:18 -07:00
Brian Tiger Chow
6fa0e2157f refactor(bitswap) rename bitswap/transmission -> bitswap/network
makes more sense this way
2014-09-22 04:05:18 -07:00
Brian Tiger Chow
06b5804d9c wip(bitswap) port service wrapper 2014-09-22 04:05:18 -07:00
Brian Tiger Chow
fda94d9f34 refactor(bitswap) rm SetStrategy method
remove this setter while the interface is under construction
2014-09-22 04:05:18 -07:00
Brian Tiger Chow
0ab86de407 refac(bitswap:exch) HasBlock(ptr) -> HasBlock(val) 2014-09-22 04:05:18 -07:00
Brian Tiger Chow
e07d3418c4 refac(bitswap:message) accept block by value 2014-09-22 04:05:18 -07:00
Brian Tiger Chow
770cdebf7b feat(bitswap) impl offline exchange 2014-09-22 04:05:18 -07:00
Brian Tiger Chow
adf62a39d5 refac(bitswap:notif) replace block generating func 2014-09-22 04:05:17 -07:00
Brian Tiger Chow
ad14d6c561 refac(bitswap:interface) GetBlock, HaveBlock -> Block, HasBlock 2014-09-22 04:05:17 -07:00