iroha
iroha copied to clipboard
feat: filtered queries in contracts
Description
- remove
QueryWithParameters - move all parameters to
ClientQueryPayload(wasQueryPayloadbefore, stored insideSignedQuery);SignedQuerynow equivalent toQueryWithParameters<SignedQuery>. All the parameters are now scale-encoded and versioned instead of being passed as query parameters - make
SmartContractQuery, which is now equivalent toQueryWithParameters<QueryBox>that was used before, but has filtering support - move all the post-processing (filterting, sorting, pagination, batching) to a single function (
LazyQueryOutput::apply_postprocessing), introduce a new type for a post-processed query output - add an integration test using the filtering (
ProcessedQueryOutput)
Linked issue
Closes #4423
Checklist
- [ ] make CI pass