diff --git a/.github/scripts/package_lfc.sh b/.github/scripts/package_lfc.sh index 26b683d83c..abc282e9c6 100755 --- a/.github/scripts/package_lfc.sh +++ b/.github/scripts/package_lfc.sh @@ -13,7 +13,7 @@ outname="lfc_nightly_$(date '+%Y%m%d-%H%M%S')" mkdir -p $outname/bin mkdir -p $outname/lib -mv org.lflang/build/libs/org.lflang-*-SNAPSHOT-all.jar $outname/lib +mv org.lflang.lfc/build/libs/org.lflang.lfc-*-SNAPSHOT-all.jar $outname/lib # Move & patch wrappers sed -e '/^lfbase=/d' -e 's/\${lfbase}build\/libs/\${base}lib/g' -e '/^if \[\[ ! -f "\$jarpath" \]\]; then/{n;N;N;d}' bin/lfc > $outname/bin/lfc diff --git a/bin/lfc b/bin/lfc index a7c4d695e0..12ab5d948f 100755 --- a/bin/lfc +++ b/bin/lfc @@ -12,8 +12,8 @@ if [ ! "$0" = "${0##*/*}" ]; then # Do we have a parent directory? base="${0%/*}/" fi base="${base}../" -lfbase="${base}org.lflang/" -jarpath="${lfbase}build/libs/org.lflang-0.1.0-SNAPSHOT-all.jar" +lfbase="${base}org.lflang.lfc/" +jarpath="${lfbase}build/libs/org.lflang.lfc-0.1.0-SNAPSHOT-all.jar" # Report fatal error. function fatal_error() { diff --git a/bin/lfc.ps1 b/bin/lfc.ps1 index 3713391009..145e89951a 100644 --- a/bin/lfc.ps1 +++ b/bin/lfc.ps1 @@ -5,8 +5,8 @@ #========================================================== $base="$PSScriptRoot\.." -$lfbase="$base\org.lflang" -$jarpath="$lfbase\build\libs\org.lflang-0.1.0-SNAPSHOT-all.jar" +$lfbase="$base\org.lflang.lfc" +$jarpath="$lfbase\build\libs\org.lflang.lfc-0.1.0-SNAPSHOT-all.jar" # if there is no jar file, then build it first if (-not (Test-Path $jarpath -PathType leaf)) { diff --git a/oomph/LinguaFranca.setup b/oomph/LinguaFranca.setup index ae9a1b8c73..2d1b400c59 100644 --- a/oomph/LinguaFranca.setup +++ b/oomph/LinguaFranca.setup @@ -178,19 +178,6 @@ url="http://download.eclipse.org/modeling/tmf/xtext/updates/composite/releases/"/> Install the tools needed in the IDE to work with the source code for ${scope.project.label} - - - - - - - - - @@ -466,8 +449,6 @@ versionRange="2.25.0"/> - - diff --git a/org.lflang.diagram/.classpath b/org.lflang.diagram/.classpath index 569afe1a8b..47ce7cd075 100644 --- a/org.lflang.diagram/.classpath +++ b/org.lflang.diagram/.classpath @@ -1,8 +1,8 @@ + - diff --git a/org.lflang.diagram/.settings/org.eclipse.jdt.core.prefs b/org.lflang.diagram/.settings/org.eclipse.jdt.core.prefs index 56a7a9250c..9003cf3159 100644 --- a/org.lflang.diagram/.settings/org.eclipse.jdt.core.prefs +++ b/org.lflang.diagram/.settings/org.eclipse.jdt.core.prefs @@ -1,9 +1,9 @@ eclipse.preferences.version=1 org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled org.eclipse.jdt.core.compiler.codegen.methodParameters=do not generate -org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8 +org.eclipse.jdt.core.compiler.codegen.targetPlatform=11 org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve -org.eclipse.jdt.core.compiler.compliance=1.8 +org.eclipse.jdt.core.compiler.compliance=11 org.eclipse.jdt.core.compiler.debug.lineNumber=generate org.eclipse.jdt.core.compiler.debug.localVariable=generate org.eclipse.jdt.core.compiler.debug.sourceFile=generate @@ -12,7 +12,7 @@ org.eclipse.jdt.core.compiler.problem.enablePreviewFeatures=disabled org.eclipse.jdt.core.compiler.problem.enumIdentifier=error org.eclipse.jdt.core.compiler.problem.reportPreviewFeatures=warning org.eclipse.jdt.core.compiler.release=enabled -org.eclipse.jdt.core.compiler.source=1.8 +org.eclipse.jdt.core.compiler.source=11 org.eclipse.jdt.core.formatter.align_assignment_statements_on_columns=false org.eclipse.jdt.core.formatter.align_fields_grouping_blank_lines=2147483647 org.eclipse.jdt.core.formatter.align_type_members_on_columns=false diff --git a/org.lflang.ide/.classpath b/org.lflang.ide/.classpath index baba5b6ad0..dfa5bf5642 100644 --- a/org.lflang.ide/.classpath +++ b/org.lflang.ide/.classpath @@ -1,20 +1,12 @@ - + - - + - - - - - - - - - - - + + + + diff --git a/org.lflang.ide/.project b/org.lflang.ide/.project index 660d90d15b..657668eb96 100644 --- a/org.lflang.ide/.project +++ b/org.lflang.ide/.project @@ -5,21 +5,11 @@ - - org.jetbrains.kotlin.ui.kotlinBuilder - - - org.eclipse.xtext.ui.shared.xtextBuilder - - org.eclipse.buildship.core.gradleprojectbuilder - - - org.eclipse.jdt.core.javabuilder @@ -40,14 +30,5 @@ org.eclipse.xtext.ui.shared.xtextNature org.eclipse.jdt.core.javanature org.eclipse.pde.PluginNature - org.eclipse.buildship.core.gradleprojectnature - org.jetbrains.kotlin.core.kotlinNature - - - kotlin_bin - 2 - org.jetbrains.kotlin.core.filesystem:/org.lflang.ide/kotlin_bin - - diff --git a/org.lflang.lfc/build.gradle b/org.lflang.lfc/build.gradle new file mode 100644 index 0000000000..5ddff206ab --- /dev/null +++ b/org.lflang.lfc/build.gradle @@ -0,0 +1,38 @@ +dependencies { + implementation project(':org.lflang') + implementation "org.eclipse.xtext:org.eclipse.xtext.ide:${xtextVersion}" + implementation "org.eclipse.xtext:org.eclipse.xtext.xbase.ide:${xtextVersion}" +} + +apply plugin: 'application' +apply plugin: 'com.github.johnrengelman.shadow' + +task generateStandaloneCompiler() { + apply plugin: 'application' + apply plugin: 'com.github.johnrengelman.shadow' + mainClassName = 'org.lflang.lfc.Main' + + shadowJar { + exclude 'test/*' + minimize() { + exclude(dependency('log4j:log4j:.*')) + exclude(dependency('com.google.inject:guice:.*')) + exclude(dependency('org.lflang:org.lflang:.*')) + } + transform(com.github.jengelman.gradle.plugins.shadow.transformers.AppendingTransformer){ + resource = 'plugin.properties' + } + } +} + +generateStandaloneCompiler.finalizedBy shadowJar + +task runLfc(type: JavaExec) { + // Note: when you use --args, you need to escape cli flags which start with -- + // For instance --args ' --help' + // Otherwise they're parsed as arguments to the Gradle CLI, not LFC. + description = "Build and run LFC, use --args to pass arguments" + group = "application" + classpath = sourceSets.main.runtimeClasspath + mainClass = 'org.lflang.generator.Main' +} \ No newline at end of file diff --git a/org.lflang/src/org/lflang/LFStandaloneModule.java b/org.lflang.lfc/src/org/lflang/lfc/LFStandaloneModule.java similarity index 94% rename from org.lflang/src/org/lflang/LFStandaloneModule.java rename to org.lflang.lfc/src/org/lflang/lfc/LFStandaloneModule.java index 2b0f740f60..01215fef69 100644 --- a/org.lflang/src/org/lflang/LFStandaloneModule.java +++ b/org.lflang.lfc/src/org/lflang/lfc/LFStandaloneModule.java @@ -32,9 +32,9 @@ import org.eclipse.xtext.validation.ValidationMessageAcceptor; -import org.lflang.generator.ReportingBackend; -import org.lflang.generator.StandaloneErrorReporter; -import org.lflang.generator.StandaloneIssueAcceptor; +import org.lflang.lfc.ReportingBackend; +import org.lflang.lfc.StandaloneErrorReporter; +import org.lflang.lfc.StandaloneIssueAcceptor; import com.google.inject.Binder; import com.google.inject.Module; diff --git a/org.lflang/src/org/lflang/generator/Main.java b/org.lflang.lfc/src/org/lflang/lfc/Main.java similarity index 99% rename from org.lflang/src/org/lflang/generator/Main.java rename to org.lflang.lfc/src/org/lflang/lfc/Main.java index 1545375d81..e0d469ed44 100644 --- a/org.lflang/src/org/lflang/generator/Main.java +++ b/org.lflang.lfc/src/org/lflang/lfc/Main.java @@ -1,7 +1,7 @@ /** * Stand-alone version of the Lingua Franca compiler (lfc). */ -package org.lflang.generator; +package org.lflang.lfc; import java.io.File; import java.io.IOException; @@ -41,6 +41,7 @@ import org.lflang.LFRuntimeModule; import org.lflang.LFStandaloneModule; import org.lflang.LFStandaloneSetup; +import org.lflang.generator.StandaloneContext; import com.google.inject.Inject; import com.google.inject.Injector; diff --git a/org.lflang/src/org/lflang/generator/ReportingUtil.kt b/org.lflang.lfc/src/org/lflang/lfc/ReportingUtil.kt similarity index 99% rename from org.lflang/src/org/lflang/generator/ReportingUtil.kt rename to org.lflang.lfc/src/org/lflang/lfc/ReportingUtil.kt index a97273fb06..a6c852d6f2 100644 --- a/org.lflang/src/org/lflang/generator/ReportingUtil.kt +++ b/org.lflang.lfc/src/org/lflang/lfc/ReportingUtil.kt @@ -22,7 +22,7 @@ * THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package org.lflang.generator +package org.lflang.lfc import com.google.inject.Inject import com.google.inject.Singleton diff --git a/org.lflang/src/org/lflang/generator/StandaloneErrorReporter.java b/org.lflang.lfc/src/org/lflang/lfc/StandaloneErrorReporter.java similarity index 99% rename from org.lflang/src/org/lflang/generator/StandaloneErrorReporter.java rename to org.lflang.lfc/src/org/lflang/lfc/StandaloneErrorReporter.java index 5878476fa7..9f67e5efc4 100644 --- a/org.lflang/src/org/lflang/generator/StandaloneErrorReporter.java +++ b/org.lflang.lfc/src/org/lflang/lfc/StandaloneErrorReporter.java @@ -25,7 +25,7 @@ * POSSIBILITY OF SUCH DAMAGE. ***************/ -package org.lflang.generator; +package org.lflang.lfc; import java.nio.file.Path; diff --git a/org.lflang/src/org/lflang/generator/StandaloneIssueAcceptor.java b/org.lflang.lfc/src/org/lflang/lfc/StandaloneIssueAcceptor.java similarity index 99% rename from org.lflang/src/org/lflang/generator/StandaloneIssueAcceptor.java rename to org.lflang.lfc/src/org/lflang/lfc/StandaloneIssueAcceptor.java index 36269f904d..2ac587e338 100644 --- a/org.lflang/src/org/lflang/generator/StandaloneIssueAcceptor.java +++ b/org.lflang.lfc/src/org/lflang/lfc/StandaloneIssueAcceptor.java @@ -1,4 +1,4 @@ -package org.lflang.generator; +package org.lflang.lfc; import java.io.IOException; import java.nio.file.Path; diff --git a/org.lflang.product/.classpath b/org.lflang.product/.classpath index 751c8f2e50..e801ebfb46 100644 --- a/org.lflang.product/.classpath +++ b/org.lflang.product/.classpath @@ -1,7 +1,7 @@ - - + + diff --git a/org.lflang.sdk/feature.xml b/org.lflang.sdk/feature.xml index 4312c78b66..3b4c4e5c86 100644 --- a/org.lflang.sdk/feature.xml +++ b/org.lflang.sdk/feature.xml @@ -6,6 +6,7 @@ + - + + + + + + + - - - + - - - + - - - - - - + diff --git a/org.lflang.tests/.project b/org.lflang.tests/.project index 2b1388611c..f17ca7cd7c 100644 --- a/org.lflang.tests/.project +++ b/org.lflang.tests/.project @@ -5,21 +5,11 @@ - - org.jetbrains.kotlin.ui.kotlinBuilder - - - org.eclipse.xtext.ui.shared.xtextBuilder - - org.eclipse.buildship.core.gradleprojectbuilder - - - org.eclipse.jdt.core.javabuilder @@ -40,14 +30,5 @@ org.eclipse.xtext.ui.shared.xtextNature org.eclipse.jdt.core.javanature org.eclipse.pde.PluginNature - org.eclipse.buildship.core.gradleprojectnature - org.jetbrains.kotlin.core.kotlinNature - - - kotlin_bin - 2 - org.jetbrains.kotlin.core.filesystem:/org.lflang.tests/kotlin_bin - - diff --git a/org.lflang.ui.tests/.classpath b/org.lflang.ui.tests/.classpath index 5c18ede0c1..8fe29852a1 100644 --- a/org.lflang.ui.tests/.classpath +++ b/org.lflang.ui.tests/.classpath @@ -1,5 +1,11 @@ + + + + + + @@ -15,7 +21,5 @@ - - diff --git a/org.lflang.ui.tests/.settings/org.eclipse.jdt.core.prefs b/org.lflang.ui.tests/.settings/org.eclipse.jdt.core.prefs index 0c68a61dca..7adc0fb9a0 100644 --- a/org.lflang.ui.tests/.settings/org.eclipse.jdt.core.prefs +++ b/org.lflang.ui.tests/.settings/org.eclipse.jdt.core.prefs @@ -1,7 +1,10 @@ eclipse.preferences.version=1 org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled -org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8 -org.eclipse.jdt.core.compiler.compliance=1.8 +org.eclipse.jdt.core.compiler.codegen.targetPlatform=11 +org.eclipse.jdt.core.compiler.compliance=11 org.eclipse.jdt.core.compiler.problem.assertIdentifier=error +org.eclipse.jdt.core.compiler.problem.enablePreviewFeatures=disabled org.eclipse.jdt.core.compiler.problem.enumIdentifier=error -org.eclipse.jdt.core.compiler.source=1.8 +org.eclipse.jdt.core.compiler.problem.reportPreviewFeatures=warning +org.eclipse.jdt.core.compiler.release=enabled +org.eclipse.jdt.core.compiler.source=11 diff --git a/org.lflang.ui/.classpath b/org.lflang.ui/.classpath index 9081d4f703..95cdcb1209 100644 --- a/org.lflang.ui/.classpath +++ b/org.lflang.ui/.classpath @@ -1,9 +1,9 @@ + + - - diff --git a/org.lflang.ui/.settings/org.eclipse.jdt.core.prefs b/org.lflang.ui/.settings/org.eclipse.jdt.core.prefs index 0c68a61dca..7adc0fb9a0 100644 --- a/org.lflang.ui/.settings/org.eclipse.jdt.core.prefs +++ b/org.lflang.ui/.settings/org.eclipse.jdt.core.prefs @@ -1,7 +1,10 @@ eclipse.preferences.version=1 org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled -org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8 -org.eclipse.jdt.core.compiler.compliance=1.8 +org.eclipse.jdt.core.compiler.codegen.targetPlatform=11 +org.eclipse.jdt.core.compiler.compliance=11 org.eclipse.jdt.core.compiler.problem.assertIdentifier=error +org.eclipse.jdt.core.compiler.problem.enablePreviewFeatures=disabled org.eclipse.jdt.core.compiler.problem.enumIdentifier=error -org.eclipse.jdt.core.compiler.source=1.8 +org.eclipse.jdt.core.compiler.problem.reportPreviewFeatures=warning +org.eclipse.jdt.core.compiler.release=enabled +org.eclipse.jdt.core.compiler.source=11 diff --git a/org.lflang.web/.classpath b/org.lflang.web/.classpath deleted file mode 100644 index a082f9a6ec..0000000000 --- a/org.lflang.web/.classpath +++ /dev/null @@ -1,24 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/org.lflang.web/.project b/org.lflang.web/.project deleted file mode 100644 index 3759606adc..0000000000 --- a/org.lflang.web/.project +++ /dev/null @@ -1,54 +0,0 @@ - - - org.lflang.web - - - - - - org.jetbrains.kotlin.ui.kotlinBuilder - - - - - org.eclipse.xtext.ui.shared.xtextBuilder - - - - - org.eclipse.wst.common.project.facet.core.builder - - - - - org.eclipse.wst.validation.validationbuilder - - - - - org.eclipse.buildship.core.gradleprojectbuilder - - - - - org.eclipse.jdt.core.javabuilder - - - - - - org.eclipse.jdt.core.javanature - org.eclipse.xtext.ui.shared.xtextNature - org.eclipse.wst.common.project.facet.core.nature - org.eclipse.wst.common.modulecore.ModuleCoreNature - org.eclipse.buildship.core.gradleprojectnature - org.jetbrains.kotlin.core.kotlinNature - - - - kotlin_bin - 2 - org.jetbrains.kotlin.core.filesystem:/org.lflang.web/kotlin_bin - - - diff --git a/org.lflang.web/.settings/org.eclipse.buildship.core.prefs b/org.lflang.web/.settings/org.eclipse.buildship.core.prefs deleted file mode 100644 index 61d5a8a818..0000000000 --- a/org.lflang.web/.settings/org.eclipse.buildship.core.prefs +++ /dev/null @@ -1,8 +0,0 @@ -connection.arguments= -connection.gradle.distribution=GRADLE_DISTRIBUTION(WRAPPER) -connection.gradle.user.home=null -connection.java.home=null -connection.jvm.arguments= -connection.project.dir=.. -eclipse.preferences.version=1 -project.path=\:org.icyphy.linguafranca.web diff --git a/org.lflang.web/.settings/org.eclipse.core.resources.prefs b/org.lflang.web/.settings/org.eclipse.core.resources.prefs deleted file mode 100644 index 99f26c0203..0000000000 --- a/org.lflang.web/.settings/org.eclipse.core.resources.prefs +++ /dev/null @@ -1,2 +0,0 @@ -eclipse.preferences.version=1 -encoding/=UTF-8 diff --git a/org.lflang.web/.settings/org.eclipse.jdt.core.prefs b/org.lflang.web/.settings/org.eclipse.jdt.core.prefs deleted file mode 100644 index 3056f74d3b..0000000000 --- a/org.lflang.web/.settings/org.eclipse.jdt.core.prefs +++ /dev/null @@ -1,8 +0,0 @@ -eclipse.preferences.version=1 -org.eclipse.jdt.core.builder.resourceCopyExclusionFilter=*.kt -org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled -org.eclipse.jdt.core.compiler.codegen.targetPlatform=11 -org.eclipse.jdt.core.compiler.compliance=11 -org.eclipse.jdt.core.compiler.problem.assertIdentifier=error -org.eclipse.jdt.core.compiler.problem.enumIdentifier=error -org.eclipse.jdt.core.compiler.source=11 diff --git a/org.lflang.web/.settings/org.eclipse.wst.common.component b/org.lflang.web/.settings/org.eclipse.wst.common.component deleted file mode 100644 index cdf8a7cee1..0000000000 --- a/org.lflang.web/.settings/org.eclipse.wst.common.component +++ /dev/null @@ -1,15 +0,0 @@ - - - - - - - - - uses - - - uses - - - diff --git a/org.lflang.web/.settings/org.eclipse.wst.common.project.facet.core.xml b/org.lflang.web/.settings/org.eclipse.wst.common.project.facet.core.xml deleted file mode 100644 index 14e5ac12b6..0000000000 --- a/org.lflang.web/.settings/org.eclipse.wst.common.project.facet.core.xml +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - - diff --git a/org.lflang.web/WebRoot/index.html b/org.lflang.web/WebRoot/index.html deleted file mode 100644 index 5beddc8c7e..0000000000 --- a/org.lflang.web/WebRoot/index.html +++ /dev/null @@ -1,44 +0,0 @@ - - - - - Example Web Editor - - - - - - - -
-
-

