RTC 1.0 NO IDEA Avatar
  1. OMG Issue

RTC — ExecutionContextAdmin should receive RTObject not ComponentProfile

  • Key: RTC-18
  • Legacy Issue Number: 10496
  • Status: closed  
  • Source: AIST ( Dr. Noriaki Ando)
  • Summary:

    Source: AIST (Noriaki Ando, [[MailTo(n-ando AT SPAMFREE aist DOT go DOT jp)]])

    Severity: Minor

    Disposition: Resolution Proposed

    Summary

    ExecutionContextAdmin has no way to know RTObject itself. ExecutionContextAdmin is defined as follows,

    interface ExecutionContextAdmin : ExecutionContext, Service

    { ExecutionContextProfile get_profile(); ReturnCode_t add(in ComponentProfile comp_profile, in long index); ReturnCode_t remove(in ComponentProfile comp_profile); }

    ;

    ComponentProfile does not include RTObject's reference (or pointer or object reference). Therefore ExecutionContextAdmin cannot call RTObject (or related classed for example ComponentAction, etc..)

    – Noriaki Ando, 2006/12/4

    Discussion

    Resolution

    The definition of the ExecutionContextAdmin should be as follows,

    interface ExecutionContextAdmin : ExecutionContext, Service

    { ExecutionContextProfile get_profile(); ReturnCode_t add(in RTObject comp, in long index); ReturnCode_t remove(in RTObject comp); }

    ;

    Since RTObject has get_component_profile operation, ExecutionContextAdmin can access the component profile.

    – Noriaki Ando, 2006/12/4

    Revised Text

  • Reported: RTC 1.0b1 — Tue, 5 Dec 2006 05:00 GMT
  • Disposition: Resolved — RTC 1.0
  • Disposition Summary:

    The add and remove operations are generally useful, not only for introspective RTCs but for all RTCs, because they effectively define an interface between a component and its hosting middleware (which will likely provide the execution context). Therefore, move the add and remove operations from ExecutionContextAdmin to ExecutionContextOperations and change the argument type from ComponentProfile to LightweightRTObject.
    These add and remove operations should be complemented by attach/detach operations on the RTC itself to inform it of its participation in the context and to associate the context with an identifier ("ExecutionContextHandle_t") relative to that component (see issue 10495). To make callback operations less expensive in distributed environments, all callback operations should be passed these identifiers instead of ExecutionContext references.

  • Updated: Fri, 6 Mar 2015 20:58 GMT