Search in sources :

Example 1 with ProjectDescriptor

use of org.eclipse.xtext.xtext.wizard.ProjectDescriptor in project xtext-core by eclipse.

the class WizardConfigurationTest method eclipsePluginsAreBuiltWithTychoWhenMavenBuiltIsEnabled.

@Test
public void eclipsePluginsAreBuiltWithTychoWhenMavenBuiltIsEnabled() {
    UiProjectDescriptor _uiProject = this.config.getUiProject();
    _uiProject.setEnabled(true);
    IdeProjectDescriptor _ideProject = this.config.getIdeProject();
    _ideProject.setEnabled(true);
    this.config.setPreferredBuildSystem(BuildSystem.MAVEN);
    Assert.assertTrue(this.config.needsTychoBuild());
    RuntimeProjectDescriptor _runtimeProject = this.config.getRuntimeProject();
    IdeProjectDescriptor _ideProject_1 = this.config.getIdeProject();
    UiProjectDescriptor _uiProject_1 = this.config.getUiProject();
    final Consumer<ProjectDescriptor> _function = (ProjectDescriptor it) -> {
        Assert.assertTrue(it.pom().getContent().contains("eclipse-plugin"));
    };
    Collections.<ProjectDescriptor>unmodifiableList(CollectionLiterals.<ProjectDescriptor>newArrayList(_runtimeProject, _ideProject_1, _uiProject_1)).forEach(_function);
    Assert.assertTrue(this.config.getParentProject().pom().getContent().contains("tycho"));
}
Also used : UiProjectDescriptor(org.eclipse.xtext.xtext.wizard.UiProjectDescriptor) WebProjectDescriptor(org.eclipse.xtext.xtext.wizard.WebProjectDescriptor) TestProjectDescriptor(org.eclipse.xtext.xtext.wizard.TestProjectDescriptor) TestedProjectDescriptor(org.eclipse.xtext.xtext.wizard.TestedProjectDescriptor) ProjectDescriptor(org.eclipse.xtext.xtext.wizard.ProjectDescriptor) IdeProjectDescriptor(org.eclipse.xtext.xtext.wizard.IdeProjectDescriptor) RuntimeProjectDescriptor(org.eclipse.xtext.xtext.wizard.RuntimeProjectDescriptor) IntellijProjectDescriptor(org.eclipse.xtext.xtext.wizard.IntellijProjectDescriptor) UiProjectDescriptor(org.eclipse.xtext.xtext.wizard.UiProjectDescriptor) RuntimeProjectDescriptor(org.eclipse.xtext.xtext.wizard.RuntimeProjectDescriptor) IdeProjectDescriptor(org.eclipse.xtext.xtext.wizard.IdeProjectDescriptor) Test(org.junit.Test)

Example 2 with ProjectDescriptor

use of org.eclipse.xtext.xtext.wizard.ProjectDescriptor in project xtext-core by eclipse.

the class WizardConfigurationTest method allJavaProjects.

public List<? extends ProjectDescriptor> allJavaProjects() {
    RuntimeProjectDescriptor _runtimeProject = this.config.getRuntimeProject();
    TestProjectDescriptor _testProject = this.config.getRuntimeProject().getTestProject();
    UiProjectDescriptor _uiProject = this.config.getUiProject();
    TestProjectDescriptor _testProject_1 = this.config.getUiProject().getTestProject();
    IdeProjectDescriptor _ideProject = this.config.getIdeProject();
    IntellijProjectDescriptor _intellijProject = this.config.getIntellijProject();
    WebProjectDescriptor _webProject = this.config.getWebProject();
    return Collections.<ProjectDescriptor>unmodifiableList(CollectionLiterals.<ProjectDescriptor>newArrayList(_runtimeProject, _testProject, _uiProject, _testProject_1, _ideProject, _intellijProject, _webProject));
}
Also used : UiProjectDescriptor(org.eclipse.xtext.xtext.wizard.UiProjectDescriptor) IntellijProjectDescriptor(org.eclipse.xtext.xtext.wizard.IntellijProjectDescriptor) WebProjectDescriptor(org.eclipse.xtext.xtext.wizard.WebProjectDescriptor) TestProjectDescriptor(org.eclipse.xtext.xtext.wizard.TestProjectDescriptor) TestedProjectDescriptor(org.eclipse.xtext.xtext.wizard.TestedProjectDescriptor) ProjectDescriptor(org.eclipse.xtext.xtext.wizard.ProjectDescriptor) IdeProjectDescriptor(org.eclipse.xtext.xtext.wizard.IdeProjectDescriptor) RuntimeProjectDescriptor(org.eclipse.xtext.xtext.wizard.RuntimeProjectDescriptor) IntellijProjectDescriptor(org.eclipse.xtext.xtext.wizard.IntellijProjectDescriptor) UiProjectDescriptor(org.eclipse.xtext.xtext.wizard.UiProjectDescriptor) RuntimeProjectDescriptor(org.eclipse.xtext.xtext.wizard.RuntimeProjectDescriptor) TestProjectDescriptor(org.eclipse.xtext.xtext.wizard.TestProjectDescriptor) WebProjectDescriptor(org.eclipse.xtext.xtext.wizard.WebProjectDescriptor) IdeProjectDescriptor(org.eclipse.xtext.xtext.wizard.IdeProjectDescriptor)

Example 3 with ProjectDescriptor

use of org.eclipse.xtext.xtext.wizard.ProjectDescriptor in project xtext-core by eclipse.

the class RuntimeProjectDescriptor method pom.

