23 Commits

Author SHA1 Message Date
Milos Gajdos
1765be049b
router.Start() is now router.Advertise(). Updated code documentation. 2019-06-20 13:04:58 +01:00
Milos Gajdos
10a3636a9f
Renamed variables, options and functions 2019-06-19 21:22:14 +01:00
Milos Gajdos
4e5fbbf7eb
Replaced the debug network string by the correct router local address. 2019-06-19 18:11:16 +01:00
Milos Gajdos
59035ab801
Removed debug logs. advertiseToNetwork() replaced watchTable().
Debug logs that were helpful when squashing bugs have been removed.

advertiseToNetwork replaced the watchTable which originally watched the
routing table entries. We now take a different approach to propagating
the local registry services into the network registry.
2019-06-19 18:03:43 +01:00
Milos Gajdos
d3525ebab3
Debug messages. Squashed Add Route bugs and few others. 2019-06-19 18:03:43 +01:00
Milos Gajdos
2674294cbe
Delete route when no node is available. 2019-06-19 18:03:43 +01:00
Milos Gajdos
b20dd16f92
Watcher now emits events instead of results. 2019-06-19 18:03:43 +01:00
Milos Gajdos
5088c9d916
Increased Network registry TTL. Routing Table remove is now delete.
Remove has been renamed to Delete to be more in line with the framework.

A bunch of comments have been added/updated for the future generations

We have increased the Network Registry TTL to 2 minutes.
2019-06-19 18:03:42 +01:00
Milos Gajdos
f62fcaad76
Added router ID. Deregister remote services when router is stopped.
Added ID function to router interface.

Network registry addresses are deregistered when the router is stopped.

Query has been updated to search for particular GW in lookups.
2019-06-19 18:03:42 +01:00
Milos Gajdos
322eaae529
Small code refactoring. Added more comments and parseToNode func 2019-06-19 18:03:42 +01:00
Milos Gajdos
6a33b7576b
Removed router watcher code duplication. Small code refactor. 2019-06-19 18:03:42 +01:00
Milos Gajdos
6e669d4611
Reorganised source. Renamed files. No Code change. 2019-06-19 18:03:42 +01:00
Milos Gajdos
95fc625e99
Big refactor. New Registry watchers. New options. New names. 2019-06-19 18:03:42 +01:00
Milos Gajdos
338e0fdf18
Lots of refactoring. We now have basic routing table watcher. 2019-06-19 18:03:42 +01:00
Milos Gajdos
5899134b66
Simplified API. Correct Router initialization. Debug printing. 2019-06-19 18:03:41 +01:00
Milos Gajdos
da18ea4ab5
Changed default router table modifications. Entry is now Route. 2019-06-19 18:03:41 +01:00
Milos Gajdos
459f4c8387
Added Router ID and query options to limit number of results 2019-06-19 18:03:41 +01:00
Milos Gajdos
9c57f32f58
Added Entry type. Basic implementation of Router and Table 2019-06-19 18:03:41 +01:00
Milos Gajdos
ad92e6821e
Removed DefaultTable() from global vars
We will not initialize DefaultTable as global var unless the users asks
for it explicitly.
2019-06-19 18:03:41 +01:00
Milos Gajdos
d7f0db04ec
Added network ID option. Added mutex to routing table. 2019-06-19 18:03:41 +01:00
Milos Gajdos
e4311c3a10
Redefined and polished some interfaces and data structures. 2019-06-19 18:03:41 +01:00
Milos Gajdos
ee8b6b3114
Redefeind interfaces; Added better modelled data strauctures
Router interface has been redefined which fits better with what we are
looking for.

Routing table now offers a comprehensive set of information about its
entries which will make up for rich queries in the future

Query interface has been defined to enable current basic and more
advanced queries in the future.
2019-06-19 18:03:41 +01:00
Milos Gajdos
08da7c1283
First commit: Outline of Router interface 2019-06-19 18:03:40 +01:00