iroha icon indicating copy to clipboard operation
iroha copied to clipboard

feat: filtered queries in contracts

Open DCNick3 opened this issue 1 year ago • 0 comments

Description

  • remove QueryWithParameters
  • move all parameters to ClientQueryPayload (was QueryPayload before, stored inside SignedQuery); SignedQuery now equivalent to QueryWithParameters<SignedQuery>. All the parameters are now scale-encoded and versioned instead of being passed as query parameters
  • make SmartContractQuery, which is now equivalent to QueryWithParameters<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

DCNick3 avatar May 02 '24 13:05 DCNick3