Commit Graph

44 Commits

Author SHA1 Message Date
Derrick Hammer a3efcf130b
*Use bufId not id 2022-12-16 09:47:36 -05:00
Derrick Hammer 3c7501cc3f
*Use bufId not id 2022-12-16 09:46:30 -05:00
Derrick Hammer 57d35e77fc
*Refactor so if we emit heart beat we treat it like we added a peer then set the timestamp after, in case the peer is disconnected on one side or to handle unknown unknowns 2022-12-16 09:34:14 -05:00
Derrick Hammer 4b13de8af1
*Fix log messages 2022-12-07 03:02:19 -05:00
Derrick Hammer 58252606a6
*Change logic to abort if the signature fails 2022-12-07 02:29:20 -05:00
Derrick Hammer 37ad6d304a
*Add loglevel with custom module logger 2022-12-07 01:06:29 -05:00
Derrick Hammer 35c6a0e314
*Make heartbeat configurable with a default time of 15 seconds 2022-12-05 15:13:50 -05:00
Derrick Hammer 5b2d1a3c7c
*Skip self 2022-12-05 15:03:53 -05:00
Derrick Hammer 28eb7ac2d6
*Bug fix heartbeat math 2022-12-05 14:32:03 -05:00
Derrick Hammer b4eaa6c0b6
*add basic change detection on heartbeat 2022-12-05 14:14:56 -05:00
Derrick Hammer 29478e9a5a
*Instead of disconnecting dead peers, just use an "online" property on the node graph, and filter out dead peers in _recalculate 2022-12-05 14:08:15 -05:00
Derrick Hammer 8ecd021a1d
*Add heartbeat support to protocol 2022-12-05 06:59:46 -05:00
Derrick Hammer 9350daee68
*Prune graph on node disconnect 2022-11-27 02:12:21 -05:00
Derrick Hammer b47502ac9d
*Set flag before event emit 2022-11-26 19:39:03 -05:00
Derrick Hammer 67bdf54e71
*bootstrapped flag needs to be set 2022-11-26 19:32:22 -05:00
Derrick Hammer c4321d3026
*Pass id property, not variable 2022-11-26 18:48:00 -05:00
Derrick Hammer 3d77943112
*Ensure id is a buffer 2022-11-26 18:43:35 -05:00
Derrick Hammer e53b4eadda
*Check if we are bootstrapped and queue broadcast in removeItem like with addItem 2022-11-26 17:27:35 -05:00
Derrick Hammer 734a3640e3
*switch to b4a 2022-11-24 01:49:15 -05:00
Derrick Hammer 587739334a
*filter for peers in neighbors in _getBootstrapInfo 2022-11-24 01:48:00 -05:00
Derrick Hammer 48ceded78f
*Add item-added and item-removed events 2022-11-24 01:46:55 -05:00
Derrick Hammer 24b97d5288
*Add peerHasItem method 2022-11-24 01:46:34 -05:00
Derrick Hammer eab1d70df4
*Add connection to graph on addItem 2022-11-24 01:46:14 -05:00
Derrick Hammer 627736ea1a
*Change all_cache to allCache 2022-11-23 21:23:29 -05:00
Derrick Hammer 4f93d23b68
*Fix return type 2022-11-23 21:22:42 -05:00
Derrick Hammer bae0efa3b0
*Major refactor to pivot cache design based on items, but store all items and peers as nodes in graph with a type, and update communication structs for it 2022-11-23 20:39:16 -05:00
Derrick Hammer a1d826e376
*Ensure we are parsing the public key in hex format 2022-11-19 20:35:23 -05:00
Derrick Hammer 15b088f481
*Add timestamp checking to not store old data 2022-11-19 20:34:57 -05:00
Derrick Hammer f529597a61
*Rename library to better reflect its purpose 2022-11-19 19:53:24 -05:00
Derrick Hammer 23e1644be9
*DEFAULT_ENCODING no longer needed 2022-11-19 19:50:53 -05:00
Derrick Hammer b43ec0b236
*Refactor and add peer methods 2022-11-19 19:50:11 -05:00
Derrick Hammer 3bad936cd4
*Refactor to use message signing and track with timestamps 2022-11-19 19:44:55 -05:00
Derrick Hammer 98ad784c8e
*Use dynamic type for opts 2022-11-16 12:27:53 -05:00
Derrick Hammer 4f08c07489
*Define constructor bag types 2022-11-16 12:15:51 -05:00
Derrick Hammer 73846a5eda
Revert "*Explicitly define protocol as a bag option"
This reverts commit cea5ba5131.
2022-11-16 12:13:00 -05:00
Derrick Hammer 3b87e81c12
Revert "*Update bag structure"
This reverts commit e446466c2a.
2022-11-16 12:12:52 -05:00
Derrick Hammer e446466c2a
*Update bag structure 2022-11-16 12:08:53 -05:00
Derrick Hammer cea5ba5131
*Explicitly define protocol as a bag option 2022-11-16 12:04:56 -05:00
Derrick Hammer 3196947071
*Return shadow clone of data 2022-11-16 11:23:50 -05:00
Derrick Hammer 0016903687
*Change setData to a setter 2022-11-16 11:14:44 -05:00
Derrick Hammer e4e18a8a55
*Add a getter for data 2022-11-16 11:11:57 -05:00
Derrick Hammer c534be442c
*Make setData public 2022-11-16 10:48:09 -05:00
Derrick Hammer a70b3154e0
*Remove stray methods 2022-11-16 10:47:40 -05:00
Derrick Hammer 9b6a916f00
*Initial version 2022-11-16 02:45:10 -05:00