| Summary: | [Plan Item] Improved Convenience Methods | ||
|---|---|---|---|
| Product: | [Modeling] MDT.UML2 | Reporter: | Kenn Hussey <Kenn.Hussey> |
| Component: | Core | Assignee: | UML2 Inbox <uml2-core-inbox> |
| Status: | VERIFIED FIXED | QA Contact: | |
| Severity: | enhancement | ||
| Priority: | P4 | CC: | crivet, k9kis_fcg, mibcn, yeer |
| Version: | 1.1.0 | Keywords: | plan |
| Target Milestone: | 2.0 M3 | ||
| Hardware: | PC | ||
| OS: | Windows XP | ||
| Whiteboard: | |||
| Bug Depends on: | 75922 | ||
| Bug Blocks: | |||
|
Description
Kenn Hussey
Also improve performance of existing custom operations, especially those dealing with profiles and stereotypes. It might be very helpful to have a few basic methods for querying about Relationships, e.g., given Element X, find all the Relationships, R, in the model such that R.getRelatedElements().contains(X) is true. Some variations might include filtering on relationship subtypes, inbound/outbound directions, or relationships pertaining to other elements, sets of elements, packages, or (especially) package-subtrees. Of course, such filters would be fairly easy if the basic query were available. At this point, I am not sure which variations or other kinds of queries would be the most useful. Also add metadata (Ecore operations) for custom operations that have been added by hand. Overload BehavioralFeature#createReturnResult() with a version that takes the desired type of the result. Note that both methods should also automatically set the direction of the parameter to ParameterDirectionKind#RETURN_LITERAL. *** Bug 101607 has been marked as a duplicate of this bug. *** Changes to improve the performance of Element#destroy() and Class#getExtensions() (based on bug 75922) have been committed to CVS. It might be convenient to have Classifier methods for Operations features, analogous to those for Attributes. Elist getOperations() Operation getOperation(String unqualifiedName) Improved factory and look-up methods, along with associated code generator support, have been committed to CVS. Query methods for the relationships an element is involved in and the associations a type is involved in have also been committed to CVS. The changes are available in build 2.0 M3. The following convenience operations are missing: Association::isBinary() Behavioredclassifier::getImplementedInterfaces() Behavioredclassifier::getAllImplementedInterfaces() Classifier::getUsedInterfaces() Classifier::getAllUsedInterfaces() Component::createOwnedClass(String, boolean) Component::createOwnedEnumeraton(String) Component::createOwnedInterface(String) Component::createOwnedPrimitiveType(String) Parameter::setBooleanDefaultValue(boolean) Parameter::setIntegerDefaultValue(int) Parameter::setStringDefaultValue(String) Parameter::setUnlimitedNaturalDefaultValue(int) Parameter::setNullDefaultValue() Property::setIsNavigable(boolean) Property::getOtherEnd() Property::setBooleanDefaultValue(boolean) Property::setIntegerDefaultValue(int) Property::setStringDefaultValue(String) Property::setUnlimitedNaturalDefaultValue(int) Property::setNullDefaultValue() The missing operations have been committed to CVS. The changes are availabled in build I200603091723. Move to verified as per bug 206558. |