IChangeEventHandler::handleEvent called repeatedly...
I have created an event/event handler pair (IChangeEvent / IChangeEventHandler).
I create the IChangeEvent and save it (once).
My registered event handler (handleEvent on IChangeEventHandler) gets called repeatedly for this event every time the change event task kicks in.
Question: is this intended? I would only like to be called once per instance of an event. Is there a way I can force this behavior by doing something in either the event creation or response to the event?
Thanks,
John
I create the IChangeEvent and save it (once).
My registered event handler (handleEvent on IChangeEventHandler) gets called repeatedly for this event every time the change event task kicks in.
Question: is this intended? I would only like to be called once per instance of an event. Is there a way I can force this behavior by doing something in either the event creation or response to the event?
Thanks,
John
Accepted answer
I think I may have found the answer to my question:
IChangeEventService::delete(event)
If this is not the correct approach then please advise.
IChangeEventService::delete(event)
If this is not the correct approach then please advise.
I have created an event/event handler pair (IChangeEvent / IChangeEventHandler).
I create the IChangeEvent and save it (once).
My registered event handler (handleEvent on IChangeEventHandler) gets called repeatedly for this event every time the change event task kicks in.
Question: is this intended? I would only like to be called once per instance of an event. Is there a way I can force this behavior by doing something in either the event creation or response to the event?
Thanks,
John
Comments
One other answer
Thanks for the info. Do you have any advice (or pointers thereto) on the API for deleting a change event? My expertise with RTC extension development begins and ends with the RTC Extensions Workshop, which is kind of light on the concepts (it's much better on the logistics and scaffolding of RTC plugin development). It's far from obvious (to me) how RTC concepts of Items, Handles, ManagedItems, SimpleItems, Events, and so on all fit together into a coherent model.
One idea I had was to let RTC handle scrubbing the event, by setting the ChangeEvent's expiration time to "now". However, that led to an ImmutablePropertyException (and indeed, event.isImmutable() returns true for the IChangeEvents I see when a snapshot is added to a stream). Some browsing on jazz.net suggests that I may need a "working copy". But again, I'm not finding the information I need to make sense out of these concepts of immutability, nor how to use working copies of various flavors.
Any suggestions or links would be highly appreciated.
And thanks again for your earlier response,
Scott
One idea I had was to let RTC handle scrubbing the event, by setting the ChangeEvent's expiration time to "now". However, that led to an ImmutablePropertyException (and indeed, event.isImmutable() returns true for the IChangeEvents I see when a snapshot is added to a stream). Some browsing on jazz.net suggests that I may need a "working copy". But again, I'm not finding the information I need to make sense out of these concepts of immutability, nor how to use working copies of various flavors.
Any suggestions or links would be highly appreciated.
And thanks again for your earlier response,
Scott