Class OperationInvocationDispatcher

java.lang.Object
org.somda.sdc.glue.consumer.sco.helper.OperationInvocationDispatcher

public class OperationInvocationDispatcher extends Object
Helper class to dispatch incoming operation invoked report parts to ScoTransaction objects.
  • Method Details

    • dispatchReport

      public void dispatchReport(org.somda.sdc.biceps.model.message.OperationInvokedReport report)
      Accepts a report and dispatches its report parts to registered SCO transactions.

      By using registerTransaction(ScoTransactionImpl), SCO transactions can be registered to get notified on incoming operation invoked report parts. If an SCO transaction is not registered by the time the first report pops up, reports are going to be buffered. Buffered "dead" reports are sanitized on each incoming report (see ConsumerConfig.AWAITING_TRANSACTION_TIMEOUT).

      Parameters:
      report - the report to process.
    • registerTransaction

      public void registerTransaction(ScoTransactionImpl<? extends org.somda.sdc.biceps.model.message.AbstractSetResponse> transaction)
      Registers an SCO transaction and delivers buffered reports immediately.

      Once a final report is registered, the allocated heap used for the transaction is erased.

      Parameters:
      transaction - the transaction to