-
Key: RTC-14
-
Legacy Issue Number: 10492
-
Status: closed
-
Source: DECA ( Rick Warren)
-
Summary:
Source: RTI (Rick Warren, [[MailTo(rick DOT warren AT SPAMFREE rti DOT com)]])
Severity: Minor
Disposition: Resolution Proposed
Summary
The message to reset a component will usually come from another component. If a component resets itself, it can know which context has the error, so there is no problem. But if a different component wants to reset it, there is no way for it to know which context is the correct one.
Discussion
Resolution
I think we can solve this problem with a new method:
ExecutionContext[] LifeCycle::get_contexts()
The code would look something like this:
ExecutionContext[] contexts = myComponent.get_contexts();
{ myComponent.reset(contexts[i]); }
//...
if (contexts[i].get_component_state(myComponent) == ERROR_STATE)The usage is demonstrated in the following sequence diagram (which also shows a proposed move of the reset() operation from the component itself to the execution context – thanks, Sakamoto-san):
[attachment:rtc-reset-sequence.png]
– RickWarren, 2006/12/1
Revised Text
-
Reported: RTC 1.0b1 — Tue, 5 Dec 2006 05:00 GMT
-
Disposition: Resolved — RTC 1.0
-
Disposition Summary:
It is already possible to determine the state of a component in a given context with the ExecutionContextOperations::get_component_state operation. Therefore, the only functionality that is missing is the ability to learn in which context(s) a component participates and which context is associated with which handle. Add operations to provide that information.
The existing method RTObject::get_execution_context_services provides a subset of the functionality proposed here. It should be replaced with a more complete functionality. -
Updated: Fri, 6 Mar 2015 20:58 GMT