ZcashLightClientKit/Tests
Michal Fousek 6bbaad4cb1 [#740] Refator blocks downloading in CompactBlockProcessor
Closes #740

`CompactBlockDownloading` protocol is renamed to `BlockDownloaderService`. `CompactBlockDownloader` is renamed to `BlockDownloaderServiceImpl`.

What is the motivation for this rename?
Goal of this change is to extract code from `CompactBlockProcessor` which is related to downloading. So naturaly it should be called "downloader".
But `CompactBlockDownloader` was already taken. After analysis of `CompactBlockDownloading` and `CompactBlockDownloader` I found out that
`CompactBlockDownloader` doesn't download blocks exactly. It's more like abstraction over `LightWalletService`. And it does very similar job to
`LightWalletService`. That is why I decided to rename it to "service".

What is the motivation for protoco/impl naming scheme?
First `BlockDownloaderService` protocol doesn't describe capability in my eyes. It describe what something is. Also `BlockDownloaderServicing` sounds
strange. I agree that add suffix "Impl" to class name isn't super nice. But it is acceptable. And it makes sense to use nicer type name
(e.g. `BlockDownloaderService`) for protocol because it's used on much more places in the code.

- Added `BlockDownloader` protocol and `BlockDownloaderImpl` class. The code related to downloading was exctracted to this class.
2023-01-31 15:24:41 +01:00
..
DarksideTests [#740] Refator blocks downloading in CompactBlockProcessor 2023-01-31 15:24:41 +01:00
NetworkTests [#740] Refator blocks downloading in CompactBlockProcessor 2023-01-31 15:24:41 +01:00
OfflineTests [#740] Refator blocks downloading in CompactBlockProcessor 2023-01-31 15:24:41 +01:00
PerformanceTests [#747] Remove SampleLogger and replace it with OSLogger (#748) 2023-01-26 18:14:07 +01:00
TestUtils [#735] Use Swiftlint for the SDK 2023-01-27 11:44:25 +01:00
lightwalletd Remove dependecy on rust sources 2022-02-28 17:03:20 +00:00