Example LinguaFranca Web Editor

-
-
-
-
-
- - - diff --git a/org.lflang.web/WebRoot/style.css b/org.lflang.web/WebRoot/style.css deleted file mode 100644 index 9f0724d8f3..0000000000 --- a/org.lflang.web/WebRoot/style.css +++ /dev/null @@ -1,56 +0,0 @@ -body { - width: 100%; - height: 100%; - overflow: hidden; - font: 16px Helvetica,sans-serif; -} - -a { - color: #22a; - text-decoration: none; -} - -a:hover { - text-decoration: underline; -} - -.container { - display: block; - position: absolute; - top: 0; - bottom: 0; - left: 0; - right: 0; - margin: 20px; -} - -.header { - display: block; - position: absolute; - background-color: #e8e8e8; - top: 0; - left: 0; - right: 0; - height: 60px; - padding: 10px; -} - -.content { - display: block; - position: absolute; - top: 90px; - bottom: 0; - left: 0; - width: 640px; -} - -#xtext-editor { - display: block; - position: absolute; - top: 0; - bottom: 0; - left: 0; - right: 0; - padding: 4px; - border: 1px solid #aaa; -} diff --git a/org.lflang.web/build.gradle b/org.lflang.web/build.gradle deleted file mode 100644 index df451ee459..0000000000 --- a/org.lflang.web/build.gradle +++ /dev/null @@ -1,23 +0,0 @@ -plugins { - id 'war' -} -dependencies { - implementation project(':org.lflang') - implementation project(':org.lflang.ide') - implementation "org.eclipse.xtext:org.eclipse.xtext.xbase.web:${xtextVersion}" - implementation "org.eclipse.xtext:org.eclipse.xtext.web.servlet:${xtextVersion}" - implementation "org.eclipse.xtend:org.eclipse.xtend.lib:${xtextVersion}" - implementation "org.webjars:requirejs:2.3.6" - implementation "org.webjars:jquery:3.3.1-1" - implementation "org.webjars:ace:1.3.3" - providedCompile "org.eclipse.jetty:jetty-annotations:9.4.14.v20181114" - providedCompile "org.slf4j:slf4j-simple:1.7.21" -} -task jettyRun(type:JavaExec) { - dependsOn(sourceSets.main.runtimeClasspath) - classpath = sourceSets.main.runtimeClasspath.filter{it.exists()} - main = 'org.lflang.web.ServerLauncher' - standardInput = System.in - group = 'run' - description = 'Starts an example Jetty server with your language' -} diff --git a/org.lflang.web/src/org/lflang/web/AbstractLinguaFrancaWebModule.java b/org.lflang.web/src/org/lflang/web/AbstractLinguaFrancaWebModule.java deleted file mode 100644 index 54d043579f..0000000000 --- a/org.lflang.web/src/org/lflang/web/AbstractLinguaFrancaWebModule.java +++ /dev/null @@ -1,14 +0,0 @@ -/* - * generated by Xtext 2.18.0 - */ -package org.lflang.web; - -import org.eclipse.xtext.web.server.DefaultWebModule; - -/** - * Manual modifications go to {@link LinguaFrancaWebModule}. - */ -@SuppressWarnings("all") -public abstract class AbstractLinguaFrancaWebModule extends DefaultWebModule { - -} diff --git a/org.lflang.web/src/org/lflang/web/LinguaFrancaServlet.xtend b/org.lflang.web/src/org/lflang/web/LinguaFrancaServlet.xtend deleted file mode 100644 index 01e584d4ea..0000000000 --- a/org.lflang.web/src/org/lflang/web/LinguaFrancaServlet.xtend +++ /dev/null @@ -1,32 +0,0 @@ -/* - * generated by Xtext 2.18.0 - */ -package org.lflang.web - -import javax.servlet.annotation.WebServlet -import org.eclipse.xtext.util.DisposableRegistry -import org.eclipse.xtext.web.servlet.XtextServlet - -/** - * Deploy this class into a servlet container to enable DSL-specific services. - */ -@WebServlet(name = 'XtextServices', urlPatterns = '/xtext-service/*') -class LinguaFrancaServlet extends XtextServlet { - - DisposableRegistry disposableRegistry - - override init() { - super.init() - val injector = new LinguaFrancaWebSetup().createInjectorAndDoEMFRegistration() - disposableRegistry = injector.getInstance(DisposableRegistry) - } - - override destroy() { - if (disposableRegistry !== null) { - disposableRegistry.dispose() - disposableRegistry = null - } - super.destroy() - } - -} diff --git a/org.lflang.web/src/org/lflang/web/LinguaFrancaWebModule.xtend b/org.lflang.web/src/org/lflang/web/LinguaFrancaWebModule.xtend deleted file mode 100644 index c866a668df..0000000000 --- a/org.lflang.web/src/org/lflang/web/LinguaFrancaWebModule.xtend +++ /dev/null @@ -1,11 +0,0 @@ -/* - * generated by Xtext 2.18.0 - */ -package org.lflang.web - - -/** - * Use this class to register additional components to be used within the web application. - */ -class LinguaFrancaWebModule extends AbstractLinguaFrancaWebModule { -} diff --git a/org.lflang.web/src/org/lflang/web/LinguaFrancaWebSetup.xtend b/org.lflang.web/src/org/lflang/web/LinguaFrancaWebSetup.xtend deleted file mode 100644 index 240c8516bb..0000000000 --- a/org.lflang.web/src/org/lflang/web/LinguaFrancaWebSetup.xtend +++ /dev/null @@ -1,22 +0,0 @@ -/* - * generated by Xtext 2.18.0 - */ -package org.lflang.web - -import com.google.inject.Guice -import com.google.inject.Injector -import org.eclipse.xtext.util.Modules2 -import org.lflang.LFRuntimeModule -import org.lflang.LFStandaloneSetup -import org.lflang.ide.LFIdeModule - -/** - * Initialization support for running Xtext languages in web applications. - */ -class LinguaFrancaWebSetup extends LFStandaloneSetup { - - override Injector createInjector() { - return Guice.createInjector(Modules2.mixin(new LFRuntimeModule, new LFIdeModule, new LinguaFrancaWebModule)) - } - -} diff --git a/org.lflang.web/src/org/lflang/web/ServerLauncher.xtend b/org.lflang.web/src/org/lflang/web/ServerLauncher.xtend deleted file mode 100644 index 7a79795fc0..0000000000 --- a/org.lflang.web/src/org/lflang/web/ServerLauncher.xtend +++ /dev/null @@ -1,54 +0,0 @@ -/* - * generated by Xtext 2.18.0 - */ -package org.lflang.web - -import java.net.InetSocketAddress -import org.eclipse.jetty.annotations.AnnotationConfiguration -import org.eclipse.jetty.server.Server -import org.eclipse.jetty.util.log.Slf4jLog -import org.eclipse.jetty.webapp.MetaInfConfiguration -import org.eclipse.jetty.webapp.WebAppContext -import org.eclipse.jetty.webapp.WebInfConfiguration -import org.eclipse.jetty.webapp.WebXmlConfiguration - -/** - * This program starts an HTTP server for testing the web integration of your DSL. - * Just execute it and point a web browser to http://localhost:8080/ - */ -class ServerLauncher { - def static void main(String[] args) { - val server = new Server(new InetSocketAddress('localhost', 8080)) - server.handler = new WebAppContext => [ - resourceBase = 'WebRoot' - welcomeFiles = #["index.html"] - contextPath = "/" - configurations = #[ - new AnnotationConfiguration, - new WebXmlConfiguration, - new WebInfConfiguration, - new MetaInfConfiguration - ] - setAttribute(WebInfConfiguration.CONTAINER_JAR_PATTERN, '.*/org\\.icyphy\\.linguafranca\\.web/.*,.*\\.jar') - setInitParameter("org.mortbay.jetty.servlet.Default.useFileMappedBuffer", "false") - ] - val log = new Slf4jLog(ServerLauncher.name) - try { - server.start - log.info('Server started ' + server.getURI + '...') - new Thread[ - log.info('Press enter to stop the server...') - val key = System.in.read - if (key != -1) { - server.stop - } else { - log.warn('Console input is not available. In order to stop the server, you need to cancel process manually.') - } - ].start - server.join - } catch (Exception exception) { - log.warn(exception.message) - System.exit(1) - } - } -} diff --git a/org.lflang/.classpath b/org.lflang/.classpath index 1b604e5af8..08341d2d6a 100644 --- a/org.lflang/.classpath +++ b/org.lflang/.classpath @@ -1,25 +1,13 @@ - + - - + - - - - - - - - - - - - - - - - + + + + + diff --git a/org.lflang/.launch/Generate LinguaFranca (lf) Language Infrastructure.launch b/org.lflang/.launch/Generate LinguaFranca (lf) Language Infrastructure.launch index 15c5c08211..63ebad870e 100644 --- a/org.lflang/.launch/Generate LinguaFranca (lf) Language Infrastructure.launch +++ b/org.lflang/.launch/Generate LinguaFranca (lf) Language Infrastructure.launch @@ -11,7 +11,15 @@ + + + + + + + + diff --git a/org.lflang/.project b/org.lflang/.project index 3520fce8cd..9329fa3ba1 100644 --- a/org.lflang/.project +++ b/org.lflang/.project @@ -5,21 +5,11 @@ - - org.jetbrains.kotlin.ui.kotlinBuilder - - - org.eclipse.xtext.ui.shared.xtextBuilder - - org.eclipse.buildship.core.gradleprojectbuilder - - - org.eclipse.jdt.core.javabuilder @@ -40,14 +30,16 @@ org.eclipse.xtext.ui.shared.xtextNature org.eclipse.jdt.core.javanature org.eclipse.pde.PluginNature - org.eclipse.buildship.core.gradleprojectnature - org.jetbrains.kotlin.core.kotlinNature - - - kotlin_bin - 2 - org.jetbrains.kotlin.core.filesystem:/org.lflang/kotlin_bin - - + + + 1627412675330 + + 30 + + org.eclipse.core.resources.regexFilterMatcher + node_modules|.git|__CREATED_BY_JAVA_LANGUAGE_SERVER__ + + + diff --git a/org.lflang/META-INF/MANIFEST.MF b/org.lflang/META-INF/MANIFEST.MF index 4725e9f337..7163e5b12d 100644 --- a/org.lflang/META-INF/MANIFEST.MF +++ b/org.lflang/META-INF/MANIFEST.MF @@ -18,7 +18,7 @@ Require-Bundle: org.eclipse.xtext, com.google.guava, org.eclipse.xtend.lib.macro, org.apache.commons.cli;bundle-version="1.4", - org.jetbrains.kotlin.bundled-compiler + org.jetbrains.kotlin.bundled-compiler;resolution:=optional Bundle-RequiredExecutionEnvironment: JavaSE-11 Export-Package: org.lflang, org.lflang.generator, diff --git a/org.lflang/build.gradle b/org.lflang/build.gradle index 442fc15984..b022dab68c 100644 --- a/org.lflang/build.gradle +++ b/org.lflang/build.gradle @@ -63,31 +63,3 @@ generateXtext.dependsOn(generateXtextLanguage) clean.dependsOn(cleanGenerateXtextLanguage) eclipse.classpath.plusConfigurations += [configurations.mwe2] -task generateStandaloneCompiler() { - apply plugin: 'application' - apply plugin: 'com.github.johnrengelman.shadow' - mainClassName = 'org.lflang.generator.Main' - - shadowJar { - exclude 'test/*' - minimize() { - exclude(dependency('log4j:log4j:.*')) - exclude(dependency('com.google.inject:guice:.*')) - } - transform(com.github.jengelman.gradle.plugins.shadow.transformers.AppendingTransformer){ - resource = 'plugin.properties' - } - } -} - -generateStandaloneCompiler.finalizedBy shadowJar - -task runLfc(type: JavaExec) { - // Note: when you use --args, you need to escape cli flags which start with -- - // For instance --args ' --help' - // Otherwise they're parsed as arguments to the Gradle CLI, not LFC. - description = "Build and run LFC, use --args to pass arguments" - group = "application" - classpath = sourceSets.main.runtimeClasspath - mainClass = 'org.lflang.generator.Main' -} diff --git a/org.lflang/src/org/lflang/GenerateLinguaFranca.mwe2 b/org.lflang/src/org/lflang/GenerateLinguaFranca.mwe2 index 9a532ee85c..78c599d8aa 100644 --- a/org.lflang/src/org/lflang/GenerateLinguaFranca.mwe2 +++ b/org.lflang/src/org/lflang/GenerateLinguaFranca.mwe2 @@ -21,6 +21,9 @@ Workflow { eclipsePluginTest = { enabled = true } + web = { + enabled = false + } createEclipseMetaData = true } code = { diff --git a/settings.gradle b/settings.gradle index 61cb61064e..c600105b01 100644 --- a/settings.gradle +++ b/settings.gradle @@ -1,4 +1,3 @@ include 'org.lflang' -include 'org.lflang.ide' -include 'org.lflang.web' +include 'org.lflang.lfc' include 'org.lflang.tests'