herald.go/db
Jonathan Moody 8fb3db8136
Add subscribe/unsubscribe RPCs. Add session, sessionManager, and serve JSON RPC (without HTTP). (#66)
* Move and rename BlockchainCodec, BlockchainCodecRequest.
These are not specifically "blockchain", rather they are
specific to how gorilla/rpc works.

* Move claimtrie-related service/handlers to jsonrpc_claimtrie.go.

* Pull out decode logic into named func newBlockHeaderElectrum().

* Rename BlockchainService -> BlockchainBlockService.

* Drop http.Request arg from handlers, and use RegisterTCPService().

* Implement GetStatus() to pull data from HashXStatus table.

* Make the service objects independent, so we don't have inheritance.

* Add core session/subscription logic (session.go).
Implement subsribe/unsubscribe handlers.

* Support both pure JSON and JSON-over-HTTP services.
Forward NotifierChan messages to sessionManager.

* Only assign default port (50001) if neither --json-rpc-port nor
--json-rpc-http-port are specified.

* Handle failures with goto instead of break. Update error logging.

* Add --max-sessions, --session-timeout args. Enforce max sessions.

* Changes to make session.go testable. Conn created with Pipe()
used in testing has no unique Addr.

* Add tests for headers, headers.subscribe, address.subscribe.

* HashXStatus, HashXMempoolStatus not populated by default. Fix GetStatus().

* Use time.Ticker object to drive management activity.
2022-10-04 17:05:06 +03:00
..
prefixes Adjust EffectiveAmountValue to include ActivatedSupportSum. (#61) 2022-09-16 18:03:15 +03:00
stack Add element type param T to SlicedBacked[T]. Require T satisfy 2022-08-30 16:24:43 -05:00
db.go Add subscribe/unsubscribe RPCs. Add session, sessionManager, and serve JSON RPC (without HTTP). (#66) 2022-10-04 17:05:06 +03:00
db_get.go Add subscribe/unsubscribe RPCs. Add session, sessionManager, and serve JSON RPC (without HTTP). (#66) 2022-10-04 17:05:06 +03:00
db_resolve.go WIP: Resolve json rpc (#57) 2022-09-07 21:36:07 +03:00
db_test.go Adjust EffectiveAmountValue to include ActivatedSupportSum. (#61) 2022-09-16 18:03:15 +03:00
iteroptions.go Catchup to python-herald schema. Plus lots of refactoring. (#49) 2022-08-16 08:45:41 +03:00