ST6RI-926 org.omg.sysml.logic module#754
Open
AxelRICHARD wants to merge 1 commit into
Open
Conversation
Split model-independent SysML logic out of org.omg.sysml into the new org.omg.sysml.logic and org.omg.sysml.logic.bundle modules, move the delegate/adapter/expression utility code there, and update bundle/build wiring to use explicit logic dependencies. Add standalone bootstrap support for library resolution and EMF delegate registration without requiring Eclipse/Xtext startup, together with plain-EMF regression coverage and supporting Javadoc updates. Signed-off-by: Axel RICHARD <axel.richard@obeo.fr>
Member
|
@AxelRICHARD |
Member
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
This PR extracts model-independent SysML runtime logic from
org.omg.sysmlinto new standalone modules,org.omg.sysml.logicandorg.omg.sysml.logic.bundle, and updates dependent projects to consume that logic through explicit bundle and Maven dependencies.The change also introduces a standalone bootstrap for EMF delegate registration and library resolution, so core SysML logic can run outside Eclipse/Xtext startup, and adds plain-EMF regression tests for that standalone path.
Language Features
The model-independent SysML runtime layer has been split out of
org.omg.sysmlinto a dedicatedorg.omg.sysml.logicmodule. This includes:The extracted runtime now carries the delegate implementations for
Namespace::resolve,resolveLocal,resolveVisible, andresolveGlobal, with runtime behavior aligned to the intended standalone delegation flow.A new
SysMLLogicStandaloneSetupclass registers the SysML derived-property setting delegates and invocation delegates directly with EMF, allowing runtime use without requiring the Xtext runtime modules to be initialized first.Model Libraries
The commit introduces
SysMLLibraryUtilandIModelLibraryProvideras runtime-facing abstractions for library lookup, together with a standalone ResourceSetModelLibraryProviderimplementation that resolves library elements from the EMFResourceSet.KerML and SysML Xtext runtime modules and XMI runtime modules are updated to install the provider lookup used by the shared library utility, so both Eclipse/Xtext and standalone EMF runtimes rely on the same library resolution entry point.
Backward Incompatibilities
Code that previously referenced runtime logic classes from
org.omg.sysmlmust now resolve them fromorg.omg.sysml.logicor from the exportedorg.omg.sysml.logic.bundleplugin.org.omg.sysml.The following legacy classes/interfaces are deleted from the old location and replaced by logic-module equivalents:
SysMLLibraryUtilIModelLibraryProviderISysMLScopeSysMLScopeUtilDownstream Eclipse plugins now depend explicitly on
org.omg.sysml.logic.bundle, and Maven builds now include the neworg.omg.sysml.logicmodule in the reactor.Technical Updates
Added:
org.omg.sysml.logicorg.omg.sysml.logic.bundleMoved the SysML runtime implementation out of
org.omg.sysmlintoorg.omg.sysml.logic, including:org.omg.sysml.adapter.*org.omg.sysml.delegate.invocation.*org.omg.sysml.delegate.setting.*org.omg.sysml.expressions.*org.omg.sysml.util.*Updated KerML/SysML Xtext, execution, interactive, and test modules to import and require the extracted logic module/bundle instead of relying on the previous monolithic placement.
Added plain-EMF tests validating:
Updated: