6bbaad4cb1
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. |
||
---|---|---|
.. | ||
Block | ||
Constants | ||
DAO | ||
Entity | ||
Extensions | ||
Metrics | ||
Model | ||
Providers | ||
Repository | ||
Resources/checkpoints | ||
Rust | ||
Service | ||
Synchronizer | ||
Tool | ||
Transaction | ||
Utils | ||
Initializer.swift | ||
Synchronizer.swift |