ProducerConsumer handle query processing

For an overview of the ProducerConsumer please see: ProducerConsumer: overview.


The function of the query handling in the ProducerConsumer is to receive a query message at a producer that was sent by a consumer and consists of the following operations:
  • Route the query to the correct ProducerConsumerElement
  • Update the state to register the query made on the appropriate link within that element
  • Trigger an event to notify the state change.

Processing sequence

The processing of a query received by the ProducerConsumer task is depicted in the following sequence diagram:


The query processing consists of the following steps:
  • Conversion of the incoming link number from relative to absolute
  • Call ProducerConsumerElement.QueryReceived() to update the state of the target element
  • Get the consumer and producer slot IDs
  • The QueryReceived event for the ProducerConsumer is invoked

The target element number is determined from the incoming query and is used to index into the appropriate ProducerConsumerElement. The QueryReceived() method is then invoked on that element to update the link state for the given absolute link number.

Last edited Sep 29, 2012 at 10:42 AM by jaorme, version 15


No comments yet.