Skip to content

Commit c6884eb

Browse files
author
Alexander Pann
committed
fix(langvis): the IllegalModelAccessError when executing the action
1 parent 0301e29 commit c6884eb

File tree

4 files changed

+190
-93
lines changed

4 files changed

+190
-93
lines changed

CHANGELOG.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,10 @@ The format is *loosely* based on [Keep a Changelog](https://keepachangelog.com/e
1010

1111
- *nl.f1re.mps.aliascustomization* The alias of all concepts globally can now be customized through the extension point [AliasCustomization.](http://127.0.0.1:63320/node?ref=r%3Af0a80b34-9760-42b8-9ee6-d5b0d1582551%28de.slisson.mps.conditionalEditor.runtime.plugin%29%2F1679635547169731239) Please be aware that this feature is experimental. Use it with care!
1212

13+
### Fixed
14+
15+
- *com.dslfoundry.langvis.plugin* The action *Visualize* *Language* *Structure* doesn't through an IllegalModelAccessError anymore.
16+
1317
## November 2025
1418

1519
### Added

code/langvis/solutions/com.dslfoundry.langvis.plugin/com.dslfoundry.langvis.plugin.msd

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@
1818
</dependencies>
1919
<languageVersions>
2020
<language slang="l:f3061a53-9226-4cc5-a443-f952ceaf5816:jetbrains.mps.baseLanguage" version="12" />
21+
<language slang="l:774bf8a0-62e5-41e1-af63-f4812e60e48b:jetbrains.mps.baseLanguage.checkedDots" version="0" />
2122
<language slang="l:443f4c36-fcf5-4eb6-9500-8d06ed259e3e:jetbrains.mps.baseLanguage.classifiers" version="0" />
2223
<language slang="l:fd392034-7849-419d-9071-12563d152375:jetbrains.mps.baseLanguage.closures" version="0" />
2324
<language slang="l:83888646-71ce-4f1c-9c53-c54016f6ad4f:jetbrains.mps.baseLanguage.collections" version="2" />

code/langvis/solutions/com.dslfoundry.langvis.plugin/models/com.dslfoundry.langvis.plugin.plugin.mps

Lines changed: 137 additions & 93 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@
99
<use id="f3061a53-9226-4cc5-a443-f952ceaf5816" name="jetbrains.mps.baseLanguage" version="12" />
1010
<use id="7866978e-a0f0-4cc7-81bc-4d213d9375e1" name="jetbrains.mps.lang.smodel" version="19" />
1111
<use id="f2801650-65d5-424e-bb1b-463a8781b786" name="jetbrains.mps.baseLanguage.javadoc" version="2" />
12+
<use id="774bf8a0-62e5-41e1-af63-f4812e60e48b" name="jetbrains.mps.baseLanguage.checkedDots" version="0" />
1213
<devkit ref="2677cb18-f558-4e33-bc38-a5139cee06dc(jetbrains.mps.devkit.language-design)" />
1314
</languages>
1415
<imports>
@@ -21,7 +22,6 @@
2122
<import index="z60i" ref="6354ebe7-c22a-4a0f-ac54-50b52ab9b065/java:java.awt(JDK/)" />
2223
<import index="z1c3" ref="6ed54515-acc8-4d1e-a16c-9fd6cfe951ea/java:jetbrains.mps.project(MPS.Core/)" />
2324
<import index="alof" ref="742f6602-5a2f-4313-aa6e-ae1cd4ffdc61/java:jetbrains.mps.ide.project(MPS.Platform/)" />
24-
<import index="jtsr" ref="8865b7a8-5271-43d3-884c-6fd1d9cfdd34/java:org.jetbrains.mps.openapi.project(MPS.OpenAPI/)" />
2525
<import index="71xd" ref="742f6602-5a2f-4313-aa6e-ae1cd4ffdc61/java:jetbrains.mps.ide.tools(MPS.Platform/)" />
2626
<import index="hyam" ref="6354ebe7-c22a-4a0f-ac54-50b52ab9b065/java:java.awt.event(JDK/)" />
2727
<import index="jlff" ref="498d89d2-c2e9-11e2-ad49-6cf049e62fe5/java:com.intellij.openapi.vfs(MPS.IDEA/)" />
@@ -34,6 +34,7 @@
3434
<import index="33ny" ref="6354ebe7-c22a-4a0f-ac54-50b52ab9b065/java:java.util(JDK/)" />
3535
<import index="jkm4" ref="498d89d2-c2e9-11e2-ad49-6cf049e62fe5/java:com.intellij.openapi.ui(MPS.IDEA/)" />
3636
<import index="bd8o" ref="498d89d2-c2e9-11e2-ad49-6cf049e62fe5/java:com.intellij.openapi.application(MPS.IDEA/)" />
37+
<import index="z1c4" ref="742f6602-5a2f-4313-aa6e-ae1cd4ffdc61/java:jetbrains.mps.project(MPS.Platform/)" />
3738
<import index="tprs" ref="r:00000000-0000-4000-0000-011c895904a4(jetbrains.mps.ide.actions)" implicit="true" />
3839
<import index="tpcu" ref="r:00000000-0000-4000-0000-011c89590282(jetbrains.mps.lang.core.behavior)" implicit="true" />
3940
<import index="tpck" ref="r:00000000-0000-4000-0000-011c89590288(jetbrains.mps.lang.core.structure)" implicit="true" />
@@ -328,6 +329,17 @@
328329
</concept>
329330
<concept id="1080120340718" name="jetbrains.mps.baseLanguage.structure.AndExpression" flags="nn" index="1Wc70l" />
330331
</language>
332+
<language id="63650c59-16c8-498a-99c8-005c7ee9515d" name="jetbrains.mps.lang.access">
333+
<concept id="8974276187400348173" name="jetbrains.mps.lang.access.structure.CommandClosureLiteral" flags="nn" index="1QHqEC" />
334+
<concept id="8974276187400348170" name="jetbrains.mps.lang.access.structure.BaseExecuteCommandStatement" flags="nn" index="1QHqEJ">
335+
<child id="1423104411234567454" name="repo" index="ukAjM" />
336+
<child id="8974276187400348171" name="commandClosureLiteral" index="1QHqEI" />
337+
</concept>
338+
<concept id="8974276187400348181" name="jetbrains.mps.lang.access.structure.ExecuteLightweightCommandStatement" flags="nn" index="1QHqEK" />
339+
</language>
340+
<language id="774bf8a0-62e5-41e1-af63-f4812e60e48b" name="jetbrains.mps.baseLanguage.checkedDots">
341+
<concept id="4079382982702596667" name="jetbrains.mps.baseLanguage.checkedDots.structure.CheckedDotExpression" flags="nn" index="2EnYce" />
342+
</language>
331343
<language id="fd392034-7849-419d-9071-12563d152375" name="jetbrains.mps.baseLanguage.closures">
332344
<concept id="2524418899405758586" name="jetbrains.mps.baseLanguage.closures.structure.InferredClosureParameterDeclaration" flags="ig" index="gl6BB" />
333345
<concept id="1199569711397" name="jetbrains.mps.baseLanguage.closures.structure.ClosureLiteral" flags="nn" index="1bVj0M">
@@ -3634,116 +3646,148 @@
36343646
</node>
36353647
</node>
36363648
</node>
3637-
<node concept="3J1_TO" id="4LYtwgjWhb" role="3cqZAp">
3638-
<node concept="3clFbS" id="4LYtwgjWhc" role="1zxBo7">
3639-
<node concept="3clFbF" id="4LYtwgjxMM" role="3cqZAp">
3640-
<node concept="2OqwBi" id="4LYtwgjxY8" role="3clFbG">
3641-
<node concept="37vLTw" id="4LYtwgjxMK" role="2Oq$k0">
3642-
<ref role="3cqZAo" node="4LYtwgjw02" resolve="r" />
3649+
<node concept="3cpWs8" id="3YOzvn5Nt1R" role="3cqZAp">
3650+
<node concept="3cpWsn" id="3YOzvn5Nt1S" role="3cpWs9">
3651+
<property role="TrG5h" value="mpsProject" />
3652+
<node concept="3uibUv" id="3YOzvn5NrXm" role="1tU5fm">
3653+
<ref role="3uigEE" to="z1c4:~MPSProject" resolve="MPSProject" />
3654+
</node>
3655+
<node concept="2YIFZM" id="3YOzvn5Nt1T" role="33vP2m">
3656+
<ref role="37wK5l" to="alof:~ProjectHelper.fromIdeaProject(com.intellij.openapi.project.Project)" resolve="fromIdeaProject" />
3657+
<ref role="1Pybhc" to="alof:~ProjectHelper" resolve="ProjectHelper" />
3658+
<node concept="2OqwBi" id="3YOzvn5Nt1U" role="37wK5m">
3659+
<node concept="2WthIp" id="3YOzvn5Nt1V" role="2Oq$k0" />
3660+
<node concept="2BZ7hE" id="3YOzvn5Nt1W" role="2OqNvi">
3661+
<ref role="2WH_rO" node="4q9OGrKOsLn" resolve="ideaProject" />
36433662
</node>
3644-
<node concept="liA8E" id="4LYtwgjytw" role="2OqNvi">
3645-
<ref role="37wK5l" node="6H8rSFQVJLK" resolve="renderPlantUMLSource" />
3646-
<node concept="2OqwBi" id="4LYtwgjyS3" role="37wK5m">
3647-
<node concept="2WthIp" id="4LYtwgjyS6" role="2Oq$k0" />
3648-
<node concept="2BZ7hE" id="4LYtwgjyS8" role="2OqNvi">
3649-
<ref role="2WH_rO" node="4LYtwghRLD" resolve="contextElements" />
3650-
</node>
3651-
</node>
3652-
<node concept="2OqwBi" id="4LYtwgjRr$" role="37wK5m">
3653-
<node concept="2OqwBi" id="4LYtwgjQo2" role="2Oq$k0">
3654-
<node concept="2WthIp" id="4LYtwgjQo5" role="2Oq$k0" />
3655-
<node concept="2BZ7hE" id="4LYtwgjQo7" role="2OqNvi">
3656-
<ref role="2WH_rO" node="4LYtwgj5Zi" resolve="collectStructureDown" />
3663+
</node>
3664+
</node>
3665+
</node>
3666+
</node>
3667+
<node concept="1QHqEK" id="3YOzvn5NS_N" role="3cqZAp">
3668+
<node concept="1QHqEC" id="3YOzvn5NS_O" role="1QHqEI">
3669+
<node concept="3clFbS" id="3YOzvn5NS_P" role="1bW5cS">
3670+
<node concept="3J1_TO" id="4LYtwgjWhb" role="3cqZAp">
3671+
<node concept="3clFbS" id="4LYtwgjWhc" role="1zxBo7">
3672+
<node concept="3clFbF" id="4LYtwgjxMM" role="3cqZAp">
3673+
<node concept="2OqwBi" id="4LYtwgjxY8" role="3clFbG">
3674+
<node concept="37vLTw" id="4LYtwgjxMK" role="2Oq$k0">
3675+
<ref role="3cqZAo" node="4LYtwgjw02" resolve="r" />
36573676
</node>
3658-
</node>
3659-
<node concept="liA8E" id="4LYtwgjSG0" role="2OqNvi">
3660-
<ref role="37wK5l" to="dxuu:~AbstractButton.isSelected()" resolve="isSelected" />
3661-
</node>
3662-
</node>
3663-
<node concept="2OqwBi" id="4LYtwgjSYY" role="37wK5m">
3664-
<node concept="2OqwBi" id="4LYtwgjSYZ" role="2Oq$k0">
3665-
<node concept="2WthIp" id="4LYtwgjSZ0" role="2Oq$k0" />
3666-
<node concept="2BZ7hE" id="4LYtwgjTb_" role="2OqNvi">
3667-
<ref role="2WH_rO" node="4LYtwgj8LV" resolve="collectHierarchyUp" />
3677+
<node concept="liA8E" id="4LYtwgjytw" role="2OqNvi">
3678+
<ref role="37wK5l" node="6H8rSFQVJLK" resolve="renderPlantUMLSource" />
3679+
<node concept="2OqwBi" id="4LYtwgjyS3" role="37wK5m">
3680+
<node concept="2WthIp" id="4LYtwgjyS6" role="2Oq$k0" />
3681+
<node concept="2BZ7hE" id="4LYtwgjyS8" role="2OqNvi">
3682+
<ref role="2WH_rO" node="4LYtwghRLD" resolve="contextElements" />
3683+
</node>
3684+
</node>
3685+
<node concept="2OqwBi" id="4LYtwgjRr$" role="37wK5m">
3686+
<node concept="2OqwBi" id="4LYtwgjQo2" role="2Oq$k0">
3687+
<node concept="2WthIp" id="4LYtwgjQo5" role="2Oq$k0" />
3688+
<node concept="2BZ7hE" id="4LYtwgjQo7" role="2OqNvi">
3689+
<ref role="2WH_rO" node="4LYtwgj5Zi" resolve="collectStructureDown" />
3690+
</node>
3691+
</node>
3692+
<node concept="liA8E" id="4LYtwgjSG0" role="2OqNvi">
3693+
<ref role="37wK5l" to="dxuu:~AbstractButton.isSelected()" resolve="isSelected" />
3694+
</node>
3695+
</node>
3696+
<node concept="2OqwBi" id="4LYtwgjSYY" role="37wK5m">
3697+
<node concept="2OqwBi" id="4LYtwgjSYZ" role="2Oq$k0">
3698+
<node concept="2WthIp" id="4LYtwgjSZ0" role="2Oq$k0" />
3699+
<node concept="2BZ7hE" id="4LYtwgjTb_" role="2OqNvi">
3700+
<ref role="2WH_rO" node="4LYtwgj8LV" resolve="collectHierarchyUp" />
3701+
</node>
3702+
</node>
3703+
<node concept="liA8E" id="4LYtwgjSZ2" role="2OqNvi">
3704+
<ref role="37wK5l" to="dxuu:~AbstractButton.isSelected()" resolve="isSelected" />
3705+
</node>
3706+
</node>
3707+
<node concept="2OqwBi" id="4LYtwgjUXW" role="37wK5m">
3708+
<node concept="2OqwBi" id="4LYtwgjTK6" role="2Oq$k0">
3709+
<node concept="2WthIp" id="4LYtwgjT_r" role="2Oq$k0" />
3710+
<node concept="2BZ7hE" id="4LYtwgjTVg" role="2OqNvi">
3711+
<ref role="2WH_rO" node="4LYtwgjJwr" resolve="renderCardinalities" />
3712+
</node>
3713+
</node>
3714+
<node concept="liA8E" id="4LYtwgjW7P" role="2OqNvi">
3715+
<ref role="37wK5l" to="dxuu:~AbstractButton.isSelected()" resolve="isSelected" />
3716+
</node>
3717+
</node>
3718+
<node concept="2OqwBi" id="4LYtwgwNpy" role="37wK5m">
3719+
<node concept="2OqwBi" id="4LYtwgwMtl" role="2Oq$k0">
3720+
<node concept="2WthIp" id="4LYtwgwMto" role="2Oq$k0" />
3721+
<node concept="2BZ7hE" id="4LYtwgwMtq" role="2OqNvi">
3722+
<ref role="2WH_rO" node="4LYtwgwKAE" resolve="renderRoleNames" />
3723+
</node>
3724+
</node>
3725+
<node concept="liA8E" id="4LYtwgwO_B" role="2OqNvi">
3726+
<ref role="37wK5l" to="dxuu:~AbstractButton.isSelected()" resolve="isSelected" />
3727+
</node>
3728+
</node>
3729+
<node concept="2OqwBi" id="4LYtwg_RJy" role="37wK5m">
3730+
<node concept="2OqwBi" id="4LYtwg_Q$j" role="2Oq$k0">
3731+
<node concept="2WthIp" id="4LYtwg_Q$m" role="2Oq$k0" />
3732+
<node concept="2BZ7hE" id="4LYtwg_Q$o" role="2OqNvi">
3733+
<ref role="2WH_rO" node="4LYtwg$Wn$" resolve="flattenNamespaces" />
3734+
</node>
3735+
</node>
3736+
<node concept="liA8E" id="4LYtwg_T8N" role="2OqNvi">
3737+
<ref role="37wK5l" to="dxuu:~AbstractButton.isSelected()" resolve="isSelected" />
3738+
</node>
3739+
</node>
3740+
<node concept="2OqwBi" id="4LYtwgkyNP" role="37wK5m">
3741+
<node concept="2WthIp" id="4LYtwgkyNS" role="2Oq$k0" />
3742+
<node concept="2BZ7hE" id="4LYtwgkyNU" role="2OqNvi">
3743+
<ref role="2WH_rO" node="6PT1asSHMyA" resolve="pumlFilePath" />
3744+
</node>
3745+
</node>
36683746
</node>
36693747
</node>
3670-
<node concept="liA8E" id="4LYtwgjSZ2" role="2OqNvi">
3671-
<ref role="37wK5l" to="dxuu:~AbstractButton.isSelected()" resolve="isSelected" />
3672-
</node>
36733748
</node>
3674-
<node concept="2OqwBi" id="4LYtwgjUXW" role="37wK5m">
3675-
<node concept="2OqwBi" id="4LYtwgjTK6" role="2Oq$k0">
3676-
<node concept="2WthIp" id="4LYtwgjT_r" role="2Oq$k0" />
3677-
<node concept="2BZ7hE" id="4LYtwgjTVg" role="2OqNvi">
3678-
<ref role="2WH_rO" node="4LYtwgjJwr" resolve="renderCardinalities" />
3749+
</node>
3750+
<node concept="3uVAMA" id="4LYtwgjWh7" role="1zxBo5">
3751+
<node concept="XOnhg" id="4LYtwgjWh9" role="1zc67B">
3752+
<property role="3TUv4t" value="false" />
3753+
<property role="TrG5h" value="e" />
3754+
<node concept="nSUau" id="cn7s9S9ucVl" role="1tU5fm">
3755+
<node concept="3uibUv" id="4LYtwgjWha" role="nSUat">
3756+
<ref role="3uigEE" to="guwi:~IOException" resolve="IOException" />
36793757
</node>
36803758
</node>
3681-
<node concept="liA8E" id="4LYtwgjW7P" role="2OqNvi">
3682-
<ref role="37wK5l" to="dxuu:~AbstractButton.isSelected()" resolve="isSelected" />
3683-
</node>
36843759
</node>
3685-
<node concept="2OqwBi" id="4LYtwgwNpy" role="37wK5m">
3686-
<node concept="2OqwBi" id="4LYtwgwMtl" role="2Oq$k0">
3687-
<node concept="2WthIp" id="4LYtwgwMto" role="2Oq$k0" />
3688-
<node concept="2BZ7hE" id="4LYtwgwMtq" role="2OqNvi">
3689-
<ref role="2WH_rO" node="4LYtwgwKAE" resolve="renderRoleNames" />
3760+
<node concept="3clFbS" id="4LYtwgjWh8" role="1zc67A">
3761+
<node concept="3clFbF" id="4LYtwgjXRU" role="3cqZAp">
3762+
<node concept="2OqwBi" id="4LYtwgjXy0" role="3clFbG">
3763+
<node concept="37vLTw" id="4LYtwgjXjV" role="2Oq$k0">
3764+
<ref role="3cqZAo" node="4LYtwgjWh9" resolve="e" />
3765+
</node>
3766+
<node concept="liA8E" id="4LYtwgjXQz" role="2OqNvi">
3767+
<ref role="37wK5l" to="wyt6:~Throwable.printStackTrace()" resolve="printStackTrace" />
3768+
</node>
36903769
</node>
36913770
</node>
3692-
<node concept="liA8E" id="4LYtwgwO_B" role="2OqNvi">
3693-
<ref role="37wK5l" to="dxuu:~AbstractButton.isSelected()" resolve="isSelected" />
3694-
</node>
3695-
</node>
3696-
<node concept="2OqwBi" id="4LYtwg_RJy" role="37wK5m">
3697-
<node concept="2OqwBi" id="4LYtwg_Q$j" role="2Oq$k0">
3698-
<node concept="2WthIp" id="4LYtwg_Q$m" role="2Oq$k0" />
3699-
<node concept="2BZ7hE" id="4LYtwg_Q$o" role="2OqNvi">
3700-
<ref role="2WH_rO" node="4LYtwg$Wn$" resolve="flattenNamespaces" />
3771+
<node concept="2xdQw9" id="4LYtwgjXiC" role="3cqZAp">
3772+
<property role="2xdLsb" value="gZ5fh_4/error" />
3773+
<node concept="37vLTw" id="4LYtwgjXiG" role="9lYJj">
3774+
<ref role="3cqZAo" node="4LYtwgjWh9" resolve="e" />
3775+
</node>
3776+
<node concept="Xl_RD" id="4LYtwgjXTx" role="9lYJi">
3777+
<property role="Xl_RC" value="Visualizing language elements failed (rendering to PlantUML)" />
37013778
</node>
3702-
</node>
3703-
<node concept="liA8E" id="4LYtwg_T8N" role="2OqNvi">
3704-
<ref role="37wK5l" to="dxuu:~AbstractButton.isSelected()" resolve="isSelected" />
3705-
</node>
3706-
</node>
3707-
<node concept="2OqwBi" id="4LYtwgkyNP" role="37wK5m">
3708-
<node concept="2WthIp" id="4LYtwgkyNS" role="2Oq$k0" />
3709-
<node concept="2BZ7hE" id="4LYtwgkyNU" role="2OqNvi">
3710-
<ref role="2WH_rO" node="6PT1asSHMyA" resolve="pumlFilePath" />
37113779
</node>
37123780
</node>
37133781
</node>
37143782
</node>
37153783
</node>
37163784
</node>
3717-
<node concept="3uVAMA" id="4LYtwgjWh7" role="1zxBo5">
3718-
<node concept="XOnhg" id="4LYtwgjWh9" role="1zc67B">
3719-
<property role="3TUv4t" value="false" />
3720-
<property role="TrG5h" value="e" />
3721-
<node concept="nSUau" id="cn7s9S9ucVl" role="1tU5fm">
3722-
<node concept="3uibUv" id="4LYtwgjWha" role="nSUat">
3723-
<ref role="3uigEE" to="guwi:~IOException" resolve="IOException" />
3724-
</node>
3725-
</node>
3785+
<node concept="2EnYce" id="3YOzvn5NX15" role="ukAjM">
3786+
<node concept="37vLTw" id="3YOzvn5NSAq" role="2Oq$k0">
3787+
<ref role="3cqZAo" node="3YOzvn5Nt1S" resolve="mpsProject" />
37263788
</node>
3727-
<node concept="3clFbS" id="4LYtwgjWh8" role="1zc67A">
3728-
<node concept="3clFbF" id="4LYtwgjXRU" role="3cqZAp">
3729-
<node concept="2OqwBi" id="4LYtwgjXy0" role="3clFbG">
3730-
<node concept="37vLTw" id="4LYtwgjXjV" role="2Oq$k0">
3731-
<ref role="3cqZAo" node="4LYtwgjWh9" resolve="e" />
3732-
</node>
3733-
<node concept="liA8E" id="4LYtwgjXQz" role="2OqNvi">
3734-
<ref role="37wK5l" to="wyt6:~Throwable.printStackTrace()" resolve="printStackTrace" />
3735-
</node>
3736-
</node>
3737-
</node>
3738-
<node concept="2xdQw9" id="4LYtwgjXiC" role="3cqZAp">
3739-
<property role="2xdLsb" value="gZ5fh_4/error" />
3740-
<node concept="37vLTw" id="4LYtwgjXiG" role="9lYJj">
3741-
<ref role="3cqZAo" node="4LYtwgjWh9" resolve="e" />
3742-
</node>
3743-
<node concept="Xl_RD" id="4LYtwgjXTx" role="9lYJi">
3744-
<property role="Xl_RC" value="Visualizing language elements failed (rendering to PlantUML)" />
3745-
</node>
3746-
</node>
3789+
<node concept="liA8E" id="3YOzvn5NSAr" role="2OqNvi">
3790+
<ref role="37wK5l" to="z1c3:~Project.getRepository()" resolve="getRepository" />
37473791
</node>
37483792
</node>
37493793
</node>

0 commit comments

Comments
 (0)