Is there anything in the event itself which will tell us that we have already unsubscribed to thi...

...s handle/RIC?

When
the application unsubscribes an item, we continue to get updates for an item
after that. Is there anything in the event itself which will tell us that we
have already unsubscribed to this handle/RIC?

Tagged:

Best Answer

  • Once application unsubscribes an item via unregisterClient call, RFA might dispatch
    additional events that were in flight due to race condition. To determine if
    the item unsubscription is completed and there is no longer event received,
    application needs to register for Completion event. The Completion event is the
    final event generated by RFA for the unregistered item.

    However, if event stream is closed by provider, the Completion
    event will not be generated. Application should call the isEventStreamClosed function
    on events to determine whether the event stream is closed or not. The
    isEventStreamClosed function call on a final event including the Completion
    event always returns true.

    The Completion event can be set via the last parameter on the
    Session::createOMMConsumer() method.

    virtual
    OMMConsumer* rfa::sessionLayer::Session::createOMMConsumer
    (
    const rfa::common::RFA_String& name,
    bool wCompEvents = false
    )

    Below is the related information in the RFA 7.6 Developers Guide
    document.

    image