Skip to content

Commit a0f0843

Browse files
authored
enhance arch editor (#267)
* base.utils: added easy centralized access to currently opened project * deprecated, lint: use the centralized project access utilities * arch: improved the editor * build.gradle: added dependencies from build-subprojects task to "build_base_languages" * build: fixed dependency from test.lint to mpsqa.base * lint.build: add artifact location for org.mpsqa.base * added mpsqa.base as project library to arch, deprecated, profile, unused * lint: project library added dependency to base
1 parent 4234691 commit a0f0843

File tree

25 files changed

+1403
-493
lines changed

25 files changed

+1403
-493
lines changed

build.gradle

+6-6
Original file line numberDiff line numberDiff line change
@@ -196,27 +196,27 @@ task build_clones_languages(type: BuildLanguages, dependsOn: [build_base_languag
196196
script scriptFile("build-clones-languages.xml")
197197
}
198198

199-
task build_mutant_languages(type: BuildLanguages, dependsOn: []) {
199+
task build_mutant_languages(type: BuildLanguages, dependsOn: [build_base_languages]) {
200200
script scriptFile("build-mutant-languages.xml")
201201
}
202202

203-
task build_unused_languages(type: BuildLanguages, dependsOn: []) {
203+
task build_unused_languages(type: BuildLanguages, dependsOn: [build_base_languages]) {
204204
script scriptFile("build-unused-languages-analysis.xml")
205205
}
206206

207-
task build_arch_languages(type: BuildLanguages, dependsOn: []) {
207+
task build_arch_languages(type: BuildLanguages, dependsOn: [build_base_languages]) {
208208
script scriptFile("build-arch-analysis-languages.xml")
209209
}
210210

211-
task build_deprecation_analysis_languages(type: BuildLanguages, dependsOn: []) {
211+
task build_deprecation_analysis_languages(type: BuildLanguages, dependsOn: [build_base_languages]) {
212212
script scriptFile("build-deprecated-analysis-languages.xml")
213213
}
214214

215-
task build_lint_analysis_languages(type: BuildLanguages, dependsOn: []) {
215+
task build_lint_analysis_languages(type: BuildLanguages, dependsOn: [build_base_languages]) {
216216
script scriptFile("build-lint-analysis-languages.xml")
217217
}
218218

219-
task build_profile_languages(type: BuildLanguages, dependsOn: []) {
219+
task build_profile_languages(type: BuildLanguages, dependsOn: [build_base_languages]) {
220220
script scriptFile("build-profile-languages.xml")
221221
}
222222

build/scripts/build_all_scripts.xml

+7-4
Original file line numberDiff line numberDiff line change
@@ -177,15 +177,15 @@
177177

178178
<target name="makeDependents" />
179179

180-
<target name="java.compile.org.mpsqa.build.allScripts" depends="java.compile.org.mpsqa.build">
180+
<target name="java.compile.org.mpsqa.build.allScripts">
181181
<mkdir dir="${basedir}/code/languages/org.mpsqa.build/solutions/org.mpsqa.build.allScripts/source_gen" />
182182
<mkdir dir="${build.tmp}/java/out/org.mpsqa.build.allScripts" />
183183
<javac destdir="${build.tmp}/java/out/org.mpsqa.build.allScripts" fork="false" encoding="utf8" includeantruntime="false" debug="true">
184184
<compilerarg value="-Xlint:none" />
185185
<src>
186186
<path location="${basedir}/code/languages/org.mpsqa.build/solutions/org.mpsqa.build.allScripts/source_gen" />
187187
</src>
188-
<classpath path="${build.tmp}/java/out/org.mpsqa.build" />
188+
<classpath />
189189
</javac>
190190
<copy todir="${build.tmp}/java/out/org.mpsqa.build.allScripts">
191191
<fileset dir="${basedir}/code/languages/org.mpsqa.build/solutions/org.mpsqa.build.allScripts/source_gen" excludes="**/*.java" />
@@ -261,15 +261,18 @@
261261
</copy>
262262
</target>
263263

264-
<target name="java.compile.org.mpsqa.lint.build" depends="java.compile.org.mpsqa.build">
264+
<target name="java.compile.org.mpsqa.lint.build" depends="java.compile.org.mpsqa.base.build, java.compile.org.mpsqa.build">
265265
<mkdir dir="${basedir}/code/languages/org.mpsqa.lint/solutions/org.mpsqa.lint.build/source_gen" />
266266
<mkdir dir="${build.tmp}/java/out/org.mpsqa.lint.build" />
267267
<javac destdir="${build.tmp}/java/out/org.mpsqa.lint.build" fork="false" encoding="utf8" includeantruntime="false" debug="true">
268268
<compilerarg value="-Xlint:none" />
269269
<src>
270270
<path location="${basedir}/code/languages/org.mpsqa.lint/solutions/org.mpsqa.lint.build/source_gen" />
271271
</src>
272-
<classpath path="${build.tmp}/java/out/org.mpsqa.build" />
272+
<classpath>
273+
<pathelement path="${build.tmp}/java/out/org.mpsqa.base.build" />
274+
<pathelement path="${build.tmp}/java/out/org.mpsqa.build" />
275+
</classpath>
273276
</javac>
274277
<copy todir="${build.tmp}/java/out/org.mpsqa.lint.build">
275278
<fileset dir="${basedir}/code/languages/org.mpsqa.lint/solutions/org.mpsqa.lint.build/source_gen" excludes="**/*.java" />
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<project version="4">
3+
<component name="ProjectLibraryManager">
4+
<option name="libraries">
5+
<map>
6+
<entry key="base">
7+
<value>
8+
<Library>
9+
<option name="name" value="base" />
10+
<option name="path" value="${mpsqa.home}/code/languages/org.mpsqa.base" />
11+
</Library>
12+
</value>
13+
</entry>
14+
</map>
15+
</option>
16+
</component>
17+
</project>

code/languages/org.mpsqa.arch/languages/org.mpsqa.arch/models/org.mpsqa.arch.editor.mps

+541-24
Large diffs are not rendered by default.

code/languages/org.mpsqa.arch/languages/org.mpsqa.arch/models/org.mpsqa.arch.util.mps

+26-58
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@
1717
<import index="lm2w" ref="r:f5e4041f-398d-420c-a501-c76be3c82f70(org.mpsqa.arch.behavior)" />
1818
<import index="ryx8" ref="r:d0c25d1d-f21e-42b4-b319-5eef0584d5ca(org.mpsqa.arch.structure)" />
1919
<import index="wyt6" ref="6354ebe7-c22a-4a0f-ac54-50b52ab9b065/java:java.lang(JDK/)" />
20+
<import index="ss65" ref="r:c36b009c-d033-4959-91fc-d917836cbe4f(org.mpsqa.base.utils.project)" />
2021
</imports>
2122
<registry>
2223
<language id="a247e09e-2435-45ba-b8d2-07e93feba96a" name="jetbrains.mps.baseLanguage.tuples">
@@ -478,75 +479,42 @@
478479
<node concept="2YIFZL" id="5enppyYDSMQ" role="jymVt">
479480
<property role="TrG5h" value="getProjectModulesNotPartOfArchitectureDescription" />
480481
<node concept="3clFbS" id="5enppyYDSMR" role="3clF47">
481-
<node concept="3cpWs8" id="5ruws_4EDyq" role="3cqZAp">
482-
<node concept="3cpWsn" id="5ruws_4EDyr" role="3cpWs9">
483-
<property role="TrG5h" value="myModel" />
484-
<node concept="H_c77" id="5ruws_4EC3N" role="1tU5fm" />
485-
<node concept="2OqwBi" id="5ruws_4EDys" role="33vP2m">
486-
<node concept="37vLTw" id="5ruws_4EDyt" role="2Oq$k0">
482+
<node concept="3cpWs8" id="7HJqs_aQjwn" role="3cqZAp">
483+
<node concept="3cpWsn" id="7HJqs_aQjwo" role="3cpWs9">
484+
<property role="TrG5h" value="mpsProjectContainingArchSpec" />
485+
<node concept="3uibUv" id="7HJqs_aQjjq" role="1tU5fm">
486+
<ref role="3uigEE" to="z1c3:~Project" resolve="Project" />
487+
</node>
488+
<node concept="2YIFZM" id="7HJqs_aQjwp" role="33vP2m">
489+
<ref role="37wK5l" to="ss65:1fyC0RHInUp" resolve="getMPSProjectFrom" />
490+
<ref role="1Pybhc" to="ss65:7HJqs_aCpVf" resolve="MPSQAProjectUtils" />
491+
<node concept="37vLTw" id="7HJqs_aQjwq" role="37wK5m">
487492
<ref role="3cqZAo" node="5enppyYDSO8" resolve="architectureSpec" />
488493
</node>
489-
<node concept="I4A8Y" id="5ruws_4EDyu" role="2OqNvi" />
490494
</node>
491495
</node>
492496
</node>
493-
<node concept="2Gpval" id="5ruws_4EC14" role="3cqZAp">
494-
<node concept="2GrKxI" id="5ruws_4EC16" role="2Gsz3X">
495-
<property role="TrG5h" value="op" />
496-
</node>
497-
<node concept="3clFbS" id="5ruws_4EC1a" role="2LFqv$">
498-
<node concept="2Gpval" id="5ruws_4EDg4" role="3cqZAp">
499-
<node concept="2GrKxI" id="5ruws_4EDg9" role="2Gsz3X">
500-
<property role="TrG5h" value="pm" />
501-
</node>
502-
<node concept="3clFbS" id="5ruws_4EDgj" role="2LFqv$">
503-
<node concept="3clFbJ" id="5ruws_4EDqi" role="3cqZAp">
504-
<node concept="2OqwBi" id="5ruws_4EE2y" role="3clFbw">
505-
<node concept="2GrUjf" id="5ruws_4EDqV" role="2Oq$k0">
506-
<ref role="2Gs0qQ" node="5ruws_4EDg9" resolve="pm" />
507-
</node>
508-
<node concept="liA8E" id="5ruws_4EEUZ" role="2OqNvi">
509-
<ref role="37wK5l" to="wyt6:~Object.equals(java.lang.Object)" resolve="equals" />
510-
<node concept="37vLTw" id="5ruws_4EF5s" role="37wK5m">
511-
<ref role="3cqZAo" node="5ruws_4EDyr" resolve="myModel" />
512-
</node>
513-
</node>
514-
</node>
515-
<node concept="3clFbS" id="5ruws_4EDqk" role="3clFbx">
516-
<node concept="3cpWs6" id="2HNHUobr5wO" role="3cqZAp">
517-
<node concept="1rXfSq" id="2HNHUobr5wP" role="3cqZAk">
518-
<ref role="37wK5l" node="5enppyYCuMW" resolve="getProjectModulesNotPartOfArchitectureDescription" />
519-
<node concept="2GrUjf" id="48uyNAv9E$C" role="37wK5m">
520-
<ref role="2Gs0qQ" node="5ruws_4EC16" resolve="op" />
521-
</node>
522-
<node concept="37vLTw" id="2HNHUobr5wR" role="37wK5m">
523-
<ref role="3cqZAo" node="5enppyYDSO8" resolve="architectureSpec" />
524-
</node>
525-
<node concept="37vLTw" id="48uyNAv734r" role="37wK5m">
526-
<ref role="3cqZAo" node="48uyNAv72rJ" resolve="considerLanguages" />
527-
</node>
528-
</node>
529-
</node>
530-
</node>
497+
<node concept="3clFbJ" id="7HJqs_aQmo4" role="3cqZAp">
498+
<node concept="3clFbS" id="7HJqs_aQmo6" role="3clFbx">
499+
<node concept="3cpWs6" id="7HJqs_aQp5G" role="3cqZAp">
500+
<node concept="1rXfSq" id="7HJqs_aQp5H" role="3cqZAk">
501+
<ref role="37wK5l" node="5enppyYCuMW" resolve="getProjectModulesNotPartOfArchitectureDescription" />
502+
<node concept="37vLTw" id="7HJqs_aQpmL" role="37wK5m">
503+
<ref role="3cqZAo" node="7HJqs_aQjwo" resolve="mpsProjectContainingArchSpec" />
531504
</node>
532-
</node>
533-
<node concept="2OqwBi" id="5ruws_4ECu_" role="2GsD0m">
534-
<node concept="2GrUjf" id="5ruws_4ECg_" role="2Oq$k0">
535-
<ref role="2Gs0qQ" node="5ruws_4EC16" resolve="op" />
505+
<node concept="37vLTw" id="7HJqs_aQp5J" role="37wK5m">
506+
<ref role="3cqZAo" node="5enppyYDSO8" resolve="architectureSpec" />
536507
</node>
537-
<node concept="liA8E" id="5ruws_4ED2o" role="2OqNvi">
538-
<ref role="37wK5l" to="z1c3:~Project.getProjectModels()" resolve="getProjectModels" />
508+
<node concept="37vLTw" id="7HJqs_aQp5K" role="37wK5m">
509+
<ref role="3cqZAo" node="48uyNAv72rJ" resolve="considerLanguages" />
539510
</node>
540511
</node>
541512
</node>
542513
</node>
543-
<node concept="2OqwBi" id="2HNHUobr1F8" role="2GsD0m">
544-
<node concept="2YIFZM" id="2HNHUobr1F9" role="2Oq$k0">
545-
<ref role="1Pybhc" to="z1c3:~ProjectManager" resolve="ProjectManager" />
546-
<ref role="37wK5l" to="z1c3:~ProjectManager.getInstance()" resolve="getInstance" />
547-
</node>
548-
<node concept="liA8E" id="2HNHUobr1Fa" role="2OqNvi">
549-
<ref role="37wK5l" to="z1c3:~ProjectManager.getOpenedProjects()" resolve="getOpenedProjects" />
514+
<node concept="3y3z36" id="7HJqs_aQoiN" role="3clFbw">
515+
<node concept="10Nm6u" id="7HJqs_aQoS6" role="3uHU7w" />
516+
<node concept="37vLTw" id="7HJqs_aQmRR" role="3uHU7B">
517+
<ref role="3cqZAo" node="7HJqs_aQjwo" resolve="mpsProjectContainingArchSpec" />
550518
</node>
551519
</node>
552520
</node>

code/languages/org.mpsqa.arch/languages/org.mpsqa.arch/org.mpsqa.arch.mpl

+2
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@
1919
<dependency reexport="false">6ed54515-acc8-4d1e-a16c-9fd6cfe951ea(MPS.Core)</dependency>
2020
<dependency reexport="false">1ed103c3-3aa6-49b7-9c21-6765ee11f224(MPS.Editor)</dependency>
2121
<dependency reexport="false">c7fb639f-be78-4307-89b0-b5959c3fa8c8(jetbrains.mps.lang.text)</dependency>
22+
<dependency reexport="false">3867cfe1-8589-4ef1-9b3c-48b17d473edf(org.mpsqa.base.utils)</dependency>
2223
</dependencies>
2324
<languageVersions>
2425
<language slang="l:f3061a53-9226-4cc5-a443-f952ceaf5816:jetbrains.mps.baseLanguage" version="12" />
@@ -82,6 +83,7 @@
8283
<module reference="c7fb639f-be78-4307-89b0-b5959c3fa8c8(jetbrains.mps.lang.text)" version="0" />
8384
<module reference="9ded098b-ad6a-4657-bfd9-48636cfe8bc3(jetbrains.mps.lang.traceable)" version="0" />
8485
<module reference="6c101563-ba1f-458d-b298-a75634941e0c(org.mpsqa.arch)" version="0" />
86+
<module reference="3867cfe1-8589-4ef1-9b3c-48b17d473edf(org.mpsqa.base.utils)" version="0" />
8587
</dependencyVersions>
8688
<extendedLanguages />
8789
</language>

code/languages/org.mpsqa.arch/solutions/org.mpsqa.arch.sandbox/models/org.mpsqa.arch.sandbox.smoke.mps

+5-2
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@
99
<registry>
1010
<language id="6c101563-ba1f-458d-b298-a75634941e0c" name="org.mpsqa.arch">
1111
<concept id="7834852478394622225" name="org.mpsqa.arch.structure.ModuleComponent" flags="ng" index="mXxR0">
12+
<property id="276423752594287931" name="shortName" index="Z2I3b" />
1213
<child id="7834852478394622226" name="module" index="mXxR3" />
1314
<child id="276423752594450974" name="excludeModels" index="Z2mvI" />
1415
<child id="1681028404306313079" name="dependsOn" index="1Rkc$q" />
@@ -64,6 +65,7 @@
6465
<node concept="mXAGQ" id="6MUZd5Uje4f" role="mXAGU">
6566
<property role="TrG5h" value="base" />
6667
<node concept="mXxR0" id="6MUZd5Ujhmc" role="mXAiC">
68+
<property role="Z2I3b" value="arch" />
6769
<node concept="37shsh" id="6MUZd5UjGNH" role="mXxR3">
6870
<node concept="1dCxOk" id="6MUZd5UjGNP" role="37shsm">
6971
<property role="1XweGW" value="6c101563-ba1f-458d-b298-a75634941e0c" />
@@ -73,7 +75,7 @@
7375
<node concept="mXA1B" id="7qAQSsiFxd" role="1Rkc$q">
7476
<node concept="mXAj4" id="1XeVdf85oR_" role="mXvOw">
7577
<property role="3EQNYR" value="Te1zv$_mMP/MODEL_LOCK" />
76-
<ref role="mXAj7" node="7qAQSsiFxK" resolve="JDK" />
78+
<ref role="mXAj7" node="7qAQSsiFxK" resolve="jdk" />
7779
<node concept="3EQPYP" id="Te1zv$J9wR" role="3EQPAp">
7880
<property role="3EQPQW" value="model: 'java.lang' from module: 'JDK'" />
7981
</node>
@@ -101,7 +103,7 @@
101103
<property role="TrG5h" value="first_layer" />
102104
<node concept="mXA1B" id="1XeVdf8advS" role="mXAiC">
103105
<node concept="mXAj4" id="1XeVdf8adw2" role="mXvOw">
104-
<ref role="mXAj7" node="7qAQSsiFxK" resolve="JDK" />
106+
<ref role="mXAj7" node="7qAQSsiFxK" resolve="jdk" />
105107
</node>
106108
</node>
107109
<node concept="mXxR0" id="1tkdAPw1fXp" role="mXAiC">
@@ -128,6 +130,7 @@
128130
<node concept="mXAGQ" id="7qAQSsiFxw" role="mXAGU">
129131
<property role="TrG5h" value="java_sdk" />
130132
<node concept="mXxR0" id="7qAQSsiFxK" role="mXAiC">
133+
<property role="Z2I3b" value="jdk" />
131134
<node concept="37shsh" id="7qAQSsiFxM" role="mXxR3">
132135
<node concept="1dCxOk" id="7qAQSsiFxT" role="37shsm">
133136
<property role="1XweGW" value="6354ebe7-c22a-4a0f-ac54-50b52ab9b065" />

code/languages/org.mpsqa.base/solutions/org.mpsqa.base.build/models/org.mpsqa.base.build.mps

+15
Original file line numberDiff line numberDiff line change
@@ -780,6 +780,21 @@
780780
</node>
781781
</node>
782782
</node>
783+
<node concept="1SiIV0" id="7HJqs_aWd1R" role="3bR37C">
784+
<node concept="3bR9La" id="7HJqs_aWd1S" role="1SiIV1">
785+
<ref role="3bR37D" to="ffeo:mXGwHwhVPj" resolve="JDK" />
786+
</node>
787+
</node>
788+
<node concept="1SiIV0" id="7HJqs_aWd1T" role="3bR37C">
789+
<node concept="3bR9La" id="7HJqs_aWd1U" role="1SiIV1">
790+
<ref role="3bR37D" to="ffeo:1TaHNgiIbJb" resolve="MPS.Platform" />
791+
</node>
792+
</node>
793+
<node concept="1SiIV0" id="7HJqs_aWd1V" role="3bR37C">
794+
<node concept="3bR9La" id="7HJqs_aWd1W" role="1SiIV1">
795+
<ref role="3bR37D" to="ffeo:1TaHNgiIbIQ" resolve="MPS.Core" />
796+
</node>
797+
</node>
783798
</node>
784799
</node>
785800
<node concept="55IIr" id="7C9PHv6FBIQ" role="auvoZ" />

0 commit comments

Comments
 (0)