UML RT SDK underlying technologies

This content applies to version 7.5.1 or later. The Rational® Software Architect RealTime Edition UML RT software development kit (SDK) is based on and extends several underlying technologies and services. In many cases client code calls those services directly.
The UML RT SDK is based on and extends these technologies and services:
Note: The application programming interfaces (APIs) in the Rational UML modeling products are based on Eclipse version 3.4 and the latest compatible versions of Eclipse Modeling Framework (EMF) and Graphical Editing Framework (GEF). Also, the Eclipse UML2 API was modified to match the final UML2 2.1 specification.

You can use the following UML RT SDK APIs:

Redefinition API

Provides a set of wrappers that represent UML Redefinable Elements that are accessed in a particular redefinition context.
  • For more information about the UML2 Redefinable Element and Redefinition Context API, see the UML2 specification. RT Redefinition wrappers, such as the RTTransitionRedefinition class, make UML Redefinition wrappers subclasses (TransitionRedefinition in this case), and add RT-specific traits to them. The RT-specific traits are usually implemented as UML-stereotype-based extensions.
    • When the Redefinition API returns a UML Redefinition wrapper and an RT Redefinition wrapper is expected, you can use the instanceof operator and cast to the corresponding RT Redefinition Wrapper.
    • When the same property of a Redefinable Element is available through both the UML2 API and the Redefinition API, you must always use the latter.
    For example, to access the type property of a port element, you can use the UML2 TypedElement#getType() API or the PropertyRedefinition#getType() API, but only the latter returns the correct type; because, unlike the UML2 API, it takes Redefinition into account. For more information about using the Redefinition API, see the source code for the UML RT SDK example.

Property Sets API

Provides access to the element attributes that are available in the Properties view, on the RT Properties page. For more information about using the Property Sets API, see the source code for the UML RT SDK example.

Protocol API

Encapsulates several UML elements that represent an RT Protocol entity. The RTProtocol interface represents the RT Protocol entity in the API. You can use the RTFactory.ProtocolFactory class to create new RT Protocol Elements. For more information about protocols, see the source code for the UML RT SDK example.

Model Operations API

The client code for the UML RT SDK should use the Model Operations API for several model operations instead of the UML2 API. For example, the client code should use the Model Operations API to create elements, delete elements, reorient element relationships, and so on.
  • Element creation: Use the RTModelOperations#createElement method to create elements. To find the correct element type used in the argument list of the createElement method, check first in the UMLRTElementTypes enumerator and then in the com.ibm.xtools.uml.core.type.UMLElementTypes enumerator.
  • Other operations: Always use the RTModelOperations class to perform the associated model operations. Using this class guarantees that the framework properly completes the extra work that is associated with the operation. For more information about using the Model Operations API, see the source code for the UML RT SDK example.

Feedback