Added the Kleros Curate Service to obtain address tags #2608
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Resolves #2607 for Android only.
Overview
The implementation provides a new
KlerosCurateService
with a request function returning anAddressInformation
entity.The current service provides tags for addresses on Ethereum mainnet only (chainid 1). It should not be queried for non-Ethereum mainnet addresses at this stage.
Under the hood, the dataset of Ethereum mainnet tags is spread out across 2 registries deployed on Ethereum mainnet and Gnosis chain. If the address is not found the first registry, then it is looked up in the second one.
Looking up an address in a registry consists in making a call to the subgraph API, parsing the IPFS content identifier and retrieving the corresponding JSON file from IPFS.
If the address is not present in the registry, the service returns a static
NULL_ADDRESS_INFORMATION
object (null object pattern).Testing
The service can be tested as follow:
@gmkung @alcercu @AndreiMVP