@Override
public PomFile pom() {
    PomFile _pom = super.pom();
    final Procedure1<PomFile> _function = (PomFile it) -> {
        String _xifexpression = null;
        boolean _isEclipsePluginProject = this.isEclipsePluginProject();
        if (_isEclipsePluginProject) {
            _xifexpression = "eclipse-plugin";
        } else {
            _xifexpression = "jar";
        }
        it.setPackaging(_xifexpression);
        StringConcatenation _builder = new StringConcatenation();
        _builder.append("<build>");
        _builder.newLine();
        {
            if (((!this.isEclipsePluginProject()) && Objects.equal(this.getConfig().getSourceLayout(), SourceLayout.PLAIN))) {
                _builder.append("\t");
                _builder.append("<sourceDirectory>");
                String _sourceFolder = this.sourceFolder(Outlet.MAIN_JAVA);
                _builder.append(_sourceFolder, "\t");
                _builder.append("</sourceDirectory>");
                _builder.newLineIfNotEmpty();
                _builder.append("\t");
                _builder.append("<resources>");
                _builder.newLine();
                _builder.append("\t");
                _builder.append("\t");
                _builder.append("<resource>");
                _builder.newLine();
                _builder.append("\t");
                _builder.append("\t\t");
                _builder.append("<directory>");
                String _sourceFolder_1 = this.sourceFolder(Outlet.MAIN_RESOURCES);
                _builder.append(_sourceFolder_1, "\t\t\t");
                _builder.append("</directory>");
                _builder.newLineIfNotEmpty();
                _builder.append("\t");
                _builder.append("\t\t");
                _builder.append("<excludes>");
                _builder.newLine();
                _builder.append("\t");
                _builder.append("\t\t\t");
                _builder.append("<exclude>**/*.java</exclude>");
                _builder.newLine();
                _builder.append("\t");
                _builder.append("\t\t\t");
                _builder.append("<exclude>**/*.xtend</exclude>");
                _builder.newLine();
                _builder.append("\t");
                _builder.append("\t\t\t");
                _builder.append("<exclude>**/*.xtext</exclude>");
                _builder.newLine();
                _builder.append("\t");
                _builder.append("\t\t\t");
                _builder.append("<exclude>**/*.mwe2</exclude>");
                _builder.newLine();
                _builder.append("\t");
                _builder.append("\t\t");
                _builder.append("</excludes>");
                _builder.newLine();
                _builder.append("\t");
                _builder.append("\t");
                _builder.append("</resource>");
                _builder.newLine();
                _builder.append("\t");
                _builder.append("</resources>");
                _builder.newLine();
            }
        }
        _builder.append("\t");
        _builder.append("<plugins>");
        _builder.newLine();
        _builder.append("\t\t");
        _builder.append("<plugin>");
        _builder.newLine();
        _builder.append("\t\t\t");
        _builder.append("<groupId>org.codehaus.mojo</groupId>");
        _builder.newLine();
        _builder.append("\t\t\t");
        _builder.append("<artifactId>exec-maven-plugin</artifactId>");
        _builder.newLine();
        _builder.append("\t\t\t");
        _builder.append("<version>1.4.0</version>");
        _builder.newLine();
        _builder.append("\t\t\t");
        _builder.append("<executions>");
        _builder.newLine();
        _builder.append("\t\t\t\t");
        _builder.append("<execution>");
        _builder.newLine();
        _builder.append("\t\t\t\t\t");
        _builder.append("<id>mwe2Launcher</id>");
        _builder.newLine();
        _builder.append("\t\t\t\t\t");
        _builder.append("<phase>generate-sources</phase>");
        _builder.newLine();
        _builder.append("\t\t\t\t\t");
        _builder.append("<goals>");
        _builder.newLine();
        _builder.append("\t\t\t\t\t\t");
        _builder.append("<goal>java</goal>");
        _builder.newLine();
        _builder.append("\t\t\t\t\t");
        _builder.append("</goals>");
        _builder.newLine();
        _builder.append("\t\t\t\t");
        _builder.append("</execution>");
        _builder.newLine();
        _builder.append("\t\t\t");
        _builder.append("</executions>");
        _builder.newLine();
        _builder.append("\t\t\t");
        _builder.append("<configuration>");
        _builder.newLine();
        _builder.append("\t\t\t\t");
        _builder.append("<mainClass>org.eclipse.emf.mwe2.launch.runtime.Mwe2Launcher</mainClass>");
        _builder.newLine();
        _builder.append("\t\t\t\t");
        _builder.append("<arguments>");
        _builder.newLine();
        _builder.append("\t\t\t\t\t");
        _builder.append("<argument>/${project.basedir}/");
        String _sourceFolder_2 = this.sourceFolder(Outlet.MAIN_JAVA);
        _builder.append(_sourceFolder_2, "\t\t\t\t\t");
        _builder.append("/");
        String _workflowFilePath = this.getWorkflowFilePath();
        _builder.append(_workflowFilePath, "\t\t\t\t\t");
        _builder.append("</argument>");
        _builder.newLineIfNotEmpty();
        _builder.append("\t\t\t\t\t");
        _builder.append("<argument>-p</argument>");
        _builder.newLine();
        _builder.append("\t\t\t\t\t");
        _builder.append("<argument>rootPath=/${project.basedir}/..</argument>");
        _builder.newLine();
        _builder.append("\t\t\t\t");
        _builder.append("</arguments>");
        _builder.newLine();
        _builder.append("\t\t\t\t");
        _builder.append("<classpathScope>compile</classpathScope>");
        _builder.newLine();
        _builder.append("\t\t\t\t");
        _builder.append("<includePluginDependencies>true</includePluginDependencies>");
        _builder.newLine();
        _builder.append("\t\t\t\t");
        _builder.append("<cleanupDaemonThreads>false</cleanupDaemonThreads><!-- see https://bugs.eclipse.org/bugs/show_bug.cgi?id=475098#c3 -->");
        _builder.newLine();
        _builder.append("\t\t\t");
        _builder.append("</configuration>");
        _builder.newLine();
        {
            boolean _needsTychoBuild = this.getConfig().needsTychoBuild();
            if (_needsTychoBuild) {
                _builder.append("\t\t\t");
                _builder.append("<dependencies>");
                _builder.newLine();
                _builder.append("\t\t\t");
                _builder.append("\t");
                _builder.append("<dependency>");
                _builder.newLine();
                _builder.append("\t\t\t");
                _builder.append("\t\t");
                _builder.append("<groupId>org.eclipse.emf</groupId>");
                _builder.newLine();
                _builder.append("\t\t\t");
                _builder.append("\t\t");
                _builder.append("<artifactId>org.eclipse.emf.mwe2.launch</artifactId>");
                _builder.newLine();
                _builder.append("\t\t\t");
                _builder.append("\t\t");
                _builder.append("<version>");
                String _mweVersion = this.getConfig().getXtextVersion().getMweVersion();
                _builder.append(_mweVersion, "\t\t\t\t\t");
                _builder.append("</version>");
                _builder.newLineIfNotEmpty();
                _builder.append("\t\t\t");
                _builder.append("\t");
                _builder.append("</dependency>");
                _builder.newLine();
                _builder.append("\t\t\t");
                _builder.append("\t");
                _builder.append("<dependency>");
                _builder.newLine();
                _builder.append("\t\t\t");
                _builder.append("\t\t");
                _builder.append("<groupId>org.eclipse.xtext</groupId>");
                _builder.newLine();
                _builder.append("\t\t\t");
                _builder.append("\t\t");
                _builder.append("<artifactId>org.eclipse.xtext.common.types</artifactId>");
                _builder.newLine();
                _builder.append("\t\t\t");
                _builder.append("\t\t");
                _builder.append("<version>${xtextVersion}</version>");
                _builder.newLine();
                _builder.append("\t\t\t");
                _builder.append("\t");
                _builder.append("</dependency>");
                _builder.newLine();
                _builder.append("\t\t\t");
                _builder.append("\t");
                _builder.append("<dependency>");
                _builder.newLine();
                _builder.append("\t\t\t");
                _builder.append("\t\t");
                _builder.append("<groupId>org.eclipse.xtext</groupId>");
                _builder.newLine();
                _builder.append("\t\t\t");
                _builder.append("\t\t");
                _builder.append("<artifactId>org.eclipse.xtext.xtext.generator</artifactId>");
                _builder.newLine();
                _builder.append("\t\t\t");
                _builder.append("\t\t");
                _builder.append("<version>${xtextVersion}</version>");
                _builder.newLine();
                _builder.append("\t\t\t");
                _builder.append("\t");
                _builder.append("</dependency>");
                _builder.newLine();
                _builder.append("\t\t\t");
                _builder.append("\t");
                _builder.append("<dependency>");
                _builder.newLine();
                _builder.append("\t\t\t");
                _builder.append("\t\t");
                _builder.append("<groupId>org.eclipse.xtext</groupId>");
                _builder.newLine();
                _builder.append("\t\t\t");
                _builder.append("\t\t");
                _builder.append("<artifactId>org.eclipse.xtext.xbase</artifactId>");
                _builder.newLine();
                _builder.append("\t\t\t");
                _builder.append("\t\t");
                _builder.append("<version>${xtextVersion}</version>");
                _builder.newLine();
                _builder.append("\t\t\t");
                _builder.append("\t");
                _builder.append("</dependency>");
                _builder.newLine();
                _builder.append("\t\t\t");
                _builder.append("\t");
                _builder.append("<dependency>");
                _builder.newLine();
                _builder.append("\t\t\t");
                _builder.append("\t\t");
                _builder.append("<groupId>org.eclipse.xtext</groupId>");
                _builder.newLine();
                _builder.append("\t\t\t");
                _builder.append("\t\t");
                _builder.append("<artifactId>xtext-antlr-generator</artifactId>");
                _builder.newLine();
                _builder.append("\t\t\t");
                _builder.append("\t\t");
                _builder.append("<version>");
                String _antlrGeneratorVersion = this.getConfig().getXtextVersion().getAntlrGeneratorVersion();
                _builder.append(_antlrGeneratorVersion, "\t\t\t\t\t");
                _builder.append("</version>");
                _builder.newLineIfNotEmpty();
                _builder.append("\t\t\t");
                _builder.append("\t");
                _builder.append("</dependency>");
                _builder.newLine();
                _builder.append("\t\t\t");
                _builder.append("</dependencies>");
                _builder.newLine();
            }
        }
        _builder.append("\t\t");
        _builder.append("</plugin>");
        _builder.newLine();
        _builder.append("\t\t");
        _builder.append("<plugin>");
        _builder.newLine();
        _builder.append("\t\t\t");
        _builder.append("<groupId>org.eclipse.xtend</groupId>");
        _builder.newLine();
        _builder.append("\t\t\t");
        _builder.append("<artifactId>xtend-maven-plugin</artifactId>");
        _builder.newLine();
        _builder.append("\t\t");
        _builder.append("</plugin>");
        _builder.newLine();
        _builder.newLine();
        _builder.append("\t\t");
        _builder.append("<plugin>");
        _builder.newLine();
        _builder.append("\t\t\t");
        _builder.append("<groupId>org.apache.maven.plugins</groupId>");
        _builder.newLine();
        _builder.append("\t\t\t");
        _builder.append("<artifactId>maven-clean-plugin</artifactId>");
        _builder.newLine();
        _builder.append("\t\t\t");
        _builder.append("<configuration>");
        _builder.newLine();
        _builder.append("\t\t\t\t");
        _builder.append("<filesets combine.children=\"append\">");
        _builder.newLine();
        {
            IdeProjectDescriptor _ideProject = this.getConfig().getIdeProject();
            UiProjectDescriptor _uiProject = this.getConfig().getUiProject();
            WebProjectDescriptor _webProject = this.getConfig().getWebProject();
            for (final ProjectDescriptor p : Collections.<ProjectDescriptor>unmodifiableList(CollectionLiterals.<ProjectDescriptor>newArrayList(this, _ideProject, _uiProject, _webProject))) {
                {
                    boolean _isEnabled = p.isEnabled();
                    if (_isEnabled) {
                        _builder.append("\t\t\t\t\t");
                        _builder.append("<fileset>");
                        _builder.newLine();
                        _builder.append("\t\t\t\t\t");
                        _builder.append("\t");
                        _builder.append("<directory>${basedir}/../");
                        String _name = p.getName();
                        _builder.append(_name, "\t\t\t\t\t\t");
                        _builder.append("/");
                        String _sourceFolder_3 = this.sourceFolder(Outlet.MAIN_SRC_GEN);
                        _builder.append(_sourceFolder_3, "\t\t\t\t\t\t");
                        _builder.append("/</directory>");
                        _builder.newLineIfNotEmpty();
                        _builder.append("\t\t\t\t\t");
                        _builder.append("\t");
                        _builder.append("<includes>");
                        _builder.newLine();
                        _builder.append("\t\t\t\t\t");
                        _builder.append("\t\t");
                        _builder.append("<include>**/*</include>");
                        _builder.newLine();
                        _builder.append("\t\t\t\t\t");
                        _builder.append("\t");
                        _builder.append("</includes>");
                        _builder.newLine();
                        _builder.append("\t\t\t\t\t");
                        _builder.append("</fileset>");
                        _builder.newLine();
                        {
                            if ((p instanceof TestedProjectDescriptor)) {
                                {
                                    boolean _isEnabled_1 = ((TestedProjectDescriptor) p).getTestProject().isEnabled();
                                    if (_isEnabled_1) {
                                        _builder.append("\t\t\t\t\t");
                                        _builder.append("<fileset>");
                                        _builder.newLine();
                                        _builder.append("\t\t\t\t\t");
                                        _builder.append("\t");
                                        _builder.append("<directory>${basedir}/../");
                                        String _xifexpression_1 = null;
                                        boolean _isInlined = ((TestedProjectDescriptor) p).getTestProject().isInlined();
                                        if (_isInlined) {
                                            _xifexpression_1 = ((TestedProjectDescriptor) p).getName();
                                        } else {
                                            _xifexpression_1 = ((TestedProjectDescriptor) p).getTestProject().getName();
                                        }
                                        _builder.append(_xifexpression_1, "\t\t\t\t\t\t");
                                        _builder.append("/");
                                        String _sourceFolder_4 = this.sourceFolder(Outlet.TEST_SRC_GEN);
                                        _builder.append(_sourceFolder_4, "\t\t\t\t\t\t");
                                        _builder.append("/</directory>");
                                        _builder.newLineIfNotEmpty();
                                        _builder.append("\t\t\t\t\t");
                                        _builder.append("\t");
                                        _builder.append("<includes>");
                                        _builder.newLine();
                                        _builder.append("\t\t\t\t\t");
                                        _builder.append("\t\t");
                                        _builder.append("<include>**/*</include>");
                                        _builder.newLine();
                                        _builder.append("\t\t\t\t\t");
                                        _builder.append("\t");
                                        _builder.append("</includes>");
                                        _builder.newLine();
                                        _builder.append("\t\t\t\t\t");
                                        _builder.append("</fileset>");
                                        _builder.newLine();
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
        _builder.append("\t\t\t\t\t");
        _builder.append("<fileset>");
        _builder.newLine();
        _builder.append("\t\t\t\t\t\t");
        _builder.append("<directory>${basedir}/model/generated/</directory>");
        _builder.newLine();
        _builder.append("\t\t\t\t\t");
        _builder.append("</fileset>");
        _builder.newLine();
        _builder.append("\t\t\t\t");
        _builder.append("</filesets>");
        _builder.newLine();
        _builder.append("\t\t\t");
        _builder.append("</configuration>");
        _builder.newLine();
        _builder.append("\t\t");
        _builder.append("</plugin>");
        _builder.newLine();
        {
            boolean _isEclipsePluginProject_1 = this.isEclipsePluginProject();
            boolean _not = (!_isEclipsePluginProject_1);
            if (_not) {
                _builder.append("\t\t");
                _builder.append("<plugin>");
                _builder.newLine();
                _builder.append("\t\t");
                _builder.append("\t");
                _builder.append("<groupId>org.codehaus.mojo</groupId>");
                _builder.newLine();
                _builder.append("\t\t");
                _builder.append("\t");
                _builder.append("<artifactId>build-helper-maven-plugin</artifactId>");
                _builder.newLine();
                _builder.append("\t\t");
                _builder.append("\t");
                _builder.append("<version>1.9.1</version>");
                _builder.newLine();
                _builder.append("\t\t");
                _builder.append("\t");
                _builder.append("<executions>");
                _builder.newLine();
                _builder.append("\t\t");
                _builder.append("\t\t");
                _builder.append("<execution>");
                _builder.newLine();
                _builder.append("\t\t");
                _builder.append("\t\t\t");
                _builder.append("<id>add-source</id>");
                _builder.newLine();
                _builder.append("\t\t");
                _builder.append("\t\t\t");
                _builder.append("<phase>initialize</phase>");
                _builder.newLine();
                _builder.append("\t\t");
                _builder.append("\t\t\t");
                _builder.append("<goals>");
                _builder.newLine();
                _builder.append("\t\t");
                _builder.append("\t\t\t\t");
                _builder.append("<goal>add-source</goal>");
                _builder.newLine();
                _builder.append("\t\t");
                _builder.append("\t\t\t\t");
                _builder.append("<goal>add-resource</goal>");
                _builder.newLine();
                _builder.append("\t\t");
                _builder.append("\t\t\t");
                _builder.append("</goals>");
                _builder.newLine();
                _builder.append("\t\t");
                _builder.append("\t\t\t");
                _builder.append("<configuration>");
                _builder.newLine();
                _builder.append("\t\t");
                _builder.append("\t\t\t\t");
                _builder.append("<sources>");
                _builder.newLine();
                _builder.append("\t\t");
                _builder.append("\t\t\t\t\t");
                _builder.append("<source>");
                String _sourceFolder_5 = this.sourceFolder(Outlet.MAIN_SRC_GEN);
                _builder.append(_sourceFolder_5, "\t\t\t\t\t\t\t");
                _builder.append("</source>");
                _builder.newLineIfNotEmpty();
                _builder.append("\t\t");
                _builder.append("\t\t\t\t");
                _builder.append("</sources>");
                _builder.newLine();
                _builder.append("\t\t");
                _builder.append("\t\t\t\t");
                _builder.append("<resources>");
                _builder.newLine();
                _builder.append("\t\t");
                _builder.append("\t\t\t\t\t");
                _builder.append("<resource>");
                _builder.newLine();
                _builder.append("\t\t");
                _builder.append("\t\t\t\t\t\t");
                _builder.append("<directory>");
                String _sourceFolder_6 = this.sourceFolder(Outlet.MAIN_SRC_GEN);
                _builder.append(_sourceFolder_6, "\t\t\t\t\t\t\t\t");
                _builder.append("</directory>");
                _builder.newLineIfNotEmpty();
                _builder.append("\t\t");
                _builder.append("\t\t\t\t\t\t");
                _builder.append("<excludes>");
                _builder.newLine();
                _builder.append("\t\t");
                _builder.append("\t\t\t\t\t\t\t");
                _builder.append("<exclude>**/*.java</exclude>");
                _builder.newLine();
                _builder.append("\t\t");
                _builder.append("\t\t\t\t\t\t\t");
                _builder.append("<exclude>**/*.g</exclude>");
                _builder.newLine();
                _builder.append("\t\t");
                _builder.append("\t\t\t\t\t\t");
                _builder.append("</excludes>");
                _builder.newLine();
                _builder.append("\t\t");
                _builder.append("\t\t\t\t\t");
                _builder.append("</resource>");
                _builder.newLine();
                _builder.append("\t\t");
                _builder.append("\t\t\t\t");
                _builder.append("</resources>");
                _builder.newLine();
                _builder.append("\t\t");
                _builder.append("\t\t\t");
                _builder.append("</configuration>");
                _builder.newLine();
                _builder.append("\t\t");
                _builder.append("\t\t");
                _builder.append("</execution>");
                _builder.newLine();
                {
                    boolean _isInlined_1 = this.testProject.isInlined();
                    if (_isInlined_1) {
                        _builder.append("\t\t");
                        _builder.append("\t\t");
                        _builder.append("<execution>");
                        _builder.newLine();
                        _builder.append("\t\t");
                        _builder.append("\t\t");
                        _builder.append("\t");
                        _builder.append("<id>add-test-source</id>");
                        _builder.newLine();
                        _builder.append("\t\t");
                        _builder.append("\t\t");
                        _builder.append("\t");
                        _builder.append("<phase>initialize</phase>");
                        _builder.newLine();
                        _builder.append("\t\t");
                        _builder.append("\t\t");
                        _builder.append("\t");
                        _builder.append("<goals>");
                        _builder.newLine();
                        _builder.append("\t\t");
                        _builder.append("\t\t");
                        _builder.append("\t\t");
                        _builder.append("<goal>add-test-source</goal>");
                        _builder.newLine();
                        _builder.append("\t\t");
                        _builder.append("\t\t");
                        _builder.append("\t\t");
                        _builder.append("<goal>add-test-resource</goal>");
                        _builder.newLine();
                        _builder.append("\t\t");
                        _builder.append("\t\t");
                        _builder.append("\t");
                        _builder.append("</goals>");
                        _builder.newLine();
                        _builder.append("\t\t");
                        _builder.append("\t\t");
                        _builder.append("\t");
                        _builder.append("<configuration>");
                        _builder.newLine();
                        _builder.append("\t\t");
                        _builder.append("\t\t");
                        _builder.append("\t\t");
                        _builder.append("<sources>");
                        _builder.newLine();
                        _builder.append("\t\t");
                        _builder.append("\t\t");
                        _builder.append("\t\t\t");
                        _builder.append("<source>");
                        String _sourceFolder_7 = this.sourceFolder(Outlet.TEST_SRC_GEN);
                        _builder.append(_sourceFolder_7, "\t\t\t\t\t\t\t");
                        _builder.append("</source>");
                        _builder.newLineIfNotEmpty();
                        _builder.append("\t\t");
                        _builder.append("\t\t");
                        _builder.append("\t\t");
                        _builder.append("</sources>");
                        _builder.newLine();
                        _builder.append("\t\t");
                        _builder.append("\t\t");
                        _builder.append("\t\t");
                        _builder.append("<resources>");
                        _builder.newLine();
                        _builder.append("\t\t");
                        _builder.append("\t\t");
                        _builder.append("\t\t\t");
                        _builder.append("<resource>");
                        _builder.newLine();
                        _builder.append("\t\t");
                        _builder.append("\t\t");
                        _builder.append("\t\t\t\t");
                        _builder.append("<directory>");
                        String _sourceFolder_8 = this.sourceFolder(Outlet.TEST_SRC_GEN);
                        _builder.append(_sourceFolder_8, "\t\t\t\t\t\t\t\t");
                        _builder.append("</directory>");
                        _builder.newLineIfNotEmpty();
                        _builder.append("\t\t");
                        _builder.append("\t\t");
                        _builder.append("\t\t\t\t");
                        _builder.append("<excludes>");
                        _builder.newLine();
                        _builder.append("\t\t");
                        _builder.append("\t\t");
                        _builder.append("\t\t\t\t\t");
                        _builder.append("<exclude>**/*.java</exclude>");
                        _builder.newLine();
                        _builder.append("\t\t");
                        _builder.append("\t\t");
                        _builder.append("\t\t\t\t");
                        _builder.append("</excludes>");
                        _builder.newLine();
                        _builder.append("\t\t");
                        _builder.append("\t\t");
                        _builder.append("\t\t\t");
                        _builder.append("</resource>");
                        _builder.newLine();
                        _builder.append("\t\t");
                        _builder.append("\t\t");
                        _builder.append("\t\t");
                        _builder.append("</resources>");
                        _builder.newLine();
                        _builder.append("\t\t");
                        _builder.append("\t\t");
                        _builder.append("\t");
                        _builder.append("</configuration>");
                        _builder.newLine();
                        _builder.append("\t\t");
                        _builder.append("\t\t");
                        _builder.append("</execution>");
                        _builder.newLine();
                    }
                }
                _builder.append("\t\t");
                _builder.append("\t");
                _builder.append("</executions>");
                _builder.newLine();
                _builder.append("\t\t");
                _builder.append("</plugin>");
                _builder.newLine();
                {
                    boolean _isPlainMavenBuild = this.isPlainMavenBuild();
                    if (_isPlainMavenBuild) {
                        _builder.append("\t\t");
                        _builder.append("<plugin>");
                        _builder.newLine();
                        _builder.append("\t\t");
                        _builder.append("\t");
                        _builder.append("<artifactId>maven-assembly-plugin</artifactId>");
                        _builder.newLine();
                        _builder.append("\t\t");
                        _builder.append("\t");
                        _builder.append("<version>3.1.0</version>");
                        _builder.newLine();
                        _builder.append("\t\t");
                        _builder.append("\t");
                        _builder.append("<configuration>");
                        _builder.newLine();
                        _builder.append("\t\t");
                        _builder.append("\t\t");
                        _builder.append("<descriptors>");
                        _builder.newLine();
                        _builder.append("\t\t");
                        _builder.append("\t\t\t");
                        _builder.append("<descriptor>jar-with-ecore-model.xml</descriptor>");
                        _builder.newLine();
                        _builder.append("\t\t");
                        _builder.append("\t\t");
                        _builder.append("</descriptors>");
                        _builder.newLine();
                        _builder.append("\t\t");
                        _builder.append("\t\t");
                        _builder.append("<appendAssemblyId>false</appendAssemblyId>");
                        _builder.newLine();
                        _builder.append("\t\t");
                        _builder.append("\t");
                        _builder.append("</configuration>");
                        _builder.newLine();
                        _builder.append("\t\t");
                        _builder.append("\t");
                        _builder.append("<executions>");
                        _builder.newLine();
                        _builder.append("\t\t");
                        _builder.append("\t\t");
                        _builder.append("<execution>");
                        _builder.newLine();
                        _builder.append("\t\t");
                        _builder.append("\t\t\t");
                        _builder.append("<id>make-assembly</id>");
                        _builder.newLine();
                        _builder.append("\t\t");
                        _builder.append("\t\t\t");
                        _builder.append("<phase>package</phase>");
                        _builder.newLine();
                        _builder.append("\t\t");
                        _builder.append("\t\t\t");
                        _builder.append("<goals>");
                        _builder.newLine();
                        _builder.append("\t\t");
                        _builder.append("\t\t\t\t");
                        _builder.append("<goal>single</goal>");
                        _builder.newLine();
                        _builder.append("\t\t");
                        _builder.append("\t\t\t");
                        _builder.append("</goals>");
                        _builder.newLine();
                        _builder.append("\t\t");
                        _builder.append("\t\t");
                        _builder.append("</execution>");
                        _builder.newLine();
                        _builder.append("\t\t");
                        _builder.append("\t");
                        _builder.append("</executions>");
                        _builder.newLine();
                        _builder.append("\t\t");
                        _builder.append("</plugin>");
                        _builder.newLine();
                    }
                }
            }
        }
        _builder.append("\t");
        _builder.append("</plugins>");
        _builder.newLine();
        _builder.append("\t");
        _builder.append("<pluginManagement>");
        _builder.newLine();
        _builder.append("\t\t");
        _builder.append("<plugins>");
        _builder.newLine();
        _builder.append("\t\t\t");
        _builder.append("<plugin>");
        _builder.newLine();
        _builder.append("\t\t\t\t");
        _builder.append("<groupId>org.eclipse.m2e</groupId>");
        _builder.newLine();
        _builder.append("\t\t\t\t");
        _builder.append("<artifactId>lifecycle-mapping</artifactId>");
        _builder.newLine();
        _builder.append("\t\t\t\t");
        _builder.append("<version>1.0.0</version>");
        _builder.newLine();
        _builder.append("\t\t\t\t");
        _builder.append("<configuration>");
        _builder.newLine();
        _builder.append("\t\t\t\t\t");
        _builder.append("<lifecycleMappingMetadata>");
        _builder.newLine();
        _builder.append("\t\t\t\t\t\t");
        _builder.append("<pluginExecutions>");
        _builder.newLine();
        _builder.append("\t\t\t\t\t\t\t");
        _builder.append("<pluginExecution>");
        _builder.newLine();
        _builder.append("\t\t\t\t\t\t\t\t");
        _builder.append("<pluginExecutionFilter>");
        _builder.newLine();
        _builder.append("\t\t\t\t\t\t\t\t\t");
        _builder.append("<groupId>");
        _builder.newLine();
        _builder.append("\t\t\t\t\t\t\t\t\t\t");
        _builder.append("org.codehaus.mojo");
        _builder.newLine();
        _builder.append("\t\t\t\t\t\t\t\t\t");
        _builder.append("</groupId>");
        _builder.newLine();
        _builder.append("\t\t\t\t\t\t\t\t\t");
        _builder.append("<artifactId>");
        _builder.newLine();
        _builder.append("\t\t\t\t\t\t\t\t\t\t");
        _builder.append("exec-maven-plugin");
        _builder.newLine();
        _builder.append("\t\t\t\t\t\t\t\t\t");
        _builder.append("</artifactId>");
        _builder.newLine();
        _builder.append("\t\t\t\t\t\t\t\t\t");
        _builder.append("<versionRange>");
        _builder.newLine();
        _builder.append("\t\t\t\t\t\t\t\t\t\t");
        _builder.append("[1.2.1,)");
        _builder.newLine();
        _builder.append("\t\t\t\t\t\t\t\t\t");
        _builder.append("</versionRange>");
        _builder.newLine();
        _builder.append("\t\t\t\t\t\t\t\t\t");
        _builder.append("<goals>");
        _builder.newLine();
        _builder.append("\t\t\t\t\t\t\t\t\t\t");
        _builder.append("<goal>java</goal>");
        _builder.newLine();
        _builder.append("\t\t\t\t\t\t\t\t\t");
        _builder.append("</goals>");
        _builder.newLine();
        _builder.append("\t\t\t\t\t\t\t\t");
        _builder.append("</pluginExecutionFilter>");
        _builder.newLine();
        _builder.append("\t\t\t\t\t\t\t\t");
        _builder.append("<action>");
        _builder.newLine();
        _builder.append("\t\t\t\t\t\t\t\t\t");
        _builder.append("<ignore></ignore>");
        _builder.newLine();
        _builder.append("\t\t\t\t\t\t\t\t");
        _builder.append("</action>");
        _builder.newLine();
        _builder.append("\t\t\t\t\t\t\t");
        _builder.append("</pluginExecution>");
        _builder.newLine();
        _builder.append("\t\t\t\t\t\t");
        _builder.append("</pluginExecutions>");
        _builder.newLine();
        _builder.append("\t\t\t\t\t");
        _builder.append("</lifecycleMappingMetadata>");
        _builder.newLine();
        _builder.append("\t\t\t\t");
        _builder.append("</configuration>");
        _builder.newLine();
        _builder.append("\t\t\t");
        _builder.append("</plugin>");
        _builder.newLine();
        _builder.append("\t\t");
        _builder.append("</plugins>");
        _builder.newLine();
        _builder.append("\t");
        _builder.append("</pluginManagement>");
        _builder.newLine();
        _builder.append("</build>");
        _builder.newLine();
        it.setBuildSection(_builder.toString());
    };
    return ObjectExtensions.<PomFile>operator_doubleArrow(_pom, _function);
}
Also used : UiProjectDescriptor(org.eclipse.xtext.xtext.wizard.UiProjectDescriptor) RuntimeTestProjectDescriptor(org.eclipse.xtext.xtext.wizard.RuntimeTestProjectDescriptor) WebProjectDescriptor(org.eclipse.xtext.xtext.wizard.WebProjectDescriptor) TestProjectDescriptor(org.eclipse.xtext.xtext.wizard.TestProjectDescriptor) TestedProjectDescriptor(org.eclipse.xtext.xtext.wizard.TestedProjectDescriptor) ProjectDescriptor(org.eclipse.xtext.xtext.wizard.ProjectDescriptor) IdeProjectDescriptor(org.eclipse.xtext.xtext.wizard.IdeProjectDescriptor) UiProjectDescriptor(org.eclipse.xtext.xtext.wizard.UiProjectDescriptor) PomFile(org.eclipse.xtext.xtext.wizard.PomFile) StringConcatenation(org.eclipse.xtend2.lib.StringConcatenation) WebProjectDescriptor(org.eclipse.xtext.xtext.wizard.WebProjectDescriptor) IdeProjectDescriptor(org.eclipse.xtext.xtext.wizard.IdeProjectDescriptor) TestedProjectDescriptor(org.eclipse.xtext.xtext.wizard.TestedProjectDescriptor)

Example 4 with ProjectDescriptor

use of org.eclipse.xtext.xtext.wizard.ProjectDescriptor in project xtext-core by eclipse.

the class UiProjectDescriptor method getUpstreamProjects.

@Override
public Set<? extends ProjectDescriptor> getUpstreamProjects() {
    RuntimeProjectDescriptor _runtimeProject = this.getConfig().getRuntimeProject();
    IdeProjectDescriptor _ideProject = this.getConfig().getIdeProject();
    final Function1<ProjectDescriptor, Boolean> _function = (ProjectDescriptor it) -> {
        return Boolean.valueOf(it.isEnabled());
    };
    return IterableExtensions.toSet(IterableExtensions.filter(Collections.<ProjectDescriptor>unmodifiableList(CollectionLiterals.<ProjectDescriptor>newArrayList(_runtimeProject, _ideProject)), _function));
}
Also used : ProjectDescriptor(org.eclipse.xtext.xtext.wizard.ProjectDescriptor) TestProjectDescriptor(org.eclipse.xtext.xtext.wizard.TestProjectDescriptor) IdeProjectDescriptor(org.eclipse.xtext.xtext.wizard.IdeProjectDescriptor) RuntimeProjectDescriptor(org.eclipse.xtext.xtext.wizard.RuntimeProjectDescriptor) UiTestProjectDescriptor(org.eclipse.xtext.xtext.wizard.UiTestProjectDescriptor) TestedProjectDescriptor(org.eclipse.xtext.xtext.wizard.TestedProjectDescriptor) RuntimeProjectDescriptor(org.eclipse.xtext.xtext.wizard.RuntimeProjectDescriptor) IdeProjectDescriptor(org.eclipse.xtext.xtext.wizard.IdeProjectDescriptor)

Example 5 with ProjectDescriptor

use of org.eclipse.xtext.xtext.wizard.ProjectDescriptor in project xtext-core by eclipse.

the class ParentProjectDescriptor method pom.

@Override
public PomFile pom() {
    PomFile _pom = super.pom();
    final Procedure1<PomFile> _function = (PomFile it) -> {
        it.setPackaging("pom");
        StringConcatenation _builder = new StringConcatenation();
        _builder.append("<properties>");
        _builder.newLine();
        _builder.append("\t");
        _builder.append("<xtextVersion>");
        XtextVersion _xtextVersion = this.getConfig().getXtextVersion();
        _builder.append(_xtextVersion, "\t");
        _builder.append("</xtextVersion>");
        _builder.newLineIfNotEmpty();
        _builder.append("\t");
        _builder.append("<project.build.sourceEncoding>");
        Charset _encoding = this.getConfig().getEncoding();
        _builder.append(_encoding, "\t");
        _builder.append("</project.build.sourceEncoding>");
        _builder.newLineIfNotEmpty();
        _builder.append("\t");
        _builder.append("<maven.compiler.source>");
        String _javaVersion = this.getJavaVersion();
        _builder.append(_javaVersion, "\t");
        _builder.append("</maven.compiler.source>");
        _builder.newLineIfNotEmpty();
        _builder.append("\t");
        _builder.append("<maven.compiler.target>");
        String _javaVersion_1 = this.getJavaVersion();
        _builder.append(_javaVersion_1, "\t");
        _builder.append("</maven.compiler.target>");
        _builder.newLineIfNotEmpty();
        {
            boolean _needsTychoBuild = this.getConfig().needsTychoBuild();
            if (_needsTychoBuild) {
                _builder.append("\t");
                _builder.append("<!-- Tycho settings -->");
                _builder.newLine();
                _builder.append("\t");
                _builder.append("<tycho-version>1.1.0</tycho-version>");
                _builder.newLine();
                _builder.append("\t");
                _builder.append("<!-- Define overridable properties for tycho-surefire-plugin -->");
                _builder.newLine();
                _builder.append("\t");
                _builder.append("<platformSystemProperties></platformSystemProperties>");
                _builder.newLine();
                _builder.append("\t");
                _builder.append("<moduleProperties></moduleProperties>");
                _builder.newLine();
                _builder.append("\t");
                _builder.append("<systemProperties></systemProperties>");
                _builder.newLine();
                _builder.append("\t");
                _builder.append("<tycho.testArgLine></tycho.testArgLine>");
                _builder.newLine();
            }
        }
        _builder.append("</properties>");
        _builder.newLine();
        _builder.append("<modules>");
        _builder.newLine();
        {
            final Function1<ProjectDescriptor, Boolean> _function_1 = (ProjectDescriptor it_1) -> {
                return Boolean.valueOf(((!Objects.equal(it_1, this)) && it_1.isPartOfMavenBuild()));
            };
            Iterable<ProjectDescriptor> _filter = IterableExtensions.<ProjectDescriptor>filter(this.getConfig().getEnabledProjects(), _function_1);
            for (final ProjectDescriptor p : _filter) {
                _builder.append("\t");
                _builder.append("<module>");
                {
                    ProjectLayout _projectLayout = this.getConfig().getProjectLayout();
                    boolean _equals = Objects.equal(_projectLayout, ProjectLayout.FLAT);
                    if (_equals) {
                        _builder.append("../");
                    }
                }
                String _name = p.getName();
                _builder.append(_name, "\t");
                _builder.append("</module>");
                _builder.newLineIfNotEmpty();
            }
        }
        _builder.append("</modules>");
        _builder.newLine();
        _builder.append("<build>");
        _builder.newLine();
        {
            boolean _needsTychoBuild_1 = this.getConfig().needsTychoBuild();
            if (_needsTychoBuild_1) {
                _builder.append("\t");
                _builder.append("<plugins>");
                _builder.newLine();
                _builder.append("\t");
                _builder.append("\t");
                _builder.append("<plugin>");
                _builder.newLine();
                _builder.append("\t");
                _builder.append("\t\t");
                _builder.append("<groupId>org.eclipse.tycho</groupId>");
                _builder.newLine();
                _builder.append("\t");
                _builder.append("\t\t");
                _builder.append("<artifactId>tycho-maven-plugin</artifactId>");
                _builder.newLine();
                _builder.append("\t");
                _builder.append("\t\t");
                _builder.append("<version>${tycho-version}</version>");
                _builder.newLine();
                _builder.append("\t");
                _builder.append("\t\t");
                _builder.append("<extensions>true</extensions>");
                _builder.newLine();
                _builder.append("\t");
                _builder.append("\t");
                _builder.append("</plugin>");
                _builder.newLine();
                {
                    boolean _isEnabled = this.getConfig().getP2Project().isEnabled();
                    if (_isEnabled) {
                        _builder.append("\t");
                        _builder.append("\t");
                        _builder.append("<plugin>");
                        _builder.newLine();
                        _builder.append("\t");
                        _builder.append("\t");
                        _builder.append("\t");
                        _builder.append("<groupId>org.eclipse.tycho</groupId>");
                        _builder.newLine();
                        _builder.append("\t");
                        _builder.append("\t");
                        _builder.append("\t");
                        _builder.append("<artifactId>tycho-source-plugin</artifactId>");
                        _builder.newLine();
                        _builder.append("\t");
                        _builder.append("\t");
                        _builder.append("\t");
                        _builder.append("<version>${tycho-version}</version>");
                        _builder.newLine();
                        _builder.append("\t");
                        _builder.append("\t");
                        _builder.append("\t");
                        _builder.append("<executions>");
                        _builder.newLine();
                        _builder.append("\t");
                        _builder.append("\t");
                        _builder.append("\t\t");
                        _builder.append("<execution>");
                        _builder.newLine();
                        _builder.append("\t");
                        _builder.append("\t");
                        _builder.append("\t\t\t");
                        _builder.append("<id>plugin-source</id>");
                        _builder.newLine();
                        _builder.append("\t");
                        _builder.append("\t");
                        _builder.append("\t\t\t");
                        _builder.append("<goals>");
                        _builder.newLine();
                        _builder.append("\t");
                        _builder.append("\t");
                        _builder.append("\t\t\t\t");
                        _builder.append("<goal>plugin-source</goal>");
                        _builder.newLine();
                        _builder.append("\t");
                        _builder.append("\t");
                        _builder.append("\t\t\t");
                        _builder.append("</goals>");
                        _builder.newLine();
                        _builder.append("\t");
                        _builder.append("\t");
                        _builder.append("\t\t");
                        _builder.append("</execution>");
                        _builder.newLine();
                        _builder.append("\t");
                        _builder.append("\t");
                        _builder.append("\t");
                        _builder.append("</executions>");
                        _builder.newLine();
                        _builder.append("\t");
                        _builder.append("\t");
                        _builder.append("</plugin>");
                        _builder.newLine();
                        _builder.append("\t");
                        _builder.append("\t");
                        _builder.append("<plugin>");
                        _builder.newLine();
                        _builder.append("\t");
                        _builder.append("\t");
                        _builder.append("\t");
                        _builder.append("<groupId>org.eclipse.tycho.extras</groupId>");
                        _builder.newLine();
                        _builder.append("\t");
                        _builder.append("\t");
                        _builder.append("\t");
                        _builder.append("<artifactId>tycho-source-feature-plugin</artifactId>");
                        _builder.newLine();
                        _builder.append("\t");
                        _builder.append("\t");
                        _builder.append("\t");
                        _builder.append("<version>${tycho-version}</version>");
                        _builder.newLine();
                        _builder.append("\t");
                        _builder.append("\t");
                        _builder.append("\t");
                        _builder.append("<executions>");
                        _builder.newLine();
                        _builder.append("\t");
                        _builder.append("\t");
                        _builder.append("\t\t");
                        _builder.append("<execution>");
                        _builder.newLine();
                        _builder.append("\t");
                        _builder.append("\t");
                        _builder.append("\t\t\t");
                        _builder.append("<id>source-feature</id>");
                        _builder.newLine();
                        _builder.append("\t");
                        _builder.append("\t");
                        _builder.append("\t\t\t");
                        _builder.append("<phase>package</phase>");
                        _builder.newLine();
                        _builder.append("\t");
                        _builder.append("\t");
                        _builder.append("\t\t\t");
                        _builder.append("<goals>");
                        _builder.newLine();
                        _builder.append("\t");
                        _builder.append("\t");
                        _builder.append("\t\t\t\t");
                        _builder.append("<goal>source-feature</goal>");
                        _builder.newLine();
                        _builder.append("\t");
                        _builder.append("\t");
                        _builder.append("\t\t\t");
                        _builder.append("</goals>");
                        _builder.newLine();
                        _builder.append("\t");
                        _builder.append("\t");
                        _builder.append("\t\t");
                        _builder.append("</execution>");
                        _builder.newLine();
                        _builder.append("\t");
                        _builder.append("\t");
                        _builder.append("\t");
                        _builder.append("</executions>");
                        _builder.newLine();
                        _builder.append("\t");
                        _builder.append("\t");
                        _builder.append("</plugin>");
                        _builder.newLine();
                        _builder.append("\t");
                        _builder.append("\t");
                        _builder.append("<plugin>");
                        _builder.newLine();
                        _builder.append("\t");
                        _builder.append("\t");
                        _builder.append("\t");
                        _builder.append("<groupId>org.eclipse.tycho</groupId>");
                        _builder.newLine();
                        _builder.append("\t");
                        _builder.append("\t");
                        _builder.append("\t");
                        _builder.append("<artifactId>tycho-p2-plugin</artifactId>");
                        _builder.newLine();
                        _builder.append("\t");
                        _builder.append("\t");
                        _builder.append("\t");
                        _builder.append("<version>${tycho-version}</version>");
                        _builder.newLine();
                        _builder.append("\t");
                        _builder.append("\t");
                        _builder.append("\t");
                        _builder.append("<executions>");
                        _builder.newLine();
                        _builder.append("\t");
                        _builder.append("\t");
                        _builder.append("\t\t");
                        _builder.append("<execution>");
                        _builder.newLine();
                        _builder.append("\t");
                        _builder.append("\t");
                        _builder.append("\t\t\t");
                        _builder.append("<id>attach-p2-metadata</id>");
                        _builder.newLine();
                        _builder.append("\t");
                        _builder.append("\t");
                        _builder.append("\t\t\t");
                        _builder.append("<phase>package</phase>");
                        _builder.newLine();
                        _builder.append("\t");
                        _builder.append("\t");
                        _builder.append("\t\t\t");
                        _builder.append("<goals>");
                        _builder.newLine();
                        _builder.append("\t");
                        _builder.append("\t");
                        _builder.append("\t\t\t\t");
                        _builder.append("<goal>p2-metadata</goal>");
                        _builder.newLine();
                        _builder.append("\t");
                        _builder.append("\t");
                        _builder.append("\t\t\t");
                        _builder.append("</goals>");
                        _builder.newLine();
                        _builder.append("\t");
                        _builder.append("\t");
                        _builder.append("\t\t");
                        _builder.append("</execution>");
                        _builder.newLine();
                        _builder.append("\t");
                        _builder.append("\t");
                        _builder.append("\t");
                        _builder.append("</executions>");
                        _builder.newLine();
                        _builder.append("\t");
                        _builder.append("\t");
                        _builder.append("</plugin>");
                        _builder.newLine();
                    }
                }
                _builder.append("\t");
                _builder.append("\t");
                _builder.append("<plugin>");
                _builder.newLine();
                _builder.append("\t");
                _builder.append("\t\t");
                _builder.append("<groupId>org.eclipse.tycho</groupId>");
                _builder.newLine();
                _builder.append("\t");
                _builder.append("\t\t");
                _builder.append("<artifactId>target-platform-configuration</artifactId>");
                _builder.newLine();
                _builder.append("\t");
                _builder.append("\t\t");
                _builder.append("<version>${tycho-version}</version>");
                _builder.newLine();
                _builder.append("\t");
                _builder.append("\t\t");
                _builder.append("<configuration>");
                _builder.newLine();
                _builder.append("\t");
                _builder.append("\t\t\t");
                _builder.append("<target>");
                _builder.newLine();
                _builder.append("\t");
                _builder.append("\t\t\t\t");
                _builder.append("<artifact>");
                _builder.newLine();
                _builder.append("\t");
                _builder.append("\t\t\t\t\t");
                _builder.append("<groupId>");
                String _baseName = this.getConfig().getBaseName();
                _builder.append(_baseName, "\t\t\t\t\t\t");
                _builder.append("</groupId>");
                _builder.newLineIfNotEmpty();
                _builder.append("\t");
                _builder.append("\t\t\t\t\t");
                _builder.append("<artifactId>");
                String _name_1 = this.getConfig().getTargetPlatformProject().getName();
                _builder.append(_name_1, "\t\t\t\t\t\t");
                _builder.append("</artifactId>");
                _builder.newLineIfNotEmpty();
                _builder.append("\t");
                _builder.append("\t\t\t\t\t");
                _builder.append("<version>${project.version}</version>");
                _builder.newLine();
                _builder.append("\t");
                _builder.append("\t\t\t\t");
                _builder.append("</artifact>");
                _builder.newLine();
                _builder.append("\t");
                _builder.append("\t\t\t");
                _builder.append("</target>");
                _builder.newLine();
                _builder.append("\t");
                _builder.append("\t\t\t");
                _builder.append("<environments>");
                _builder.newLine();
                _builder.append("\t");
                _builder.append("\t\t\t\t");
                _builder.append("<environment>");
                _builder.newLine();
                _builder.append("\t");
                _builder.append("\t\t\t\t\t");
                _builder.append("<os>macosx</os>");
                _builder.newLine();
                _builder.append("\t");
                _builder.append("\t\t\t\t\t");
                _builder.append("<ws>cocoa</ws>");
                _builder.newLine();
                _builder.append("\t");
                _builder.append("\t\t\t\t\t");
                _builder.append("<arch>x86_64</arch>");
                _builder.newLine();
                _builder.append("\t");
                _builder.append("\t\t\t\t");
                _builder.append("</environment>");
                _builder.newLine();
                _builder.append("\t");
                _builder.append("\t\t\t\t");
                _builder.append("<environment>");
                _builder.newLine();
                _builder.append("\t");
                _builder.append("\t\t\t\t\t");
                _builder.append("<os>win32</os>");
                _builder.newLine();
                _builder.append("\t");
                _builder.append("\t\t\t\t\t");
                _builder.append("<ws>win32</ws>");
                _builder.newLine();
                _builder.append("\t");
                _builder.append("\t\t\t\t\t");
                _builder.append("<arch>x86_64</arch>");
                _builder.newLine();
                _builder.append("\t");
                _builder.append("\t\t\t\t");
                _builder.append("</environment>");
                _builder.newLine();
                _builder.append("\t");
                _builder.append("\t\t\t\t");
                _builder.append("<environment>");
                _builder.newLine();
                _builder.append("\t");
                _builder.append("\t\t\t\t\t");
                _builder.append("<os>linux</os>");
                _builder.newLine();
                _builder.append("\t");
                _builder.append("\t\t\t\t\t");
                _builder.append("<ws>gtk</ws>");
                _builder.newLine();
                _builder.append("\t");
                _builder.append("\t\t\t\t\t");
                _builder.append("<arch>x86_64</arch>");
                _builder.newLine();
                _builder.append("\t");
                _builder.append("\t\t\t\t");
                _builder.append("</environment>");
                _builder.newLine();
                _builder.append("\t");
                _builder.append("\t\t\t");
                _builder.append("</environments>");
                _builder.newLine();
                _builder.append("\t");
                _builder.append("\t\t");
                _builder.append("</configuration>");
                _builder.newLine();
                _builder.append("\t");
                _builder.append("\t");
                _builder.append("</plugin>");
                _builder.newLine();
                _builder.append("\t");
                _builder.append("</plugins>");
                _builder.newLine();
            }
        }
        _builder.append("\t");
        _builder.append("<pluginManagement>");
        _builder.newLine();
        _builder.append("\t\t");
        _builder.append("<plugins>");
        _builder.newLine();
        _builder.append("\t\t\t");
        _builder.append("<plugin>");
        _builder.newLine();
        _builder.append("\t\t\t\t");
        _builder.append("<groupId>org.eclipse.xtend</groupId>");
        _builder.newLine();
        _builder.append("\t\t\t\t");
        _builder.append("<artifactId>xtend-maven-plugin</artifactId>");
        _builder.newLine();
        _builder.append("\t\t\t\t");
        _builder.append("<version>${xtextVersion}</version>");
        _builder.newLine();
        _builder.append("\t\t\t\t");
        _builder.append("<executions>");
        _builder.newLine();
        _builder.append("\t\t\t\t\t");
        _builder.append("<execution>");
        _builder.newLine();
        _builder.append("\t\t\t\t\t\t");
        _builder.append("<goals>");
        _builder.newLine();
        _builder.append("\t\t\t\t\t\t\t");
        _builder.append("<goal>compile</goal>");
        _builder.newLine();
        _builder.append("\t\t\t\t\t\t\t");
        _builder.append("<goal>xtend-install-debug-info</goal>");
        _builder.newLine();
        _builder.append("\t\t\t\t\t\t\t");
        _builder.append("<goal>testCompile</goal>");
        _builder.newLine();
        _builder.append("\t\t\t\t\t\t\t");
        _builder.append("<goal>xtend-test-install-debug-info</goal>");
        _builder.newLine();
        _builder.append("\t\t\t\t\t\t");
        _builder.append("</goals>");
        _builder.newLine();
        _builder.append("\t\t\t\t\t");
        _builder.append("</execution>");
        _builder.newLine();
        _builder.append("\t\t\t\t");
        _builder.append("</executions>");
        _builder.newLine();
        _builder.append("\t\t\t\t");
        _builder.append("<configuration>");
        _builder.newLine();
        _builder.append("\t\t\t\t\t");
        _builder.append("<outputDirectory>${basedir}/");
        String _sourceFolder = this.sourceFolder(Outlet.MAIN_XTEND_GEN);
        _builder.append(_sourceFolder, "\t\t\t\t\t");
        _builder.append("</outputDirectory>");
        _builder.newLineIfNotEmpty();
        _builder.append("\t\t\t\t\t");
        _builder.append("<testOutputDirectory>${basedir}/");
        String _sourceFolder_1 = this.sourceFolder(Outlet.TEST_XTEND_GEN);
        _builder.append(_sourceFolder_1, "\t\t\t\t\t");
        _builder.append("</testOutputDirectory>");
        _builder.newLineIfNotEmpty();
        _builder.append("\t\t\t\t");
        _builder.append("</configuration>");
        _builder.newLine();
        _builder.append("\t\t\t");
        _builder.append("</plugin>");
        _builder.newLine();
        _builder.append("\t\t\t");
        _builder.append("<plugin>");
        _builder.newLine();
        _builder.append("\t\t\t\t");
        _builder.append("<groupId>org.apache.maven.plugins</groupId>");
        _builder.newLine();
        _builder.append("\t\t\t\t");
        _builder.append("<artifactId>maven-clean-plugin</artifactId>");
        _builder.newLine();
        _builder.append("\t\t\t\t");
        _builder.append("<version>2.5</version>");
        _builder.newLine();
        _builder.append("\t\t\t\t");
        _builder.append("<configuration>");
        _builder.newLine();
        _builder.append("\t\t\t\t\t");
        _builder.append("<filesets>");
        _builder.newLine();
        _builder.append("\t\t\t\t\t\t");
        _builder.append("<fileset>");
        _builder.newLine();
        {
            final Function1<Outlet, String> _function_2 = (Outlet it_1) -> {
                return this.sourceFolder(it_1);
            };
            Set<String> _set = IterableExtensions.<String>toSet(ListExtensions.<Outlet, String>map(Collections.<Outlet>unmodifiableList(CollectionLiterals.<Outlet>newArrayList(Outlet.MAIN_XTEND_GEN, Outlet.TEST_XTEND_GEN)), _function_2));
            for (final String dir : _set) {
                _builder.append("\t\t\t\t\t\t\t");
                _builder.append("<directory>${basedir}/");
                _builder.append(dir, "\t\t\t\t\t\t\t");
                _builder.append("</directory>");
                _builder.newLineIfNotEmpty();
                _builder.append("\t\t\t\t\t\t\t");
                _builder.append("<includes>");
                _builder.newLine();
                _builder.append("\t\t\t\t\t\t\t");
                _builder.append("\t");
                _builder.append("<include>**/*</include>");
                _builder.newLine();
                _builder.append("\t\t\t\t\t\t\t");
                _builder.append("</includes>");
                _builder.newLine();
            }
        }
        _builder.append("\t\t\t\t\t\t");
        _builder.append("</fileset>");
        _builder.newLine();
        _builder.append("\t\t\t\t\t");
        _builder.append("</filesets>");
        _builder.newLine();
        _builder.append("\t\t\t\t");
        _builder.append("</configuration>");
        _builder.newLine();
        _builder.append("\t\t\t");
        _builder.append("</plugin>");
        _builder.newLine();
        _builder.append("\t\t\t");
        _builder.append("<plugin>");
        _builder.newLine();
        _builder.append("\t\t\t\t");
        _builder.append("<groupId>org.eclipse.m2e</groupId>");
        _builder.newLine();
        _builder.append("\t\t\t\t");
        _builder.append("<artifactId>lifecycle-mapping</artifactId>");
        _builder.newLine();
        _builder.append("\t\t\t\t");
        _builder.append("<version>1.0.0</version>");
        _builder.newLine();
        _builder.append("\t\t\t\t");
        _builder.append("<configuration>");
        _builder.newLine();
        _builder.append("\t\t\t\t\t");
        _builder.append("<lifecycleMappingMetadata>");
        _builder.newLine();
        _builder.append("\t\t\t\t\t\t");
        _builder.append("<pluginExecutions>");
        _builder.newLine();
        _builder.append("\t\t\t\t\t\t\t");
        _builder.append("<pluginExecution>");
        _builder.newLine();
        _builder.append("\t\t\t\t\t\t\t\t");
        _builder.append("<pluginExecutionFilter>");
        _builder.newLine();
        _builder.append("\t\t\t\t\t\t\t\t\t");
        _builder.append("<groupId>");
        _builder.newLine();
        _builder.append("\t\t\t\t\t\t\t\t\t\t");
        _builder.append("org.apache.maven.plugins");
        _builder.newLine();
        _builder.append("\t\t\t\t\t\t\t\t\t");
        _builder.append("</groupId>");
        _builder.newLine();
        _builder.append("\t\t\t\t\t\t\t\t\t");
        _builder.append("<artifactId>");
        _builder.newLine();
        _builder.append("\t\t\t\t\t\t\t\t\t\t");
        _builder.append("maven-resources-plugin");
        _builder.newLine();
        _builder.append("\t\t\t\t\t\t\t\t\t");
        _builder.append("</artifactId>");
        _builder.newLine();
        _builder.append("\t\t\t\t\t\t\t\t\t");
        _builder.append("<versionRange>");
        _builder.newLine();
        _builder.append("\t\t\t\t\t\t\t\t\t\t");
        _builder.append("[2.4.3,)");
        _builder.newLine();
        _builder.append("\t\t\t\t\t\t\t\t\t");
        _builder.append("</versionRange>");
        _builder.newLine();
        _builder.append("\t\t\t\t\t\t\t\t\t");
        _builder.append("<goals>");
        _builder.newLine();
        _builder.append("\t\t\t\t\t\t\t\t\t\t");
        _builder.append("<goal>resources</goal>");
        _builder.newLine();
        _builder.append("\t\t\t\t\t\t\t\t\t\t");
        _builder.append("<goal>testResources</goal>");
        _builder.newLine();
        _builder.append("\t\t\t\t\t\t\t\t\t");
        _builder.append("</goals>");
        _builder.newLine();
        _builder.append("\t\t\t\t\t\t\t\t");
        _builder.append("</pluginExecutionFilter>");
        _builder.newLine();
        _builder.append("\t\t\t\t\t\t\t\t");
        _builder.append("<action>");
        _builder.newLine();
        _builder.append("\t\t\t\t\t\t\t\t\t");
        _builder.append("<ignore></ignore>");
        _builder.newLine();
        _builder.append("\t\t\t\t\t\t\t\t");
        _builder.append("</action>");
        _builder.newLine();
        _builder.append("\t\t\t\t\t\t\t");
        _builder.append("</pluginExecution>");
        _builder.newLine();
        _builder.append("\t\t\t\t\t\t\t");
        _builder.append("<pluginExecution>");
        _builder.newLine();
        _builder.append("\t\t\t\t\t\t\t\t");
        _builder.append("<pluginExecutionFilter>");
        _builder.newLine();
        _builder.append("\t\t\t\t\t\t\t\t\t");
        _builder.append("<groupId>");
        _builder.newLine();
        _builder.append("\t\t\t\t\t\t\t\t\t\t");
        _builder.append("org.codehaus.mojo");
        _builder.newLine();
        _builder.append("\t\t\t\t\t\t\t\t\t");
        _builder.append("</groupId>");
        _builder.newLine();
        _builder.append("\t\t\t\t\t\t\t\t\t");
        _builder.append("<artifactId>");
        _builder.newLine();
        _builder.append("\t\t\t\t\t\t\t\t\t\t");
        _builder.append("build-helper-maven-plugin");
        _builder.newLine();
        _builder.append("\t\t\t\t\t\t\t\t\t");
        _builder.append("</artifactId>");
        _builder.newLine();
        _builder.append("\t\t\t\t\t\t\t\t\t");
        _builder.append("<versionRange>");
        _builder.newLine();
        _builder.append("\t\t\t\t\t\t\t\t\t\t");
        _builder.append("[1.9.1,)");
        _builder.newLine();
        _builder.append("\t\t\t\t\t\t\t\t\t");
        _builder.append("</versionRange>");
        _builder.newLine();
        _builder.append("\t\t\t\t\t\t\t\t\t");
        _builder.append("<goals>");
        _builder.newLine();
        _builder.append("\t\t\t\t\t\t\t\t\t\t");
        _builder.append("<goal>add-resource</goal>");
        _builder.newLine();
        _builder.append("\t\t\t\t\t\t\t\t\t\t");
        _builder.append("<goal>add-source</goal>");
        _builder.newLine();
        _builder.append("\t\t\t\t\t\t\t\t\t\t");
        _builder.append("<goal>add-test-resource</goal>");
        _builder.newLine();
        _builder.append("\t\t\t\t\t\t\t\t\t\t");
        _builder.append("<goal>add-test-source</goal>");
        _builder.newLine();
        _builder.append("\t\t\t\t\t\t\t\t\t");
        _builder.append("</goals>");
        _builder.newLine();
        _builder.append("\t\t\t\t\t\t\t\t");
        _builder.append("</pluginExecutionFilter>");
        _builder.newLine();
        _builder.append("\t\t\t\t\t\t\t\t");
        _builder.append("<action>");
        _builder.newLine();
        _builder.append("\t\t\t\t\t\t\t\t\t");
        _builder.append("<ignore></ignore>");
        _builder.newLine();
        _builder.append("\t\t\t\t\t\t\t\t");
        _builder.append("</action>");
        _builder.newLine();
        _builder.append("\t\t\t\t\t\t\t");
        _builder.append("</pluginExecution>");
        _builder.newLine();
        {
            boolean _needsTychoBuild_2 = this.getConfig().needsTychoBuild();
            if (_needsTychoBuild_2) {
                _builder.append("\t\t\t\t\t\t\t");
                _builder.append("<pluginExecution>");
                _builder.newLine();
                _builder.append("\t\t\t\t\t\t\t");
                _builder.append("\t");
                _builder.append("<pluginExecutionFilter>");
                _builder.newLine();
                _builder.append("\t\t\t\t\t\t\t");
                _builder.append("\t\t");
                _builder.append("<groupId>");
                _builder.newLine();
                _builder.append("\t\t\t\t\t\t\t");
                _builder.append("\t\t\t");
                _builder.append("org.eclipse.tycho");
                _builder.newLine();
                _builder.append("\t\t\t\t\t\t\t");
                _builder.append("\t\t");
                _builder.append("</groupId>");
                _builder.newLine();
                _builder.append("\t\t\t\t\t\t\t");
                _builder.append("\t\t");
                _builder.append("<artifactId>");
                _builder.newLine();
                _builder.append("\t\t\t\t\t\t\t");
                _builder.append("\t\t\t");
                _builder.append("tycho-compiler-plugin");
                _builder.newLine();
                _builder.append("\t\t\t\t\t\t\t");
                _builder.append("\t\t");
                _builder.append("</artifactId>");
                _builder.newLine();
                _builder.append("\t\t\t\t\t\t\t");
                _builder.append("\t\t");
                _builder.append("<versionRange>");
                _builder.newLine();
                _builder.append("\t\t\t\t\t\t\t");
                _builder.append("\t\t\t");
                _builder.append("[0.23.1,)");
                _builder.newLine();
                _builder.append("\t\t\t\t\t\t\t");
                _builder.append("\t\t");
                _builder.append("</versionRange>");
                _builder.newLine();
                _builder.append("\t\t\t\t\t\t\t");
                _builder.append("\t\t");
                _builder.append("<goals>");
                _builder.newLine();
                _builder.append("\t\t\t\t\t\t\t");
                _builder.append("\t\t\t");
                _builder.append("<goal>compile</goal>");
                _builder.newLine();
                _builder.append("\t\t\t\t\t\t\t");
                _builder.append("\t\t");
                _builder.append("</goals>");
                _builder.newLine();
                _builder.append("\t\t\t\t\t\t\t");
                _builder.append("\t");
                _builder.append("</pluginExecutionFilter>");
                _builder.newLine();
                _builder.append("\t\t\t\t\t\t\t");
                _builder.append("\t");
                _builder.append("<action>");
                _builder.newLine();
                _builder.append("\t\t\t\t\t\t\t");
                _builder.append("\t\t");
                _builder.append("<ignore></ignore>");
                _builder.newLine();
                _builder.append("\t\t\t\t\t\t\t");
                _builder.append("\t");
                _builder.append("</action>");
                _builder.newLine();
                _builder.append("\t\t\t\t\t\t\t");
                _builder.append("</pluginExecution>");
                _builder.newLine();
                _builder.append("\t\t\t\t\t\t\t");
                _builder.append("<pluginExecution>");
                _builder.newLine();
                _builder.append("\t\t\t\t\t\t\t");
                _builder.append("\t");
                _builder.append("<pluginExecutionFilter>");
                _builder.newLine();
                _builder.append("\t\t\t\t\t\t\t");
                _builder.append("\t\t");
                _builder.append("<groupId>");
                _builder.newLine();
                _builder.append("\t\t\t\t\t\t\t");
                _builder.append("\t\t\t");
                _builder.append("org.eclipse.tycho");
                _builder.newLine();
                _builder.append("\t\t\t\t\t\t\t");
                _builder.append("\t\t");
                _builder.append("</groupId>");
                _builder.newLine();
                _builder.append("\t\t\t\t\t\t\t");
                _builder.append("\t\t");
                _builder.append("<artifactId>");
                _builder.newLine();
                _builder.append("\t\t\t\t\t\t\t");
                _builder.append("\t\t\t");
                _builder.append("tycho-packaging-plugin");
                _builder.newLine();
                _builder.append("\t\t\t\t\t\t\t");
                _builder.append("\t\t");
                _builder.append("</artifactId>");
                _builder.newLine();
                _builder.append("\t\t\t\t\t\t\t");
                _builder.append("\t\t");
                _builder.append("<versionRange>");
                _builder.newLine();
                _builder.append("\t\t\t\t\t\t\t");
                _builder.append("\t\t\t");
                _builder.append("[0.23.1,)");
                _builder.newLine();
                _builder.append("\t\t\t\t\t\t\t");
                _builder.append("\t\t");
                _builder.append("</versionRange>");
                _builder.newLine();
                _builder.append("\t\t\t\t\t\t\t");
                _builder.append("\t\t");
                _builder.append("<goals>");
                _builder.newLine();
                _builder.append("\t\t\t\t\t\t\t");
                _builder.append("\t\t\t");
                _builder.append("<goal>build-qualifier</goal>");
                _builder.newLine();
                _builder.append("\t\t\t\t\t\t\t");
                _builder.append("\t\t\t");
                _builder.append("<goal>build-qualifier-aggregator</goal>");
                _builder.newLine();
                _builder.append("\t\t\t\t\t\t\t");
                _builder.append("\t\t\t");
                _builder.append("<goal>validate-id</goal>");
                _builder.newLine();
                _builder.append("\t\t\t\t\t\t\t");
                _builder.append("\t\t\t");
                _builder.append("<goal>validate-version</goal>");
                _builder.newLine();
                _builder.append("\t\t\t\t\t\t\t");
                _builder.append("\t\t");
                _builder.append("</goals>");
                _builder.newLine();
                _builder.append("\t\t\t\t\t\t\t");
                _builder.append("\t");
                _builder.append("</pluginExecutionFilter>");
                _builder.newLine();
                _builder.append("\t\t\t\t\t\t\t");
                _builder.append("\t");
                _builder.append("<action>");
                _builder.newLine();
                _builder.append("\t\t\t\t\t\t\t");
                _builder.append("\t\t");
                _builder.append("<ignore></ignore>");
                _builder.newLine();
                _builder.append("\t\t\t\t\t\t\t");
                _builder.append("\t");
                _builder.append("</action>");
                _builder.newLine();
                _builder.append("\t\t\t\t\t\t\t");
                _builder.append("</pluginExecution>");
                _builder.newLine();
            }
        }
        _builder.append("\t\t\t\t\t\t");
        _builder.append("</pluginExecutions>");
        _builder.newLine();
        _builder.append("\t\t\t\t\t");
        _builder.append("</lifecycleMappingMetadata>");
        _builder.newLine();
        _builder.append("\t\t\t\t");
        _builder.append("</configuration>");
        _builder.newLine();
        _builder.append("\t\t\t");
        _builder.append("</plugin>");
        _builder.newLine();
        {
            boolean _needsTychoBuild_3 = this.getConfig().needsTychoBuild();
            if (_needsTychoBuild_3) {
                _builder.append("\t\t\t");
                _builder.append("<plugin>");
                _builder.newLine();
                _builder.append("\t\t\t");
                _builder.append("\t");
                _builder.append("<!-- ");
                _builder.newLine();
                _builder.append("\t\t\t");
                _builder.append("\t\t");
                _builder.append("Can be removed after first generator execution");
                _builder.newLine();
                _builder.append("\t\t\t");
                _builder.append("\t\t");
                _builder.append("https://bugs.eclipse.org/bugs/show_bug.cgi?id=480097");
                _builder.newLine();
                _builder.append("\t\t\t");
                _builder.append("\t");
                _builder.append("-->");
                _builder.newLine();
                _builder.append("\t\t\t");
                _builder.append("\t");
                _builder.append("<groupId>org.eclipse.tycho</groupId>");
                _builder.newLine();
                _builder.append("\t\t\t");
                _builder.append("\t");
                _builder.append("<artifactId>tycho-compiler-plugin</artifactId>");
                _builder.newLine();
                _builder.append("\t\t\t");
                _builder.append("\t");
                _builder.append("<version>${tycho-version}</version>");
                _builder.newLine();
                _builder.append("\t\t\t");
                _builder.append("\t");
                _builder.append("<configuration>");
                _builder.newLine();
                _builder.append("\t\t\t");
                _builder.append("\t\t");
                _builder.append("<compilerArgument>-err:-forbidden</compilerArgument>");
                _builder.newLine();
                _builder.append("\t\t\t");
                _builder.append("\t\t");
                _builder.append("<useProjectSettings>false</useProjectSettings>");
                _builder.newLine();
                _builder.append("\t\t\t");
                _builder.append("\t");
                _builder.append("</configuration>");
                _builder.newLine();
                _builder.append("\t\t\t");
                _builder.append("</plugin>");
                _builder.newLine();
                _builder.append("\t\t\t");
                _builder.append("<!-- to skip running (and compiling) tests use commandline flag: -Dmaven.test.skip");
                _builder.newLine();
                _builder.append("\t\t\t");
                _builder.append("\t");
                _builder.append("To skip tests, but still compile them, use: -DskipTests");
                _builder.newLine();
                _builder.append("\t\t\t");
                _builder.append("\t");
                _builder.append("To allow all tests in a pom to pass/fail, use commandline flag: -fae (fail");
                _builder.newLine();
                _builder.append("\t\t\t");
                _builder.append("\t");
                _builder.append("at end) -->");
                _builder.newLine();
                _builder.append("\t\t\t");
                _builder.append("<plugin>");
                _builder.newLine();
                _builder.append("\t\t\t");
                _builder.append("\t");
                _builder.append("<groupId>org.eclipse.tycho</groupId>");
                _builder.newLine();
                _builder.append("\t\t\t");
                _builder.append("\t");
                _builder.append("<artifactId>tycho-surefire-plugin</artifactId>");
                _builder.newLine();
                _builder.append("\t\t\t");
                _builder.append("\t");
                _builder.append("<version>${tychoVersion}</version>");
                _builder.newLine();
                _builder.append("\t\t\t");
                _builder.append("\t");
                _builder.append("<configuration>");
                _builder.newLine();
                _builder.append("\t\t\t");
                _builder.append("\t\t");
                _builder.append("<!-- THE FOLLOWING LINE MUST NOT BE BROKEN BY AUTOFORMATTING -->");
                _builder.newLine();
                _builder.append("\t\t\t");
                _builder.append("\t\t");
                _builder.append("<argLine>${tycho.testArgLine} ${platformSystemProperties} ${systemProperties} ${moduleProperties}</argLine>");
                _builder.newLine();
                _builder.append("\t\t\t");
                _builder.append("\t");
                _builder.append("</configuration>");
                _builder.newLine();
                _builder.append("\t\t\t");
                _builder.append("</plugin>");
                _builder.newLine();
            }
        }
        _builder.append("\t\t");
        _builder.append("</plugins>");
        _builder.newLine();
        _builder.append("\t");
        _builder.append("</pluginManagement>");
        _builder.newLine();
        _builder.append("</build>");
        _builder.newLine();
        _builder.append("<repositories>");
        _builder.newLine();
        _builder.append("\t");
        _builder.append("<repository>");
        _builder.newLine();
        _builder.append("\t\t");
        _builder.append("<id>codehaus-snapshots</id>");
        _builder.newLine();
        _builder.append("\t\t");
        _builder.append("<name>disable dead \'Codehaus Snapshots\' repository, see https://bugs.eclipse.org/bugs/show_bug.cgi?id=481478</name>");
        _builder.newLine();
        _builder.append("\t\t");
        _builder.append("<url>http://nexus.codehaus.org/snapshots/</url>");
        _builder.newLine();
        _builder.append("\t\t");
        _builder.append("<releases>");
        _builder.newLine();
        _builder.append("\t\t\t");
        _builder.append("<enabled>false</enabled>");
        _builder.newLine();
        _builder.append("\t\t");
        _builder.append("</releases>");
        _builder.newLine();
        _builder.append("\t\t");
        _builder.append("<snapshots>");
        _builder.newLine();
        _builder.append("\t\t\t");
        _builder.append("<enabled>false</enabled>");
        _builder.newLine();
        _builder.append("\t\t");
        _builder.append("</snapshots>");
        _builder.newLine();
        _builder.append("\t");
        _builder.append("</repository>");
        _builder.newLine();
        {
            boolean _isSnapshot = this.getConfig().getXtextVersion().isSnapshot();
            if (_isSnapshot) {
                _builder.append("\t");
                _builder.append("<repository>");
                _builder.newLine();
                _builder.append("\t");
                _builder.append("\t");
                _builder.append("<id>sonatype-snapshots</id>");
                _builder.newLine();
                _builder.append("\t");
                _builder.append("\t");
                _builder.append("<url>https://oss.sonatype.org/content/repositories/snapshots</url>");
                _builder.newLine();
                _builder.append("\t");
                _builder.append("\t");
                _builder.append("<releases><enabled>false</enabled></releases>");
                _builder.newLine();
                _builder.append("\t");
                _builder.append("\t");
                _builder.append("<snapshots><enabled>true</enabled></snapshots>");
                _builder.newLine();
                _builder.append("\t");
                _builder.append("</repository>");
                _builder.newLine();
            }
        }
        _builder.append("</repositories>");
        _builder.newLine();
        _builder.append("<pluginRepositories>");
        _builder.newLine();
        _builder.append("\t");
        _builder.append("<pluginRepository>");
        _builder.newLine();
        _builder.append("\t\t");
        _builder.append("<id>codehaus-snapshots</id>");
        _builder.newLine();
        _builder.append("\t\t");
        _builder.append("<name>disable dead \'Codehaus Snapshots\' repository, see https://bugs.eclipse.org/bugs/show_bug.cgi?id=481478</name>");
        _builder.newLine();
        _builder.append("\t\t");
        _builder.append("<url>http://nexus.codehaus.org/snapshots/</url>");
        _builder.newLine();
        _builder.append("\t\t");
        _builder.append("<releases>");
        _builder.newLine();
        _builder.append("\t\t\t");
        _builder.append("<enabled>false</enabled>");
        _builder.newLine();
        _builder.append("\t\t");
        _builder.append("</releases>");
        _builder.newLine();
        _builder.append("\t\t");
        _builder.append("<snapshots>");
        _builder.newLine();
        _builder.append("\t\t\t");
        _builder.append("<enabled>false</enabled>");
        _builder.newLine();
        _builder.append("\t\t");
        _builder.append("</snapshots>");
        _builder.newLine();
        _builder.append("\t");
        _builder.append("</pluginRepository>");
        _builder.newLine();
        {
            boolean _isSnapshot_1 = this.getConfig().getXtextVersion().isSnapshot();
            if (_isSnapshot_1) {
                _builder.append("\t");
                _builder.append("<pluginRepository>");
                _builder.newLine();
                _builder.append("\t");
                _builder.append("\t");
                _builder.append("<id>sonatype-snapshots</id>");
                _builder.newLine();
                _builder.append("\t");
                _builder.append("\t");
                _builder.append("<url>https://oss.sonatype.org/content/repositories/snapshots</url>");
                _builder.newLine();
                _builder.append("\t");
                _builder.append("\t");
                _builder.append("<releases><enabled>false</enabled></releases>");
                _builder.newLine();
                _builder.append("\t");
                _builder.append("\t");
                _builder.append("<snapshots><enabled>true</enabled></snapshots>");
                _builder.newLine();
                _builder.append("\t");
                _builder.append("</pluginRepository>");
                _builder.newLine();
            }
        }
        _builder.append("</pluginRepositories>");
        _builder.newLine();
        _builder.append("<profiles>");
        _builder.newLine();
        _builder.append("\t");
        _builder.append("<profile>");
        _builder.newLine();
        _builder.append("\t\t");
        _builder.append("<id>macos</id>");
        _builder.newLine();
        _builder.append("\t\t");
        _builder.append("<activation>");
        _builder.newLine();
        _builder.append("\t\t\t");
        _builder.append("<os>");
        _builder.newLine();
        _builder.append("\t\t\t\t");
        _builder.append("<family>mac</family>");
        _builder.newLine();
        _builder.append("\t\t\t");
        _builder.append("</os>");
        _builder.newLine();
        _builder.append("\t\t");
        _builder.append("</activation>");
        _builder.newLine();
        _builder.append("\t\t");
        _builder.append("<properties>");
        _builder.newLine();
        _builder.append("\t\t\t");
        _builder.append("<!-- THE FOLLOWING LINE MUST NOT BE BROKEN BY AUTOFORMATTING -->");
        _builder.newLine();
        _builder.append("\t\t\t");
        _builder.append("<platformSystemProperties>-XstartOnFirstThread</platformSystemProperties>");
        _builder.newLine();
        _builder.append("\t\t");
        _builder.append("</properties>");
        _builder.newLine();
        _builder.append("\t");
        _builder.append("</profile>");
        _builder.newLine();
        _builder.append("\t");
        _builder.append("<profile>");
        _builder.newLine();
        _builder.append("\t\t");
        _builder.append("<id>jdk9-or-newer</id>");
        _builder.newLine();
        _builder.append("\t\t");
        _builder.append("<activation>");
        _builder.newLine();
        _builder.append("\t\t\t");
        _builder.append("<jdk>[9,)</jdk>");
        _builder.newLine();
        _builder.append("\t\t");
        _builder.append("</activation>");
        _builder.newLine();
        _builder.append("\t\t");
        _builder.append("<properties>");
        _builder.newLine();
        _builder.append("\t\t\t");
        _builder.append("<moduleProperties>--add-modules=ALL-SYSTEM</moduleProperties>");
        _builder.newLine();
        _builder.append("\t\t");
        _builder.append("</properties>");
        _builder.newLine();
        _builder.append("\t");
        _builder.append("</profile>");
        _builder.newLine();
        _builder.append("</profiles>");
        _builder.newLine();
        it.setBuildSection(_builder.toString());
    };
    return ObjectExtensions.<PomFile>operator_doubleArrow(_pom, _function);
}
Also used : ProjectLayout(org.eclipse.xtext.xtext.wizard.ProjectLayout) XtextVersion(org.eclipse.xtext.util.XtextVersion) Charset(java.nio.charset.Charset) ProjectDescriptor(org.eclipse.xtext.xtext.wizard.ProjectDescriptor) PomFile(org.eclipse.xtext.xtext.wizard.PomFile) StringConcatenation(org.eclipse.xtend2.lib.StringConcatenation) Outlet(org.eclipse.xtext.xtext.wizard.Outlet)

Aggregations

ProjectDescriptor (org.eclipse.xtext.xtext.wizard.ProjectDescriptor)11 StringConcatenation (org.eclipse.xtend2.lib.StringConcatenation)7 IdeProjectDescriptor (org.eclipse.xtext.xtext.wizard.IdeProjectDescriptor)7 TestProjectDescriptor (org.eclipse.xtext.xtext.wizard.TestProjectDescriptor)7 TestedProjectDescriptor (org.eclipse.xtext.xtext.wizard.TestedProjectDescriptor)7 UiProjectDescriptor (org.eclipse.xtext.xtext.wizard.UiProjectDescriptor)6 WebProjectDescriptor (org.eclipse.xtext.xtext.wizard.WebProjectDescriptor)6 RuntimeProjectDescriptor (org.eclipse.xtext.xtext.wizard.RuntimeProjectDescriptor)4 IntellijProjectDescriptor (org.eclipse.xtext.xtext.wizard.IntellijProjectDescriptor)3 ProjectLayout (org.eclipse.xtext.xtext.wizard.ProjectLayout)3 RuntimeTestProjectDescriptor (org.eclipse.xtext.xtext.wizard.RuntimeTestProjectDescriptor)3 Charset (java.nio.charset.Charset)2 ExternalDependency (org.eclipse.xtext.xtext.wizard.ExternalDependency)2 PomFile (org.eclipse.xtext.xtext.wizard.PomFile)2 Test (org.junit.Test)2 ArrayList (java.util.ArrayList)1 LinkedHashSet (java.util.LinkedHashSet)1 Set (java.util.Set)1 XtextVersion (org.eclipse.xtext.util.XtextVersion)1 Function1 (org.eclipse.xtext.xbase.lib.Functions.Function1)1