From 7af501956ef63b572a7575ac5b28952b5a997429 Mon Sep 17 00:00:00 2001 From: Christian W. Damus Date: Wed, 25 Aug 2021 09:26:27 -0400 Subject: Bug 573986: [Toolsmiths] Properties view editor validation & incremental updates Common fixes - fix encoding and decoding of related object URIs in the problem markers - handle stereotypes in nested packages (not profiles) - fix NPE in architecture builder - prompt to save editor before running quick fix if it's dirty - save editor after running quick fix - save and clean up resources loaded by the quick fix that the editor doesn't need to know about - delete cross-references within the scope of context models when deleting a data-context element, to account for supertype references, both in the editor and the quick fix Properties validation builder - add new validation builder plug-in for Properties models - check plugin.xml extensions for context and environment models - check existence of referenced Java classes and implied bundle dependencies - handle 'ppe' URI scheme in ModelDependenciesChecker via new generic service - ensure that HREFs to environment models that do not use XMI IDs are not broken by automatic assignment of IDs on resource load - ensure that XMI IDs are generated in context resources - add annotations to the generated Properties Context model to trace to the original source model (UML Profile or Ecore model) - add annotations to data context roots to record which layout generator was used to generate sections (used for quick fixes) - hide annotations from the editor by default because they need not (and probably should not) be edited by the user - infer traceability to source models from known constraints and internal relationships in the context model - add derived reference to views that use a section, supported by generated CacheAdapter implementation - add model validation rules for missing and obsolete data context elements and properties in the context model - add custom validation rules for EMFInstanceOf, UMLInstanceOf, and HasStereotype constraints, that their referenced classes can be resolved - validate that data-context properties, elements, and packages match their corresponding source model elements by name - quick fixes to rename data-context properties, elements, and packages to match their source model elements - includes 'touching' affected XWT resources to ensure that their qualified name references are updated - add check for missing data-context package for nested package/profile - check for entire source package/profile moved Add marker resolutions for - simple property-type inconsistency problems - delete obsolete data-context properties - add missing data-context properties - add missing data-context properties with property editors in sections - delete obsolete data-context elements - add missing data-context elements - add missing data-context elements with generated views - quick fixes to generate data-context package with or without views - add quick fix to find new package/profile location and update all source link URIs - add a quick fix for unresolved class problems in constraints - get appropriately qualified "expected name" of the class referenced by a constraint for population of marker data for the quick fix - generate a fix for each valid name that the constraint can reference Change-Id: Iebd062470d7539d15321cffa80556fc1d22023f2 Signed-off-by: Christian W. Damus --- .../org.eclipse.papyrus.tests.toolsmiths.feature/feature.xml | 7 +++++++ .../org.eclipse.papyrus.toolsmiths.validation.feature/feature.xml | 7 +++++++ 2 files changed, 14 insertions(+) (limited to 'features') diff --git a/features/papyrus-tests-features/org.eclipse.papyrus.tests.toolsmiths.feature/feature.xml b/features/papyrus-tests-features/org.eclipse.papyrus.tests.toolsmiths.feature/feature.xml index 9e3b53f43a4..6e0843064ca 100644 --- a/features/papyrus-tests-features/org.eclipse.papyrus.tests.toolsmiths.feature/feature.xml +++ b/features/papyrus-tests-features/org.eclipse.papyrus.tests.toolsmiths.feature/feature.xml @@ -61,4 +61,11 @@ version="0.0.0" unpack="false"/> + + diff --git a/features/papyrus-toolsmiths-features/org.eclipse.papyrus.toolsmiths.validation.feature/feature.xml b/features/papyrus-toolsmiths-features/org.eclipse.papyrus.toolsmiths.validation.feature/feature.xml index d10e08d0683..e3fe42d7e04 100644 --- a/features/papyrus-toolsmiths-features/org.eclipse.papyrus.toolsmiths.validation.feature/feature.xml +++ b/features/papyrus-toolsmiths-features/org.eclipse.papyrus.toolsmiths.validation.feature/feature.xml @@ -53,6 +53,13 @@ install-size="0" version="0.0.0" unpack="false"/> + +