Clone
phantomjinx <p.g.richardson@phantomjinx.co.uk>
committed
on 18 Jan 19
CAMEL-13082: Filter results already seen by the Olingo consumers and producers Closes #2720 * Olingo[4,2]Configuration * Adds filterAlready… Show more
CAMEL-13082: Filter results already seen by the Olingo consumers and producers Closes #2720 * Olingo[4,2]Configuration  * Adds filterAlreadySeen property  * Added here rather than to the endpoint as the latter would require    ultimately, in order to satisfy various checks, changes to the    endpoint read() method in the api's Olingo4AppImpl, which is    unnecessary since this is used by the consumer.

* Olingo[4,2]Endpoint

* Adds filterAlreadySeen property names to the property names collection

  so that parseQueryParams() does not remove it.

* Adds the filterAlreadySeen property during interceptProperties() in a

  just-in-time manner (avoiding possibility of it causing problems with

  endpoint and consumer initialisation).

* Olingo[4,2][Consumer,Producer]

* Adds a resultIndex for indexing hashcodes of existing results

* On receiving a response, if the resultIndex has been initialised then

  the response results are checked by getting their hashcodes. If they're

  in the resultIndex then they are discarded.

* Prior to any messages interceptProperties is called and if the properties

  contain the filterAlreadySeen property then the resultIndex is initialised.

* Once the results have been placed in the exchange, interceptResult() is

  called and some housekeeping is done to index all the results in the

  resultIndex ready for checking on the next polling.

Show less

master + 8 more