<?xml version="1.0" encoding="UTF-8"?>
<setup:Project
    xmi:version="2.0"
    xmlns:xmi="http://www.omg.org/XMI"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:git="http://www.eclipse.org/oomph/setup/git/1.0"
    xmlns:jdt="http://www.eclipse.org/oomph/setup/jdt/1.0"
    xmlns:predicates="http://www.eclipse.org/oomph/predicates/1.0"
    xmlns:setup="http://www.eclipse.org/oomph/setup/1.0"
    xmlns:setup.p2="http://www.eclipse.org/oomph/setup/p2/1.0"
    xmlns:setup.targlets="http://www.eclipse.org/oomph/setup/targlets/1.0"
    xmlns:setup.workingsets="http://www.eclipse.org/oomph/setup/workingsets/1.0"
    xsi:schemaLocation="http://www.eclipse.org/oomph/setup/git/1.0 http://git.eclipse.org/c/oomph/org.eclipse.oomph.git/plain/setups/models/Git.ecore http://www.eclipse.org/oomph/setup/jdt/1.0 http://git.eclipse.org/c/oomph/org.eclipse.oomph.git/plain/setups/models/JDT.ecore http://www.eclipse.org/oomph/predicates/1.0 http://git.eclipse.org/c/oomph/org.eclipse.oomph.git/plain/setups/models/Predicates.ecore http://www.eclipse.org/oomph/setup/targlets/1.0 http://git.eclipse.org/c/oomph/org.eclipse.oomph.git/plain/setups/models/SetupTarglets.ecore http://www.eclipse.org/oomph/setup/workingsets/1.0 http://git.eclipse.org/c/oomph/org.eclipse.oomph.git/plain/setups/models/SetupWorkingSets.ecore"
    name="jdt"
    label="JDT">
  <setupTask
      xsi:type="setup.p2:P2Task">
    <requirement
        name="org.eclipse.pde.api.tools.ee.feature.feature.group"/>
    <requirement
        name="org.eclipse.jdt.junit4.runtime"/>
  </setupTask>
  <setupTask
      xsi:type="setup:EclipseIniTask"
      option="-Xmx"
      value="2048m"
      vm="true"/>
  <setupTask
      xsi:type="setup:ResourceCreationTask"
      excludedTriggers="STARTUP MANUAL"
      targetURL="${workspace.location|uri}/.metadata/.plugins/org.eclipse.jdt.ui/dialog_settings.xml"
      encoding="UTF-8"
      documentation="Initialize the Package Explorer to display workings sets.">
    <content>
      &lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?>
      &lt;section name=&quot;Workbench&quot;>
      	&lt;section name=&quot;org.eclipse.jdt.internal.ui.packageview.PackageExplorerPart&quot;>
      		&lt;item value=&quot;true&quot; key=&quot;group_libraries&quot;/>
      		&lt;item value=&quot;false&quot; key=&quot;linkWithEditor&quot;/>
      		&lt;item value=&quot;2&quot; key=&quot;layout&quot;/>
      		&lt;item value=&quot;2&quot; key=&quot;rootMode&quot;/>
      		&lt;item value=&quot;&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot;?&amp;gt;&amp;#x0D;&amp;#x0A;&amp;lt;packageExplorer configured=&amp;quot;true&amp;quot; group_libraries=&amp;quot;1&amp;quot; layout=&amp;quot;2&amp;quot; linkWithEditor=&amp;quot;0&amp;quot; rootMode=&amp;quot;2&amp;quot; sortWorkingSets=&amp;quot;false&amp;quot; workingSetName=&amp;quot;&amp;quot;&amp;gt;&amp;#x0D;&amp;#x0A;&amp;lt;localWorkingSetManager&amp;gt;&amp;#x0D;&amp;#x0A;&amp;lt;workingSet editPageId=&amp;quot;org.eclipse.jdt.internal.ui.OthersWorkingSet&amp;quot; factoryID=&amp;quot;org.eclipse.ui.internal.WorkingSetFactory&amp;quot; id=&amp;quot;1382792884467_1&amp;quot; label=&amp;quot;Other Projects&amp;quot; name=&amp;quot;Other Projects&amp;quot;/&amp;gt;&amp;#x0D;&amp;#x0A;&amp;lt;/localWorkingSetManager&amp;gt;&amp;#x0D;&amp;#x0A;&amp;lt;activeWorkingSet workingSetName=&amp;quot;Other Projects&amp;quot;/&amp;gt;&amp;#x0D;&amp;#x0A;&amp;lt;allWorkingSets workingSetName=&amp;quot;Other Projects&amp;quot;/&amp;gt;&amp;#x0D;&amp;#x0A;&amp;lt;/packageExplorer&amp;gt;&quot; key=&quot;memento&quot;/>
      	&lt;/section>
      &lt;/section>

    </content>
  </setupTask>
  <setupTask
      xsi:type="jdt:JRETask"
      version="JavaSE-11"
      location="${jre.location-11}"/>
  <setupTask
      xsi:type="setup:VariableTask"
      name="eclipse.target.platform"
      value="${eclipse.target.platform.latest}"
      storageURI="scope://Workspace"/>
  <setupTask
      xsi:type="setup:VariableTask"
      name="eclipse.api.baseline.target.platform"
      value="${eclipse.api.baseline.target.platform.latest.released}"
      storageURI="scope://Workspace"/>
  <setupTask
      xsi:type="setup.targlets:TargletTask"
      targetName="Modular API Baseline Target"
      activateTarget="false">
    <targlet
        name="JDT"
        activeRepositoryList="${eclipse.api.baseline.target.platform}"
        includeSources="false">
      <requirement
          name="org.eclipse.platform.feature.group"/>
      <requirement
          name="org.eclipse.jdt.feature.group"/>
      <requirement
          name="org.eclipse.pde.feature.group"/>
      <requirement
          name="org.eclipse.equinox.executable.feature.group"/>
    </targlet>
  </setupTask>
  <setupTask
      xsi:type="setup.targlets:TargletTask">
    <targlet
        name="JDT Platform"
        activeRepositoryList="CBI">
      <requirement
          name="org.eclipse.platform.feature.group"/>
      <requirement
          name="org.eclipse.jdt.feature.group"/>
      <requirement
          name="org.eclipse.pde.feature.group"/>
      <requirement
          name="org.eclipse.equinox.executable.feature.group"/>
      <repositoryList
          name="CBI">
        <repository
            url="http://download.eclipse.org/cbi/updates/license"/>
      </repositoryList>
    </targlet>
  </setupTask>
  <project name="features"
      label="Features">
    <setupTask
        xsi:type="git:GitCloneTask"
        id="git.clone.jdt"
        remoteURI="jdt/eclipse.jdt"
        userID="">
      <annotation
          source="http://www.eclipse.org/oomph/setup/InducedChoices">
        <detail
            key="inherit">
          <value>eclipse.git.gerrit.remoteURIs</value>
        </detail>
        <detail
            key="label">
          <value>JDT Features Git or Gerrit Repository</value>
        </detail>
        <detail
            key="target">
          <value>remoteURI</value>
        </detail>
      </annotation>
      <configSections
          name="gerrit">
        <properties
            key="createchangeid"
            value="true"/>
      </configSections>
      <description>JDT Features</description>
    </setupTask>
    <setupTask
        xsi:type="setup.targlets:TargletTask">
      <targlet
          name="JDT Features"
          activeRepositoryList="${eclipse.target.platform}">
        <requirement
            name="*"/>
        <sourceLocator
            rootFolder="${git.clone.jdt.location}"/>
      </targlet>
    </setupTask>
    <setupTask
        xsi:type="setup.workingsets:WorkingSetTask">
      <workingSet
          name="JDT Features">
        <predicate
            xsi:type="predicates:RepositoryPredicate"
            project="org.eclipse.jdt-feature"/>
      </workingSet>
    </setupTask>
    <setupTask
        xsi:type="setup:EclipseIniTask"
        option="-Doomph.redirection.jdt"
        value="=https://git.eclipse.org/c/jdt/eclipse.jdt.git/plain/org.eclipse.jdt.releng/JDT.setup->${git.clone.jdt.location|uri}/org.eclipse.jdt.releng/JDT.setup"
        vm="true">
      <description>Set an Oomph redirection system property to redirect the logical location of this setup to its physical location in the Git clone.</description>
    </setupTask>
    <stream
        name="master"
        label="Master"/>
    <description>The features of the JDT project</description>
  </project>
  <project name="core"
      label="Core">
    <setupTask
        xsi:type="git:GitCloneTask"
        id="git.clone.jdt.core"
        remoteURI="jdt/eclipse.jdt.core">
      <annotation
          source="http://www.eclipse.org/oomph/setup/InducedChoices">
        <detail
            key="inherit">
          <value>eclipse.git.gerrit.remoteURIs</value>
        </detail>
        <detail
            key="label">
          <value>JDT Features Git or Gerrit Repository</value>
        </detail>
        <detail
            key="target">
          <value>remoteURI</value>
        </detail>
      </annotation>
      <configSections
          name="gerrit">
        <properties
            key="createchangeid"
            value="true"/>
      </configSections>
      <description>JDT Core</description>
    </setupTask>
    <setupTask
        xsi:type="setup.targlets:TargletTask">
      <targlet
          name="JDT Core"
          activeRepositoryList="${eclipse.target.platform}">
        <requirement
            name="org.eclipse.jdt.apt.ui"/>
        <requirement
            name="org.eclipse.jdt.core.internal.tools"/>
        <requirement
            name="org.eclipse.jdt.core.ecj.validation.plain.project"/>
        <sourceLocator
            rootFolder="${git.clone.jdt.core.location}"/>
      </targlet>
    </setupTask>
    <setupTask
        xsi:type="setup.workingsets:WorkingSetTask">
      <workingSet
          name="JDT Core">
        <predicate
            xsi:type="predicates:AndPredicate">
          <operand
              xsi:type="predicates:RepositoryPredicate"
              project="org.eclipse.jdt.core"/>
          <operand
              xsi:type="predicates:NotPredicate">
            <operand
                xsi:type="predicates:NamePredicate"
                pattern=".*tests.*|.*examples.*"/>
          </operand>
        </predicate>
      </workingSet>
    </setupTask>
    <project
        name="tests"
        label="Tests">
      <setupTask
          xsi:type="setup.targlets:TargletTask">
        <targlet
            name="JDT Core Tests"
            activeRepositoryList="">
          <requirement
              name="org.eclipse.jdt.apt.pluggable.tests"/>
          <requirement
              name="org.eclipse.jdt.apt.tests"/>
          <requirement
              name="org.eclipse.jdt.compiler.tool.tests"/>
          <requirement
              name="org.eclipse.jdt.core.tests.performance"/>
        </targlet>
      </setupTask>
      <setupTask
          xsi:type="setup.workingsets:WorkingSetTask">
        <workingSet
            name="JDT Core Tests">
          <predicate
              xsi:type="predicates:AndPredicate">
            <operand
                xsi:type="predicates:RepositoryPredicate"
                project="org.eclipse.jdt.core"/>
            <operand
                xsi:type="predicates:NamePredicate"
                pattern=".*tests.*"/>
          </predicate>
        </workingSet>
      </setupTask>
      <stream
          name="master"
          label="Master"/>
    </project>
    <project
        name="testbinaries"
        label="Test Binaries">
      <setupTask
          xsi:type="git:GitCloneTask"
          id="git.clone.jdt.binaries"
          remoteURI="jdt/eclipse.jdt.core.binaries">
        <annotation
            source="http://www.eclipse.org/oomph/setup/InducedChoices">
          <detail
              key="inherit">
            <value>eclipse.git.gerrit.remoteURIs</value>
          </detail>
          <detail
              key="label">
            <value>JDT Core Test Binaries Git or Gerrit Repository</value>
          </detail>
          <detail
              key="target">
            <value>remoteURI</value>
          </detail>
        </annotation>
        <configSections
            name="gerrit">
          <properties
              key="createchangeid"
              value="true"/>
        </configSections>
        <description>JDT Core Tests</description>
      </setupTask>
      <setupTask
          xsi:type="setup.targlets:TargletTask">
        <targlet
            name="JDT Core Test Binaries"
            activeRepositoryList="${eclipse.target.platform}">
          <requirement
              name="org.eclipse.jdt.core.tests.binaries"/>
          <sourceLocator
              rootFolder="${git.clone.jdt.binaries.location}"/>
        </targlet>
      </setupTask>
      <setupTask
          xsi:type="setup.workingsets:WorkingSetTask">
        <workingSet
            name="JDT Core Test Binaries">
          <predicate
              xsi:type="predicates:RepositoryPredicate"
              project="org.eclipse.jdt.core.tests.binaries"/>
        </workingSet>
      </setupTask>
      <stream
          name="master"
          label="Master"/>
      <description>The binaries for tests of the JDT Core project</description>
    </project>
    <stream
        name="master"
        label="Master"/>
    <description>The core parts of the JDT project</description>
  </project>
  <project name="debug"
      label="Debug">
    <setupTask
        xsi:type="git:GitCloneTask"
        id="git.clone.jdt.debug"
        remoteURI="jdt/eclipse.jdt.debug">
      <annotation
          source="http://www.eclipse.org/oomph/setup/InducedChoices">
        <detail
            key="inherit">
          <value>eclipse.git.gerrit.remoteURIs</value>
        </detail>
        <detail
            key="label">
          <value>JDT Debug Git or Gerrit Repository</value>
        </detail>
        <detail
            key="target">
          <value>remoteURI</value>
        </detail>
      </annotation>
      <configSections
          name="gerrit">
        <properties
            key="createchangeid"
            value="true"/>
      </configSections>
      <description>JDT Core</description>
    </setupTask>
    <setupTask
        xsi:type="setup.targlets:TargletTask">
      <targlet
          name="JDT Debug"
          activeRepositoryList="${eclipse.target.platform}">
        <requirement
            name="*"/>
        <sourceLocator
            rootFolder="${git.clone.jdt.debug.location}">
          <predicate
              xsi:type="predicates:NotPredicate">
            <operand
                xsi:type="predicates:NamePredicate"
                pattern=".*tests.*"/>
          </predicate>
        </sourceLocator>
      </targlet>
    </setupTask>
    <setupTask
        xsi:type="setup.workingsets:WorkingSetTask">
      <workingSet
          name="JDT Debug">
        <predicate
            xsi:type="predicates:AndPredicate">
          <operand
              xsi:type="predicates:RepositoryPredicate"
              project="org.eclipse.jdt.debug"/>
          <operand
              xsi:type="predicates:NotPredicate">
            <operand
                xsi:type="predicates:NamePredicate"
                pattern=".*tests.*"/>
          </operand>
        </predicate>
      </workingSet>
    </setupTask>
    <project
        name="tests"
        label="Tests">
      <setupTask
          xsi:type="setup.targlets:TargletTask">
        <targlet
            name="JDT Debug Tests"
            activeRepositoryList="">
          <requirement
              name="*"/>
          <sourceLocator
              rootFolder="${git.clone.jdt.debug.location}">
            <predicate
                xsi:type="predicates:NamePredicate"
                pattern=".*tests.*"/>
          </sourceLocator>
        </targlet>
      </setupTask>
      <setupTask
          xsi:type="setup.workingsets:WorkingSetTask">
        <workingSet
            name="JDT Debug Tests">
          <predicate
              xsi:type="predicates:AndPredicate">
            <operand
                xsi:type="predicates:RepositoryPredicate"
                project="org.eclipse.jdt.debug"/>
            <operand
                xsi:type="predicates:NamePredicate"
                pattern=".*tests.*"/>
          </predicate>
        </workingSet>
      </setupTask>
      <stream
          name="master"
          label="Master"/>
    </project>
    <stream
        name="master"
        label="Master"/>
    <description>The debug parts of the JDT project</description>
  </project>
  <project name="ui"
      label="UI">
    <setupTask
        xsi:type="git:GitCloneTask"
        id="git.clone.jdt.ui"
        remoteURI="jdt/eclipse.jdt.ui">
      <annotation
          source="http://www.eclipse.org/oomph/setup/InducedChoices">
        <detail
            key="inherit">
          <value>eclipse.git.gerrit.remoteURIs</value>
        </detail>
        <detail
            key="label">
          <value>JDT UI Git or Gerrit Repository</value>
        </detail>
        <detail
            key="target">
          <value>remoteURI</value>
        </detail>
      </annotation>
      <configSections
          name="gerrit">
        <properties
            key="createchangeid"
            value="true"/>
      </configSections>
      <description>JDT UI</description>
    </setupTask>
    <setupTask
        xsi:type="setup.targlets:TargletTask">
      <targlet
          name="JDT UI"
          activeRepositoryList="${eclipse.target.platform}">
        <requirement
            name="org.eclipse.jdt.astview.feature.feature.group"/>
        <requirement
            name="org.eclipse.jdt.jeview.feature.feature.group"/>
        <sourceLocator
            rootFolder="${git.clone.jdt.ui.location}"/>
      </targlet>
    </setupTask>
    <setupTask
        xsi:type="setup.workingsets:WorkingSetTask">
      <workingSet
          name="JDT UI">
        <predicate
            xsi:type="predicates:AndPredicate">
          <operand
              xsi:type="predicates:RepositoryPredicate"
              project="org.eclipse.jdt.ui"/>
          <operand
              xsi:type="predicates:NotPredicate">
            <operand
                xsi:type="predicates:NamePredicate"
                pattern=".*tests.*|.*examples.*"/>
          </operand>
        </predicate>
      </workingSet>
    </setupTask>
    <project
        name="tests"
        label="Tests">
      <setupTask
          xsi:type="setup.targlets:TargletTask">
        <targlet
            name="JDT UI Tests">
          <requirement
              name="org.eclipse.jdt.text.tests"/>
          <requirement
              name="org.eclipse.jdt.ui.tests.refactoring"/>
          <requirement
              name="org.eclipse.ltk.core.refactoring.tests"/>
          <requirement
              name="org.eclipse.ltk.ui.refactoring.tests"/>
        </targlet>
      </setupTask>
      <setupTask
          xsi:type="setup.workingsets:WorkingSetTask">
        <workingSet
            name="JDT UI Tests">
          <predicate
              xsi:type="predicates:AndPredicate">
            <operand
                xsi:type="predicates:RepositoryPredicate"
                project="org.eclipse.jdt.ui"/>
            <operand
                xsi:type="predicates:NamePredicate"
                pattern=".*tests.*"/>
          </predicate>
        </workingSet>
      </setupTask>
      <stream
          name="master"
          label="Master"/>
    </project>
    <project
        name="examples"
        label="Examples">
      <setupTask
          xsi:type="setup.targlets:TargletTask">
        <targlet
            name="JDT UI Examples">
          <requirement
              name="org.eclipse.jdt.ui.examples.javafamily"/>
          <requirement
              name="org.eclipse.jdt.ui.examples.projects"/>
        </targlet>
      </setupTask>
      <setupTask
          xsi:type="setup.workingsets:WorkingSetTask">
        <workingSet
            name="JDT UI Examples">
          <predicate
              xsi:type="predicates:AndPredicate">
            <operand
                xsi:type="predicates:RepositoryPredicate"
                project="org.eclipse.jdt.ui"/>
            <operand
                xsi:type="predicates:NamePredicate"
                pattern=".*examples.*"/>
          </predicate>
        </workingSet>
      </setupTask>
      <stream
          name="master"
          label="Master"/>
    </project>
    <stream
        name="master"
        label="Master"/>
    <description>The UI parts of the JDT project</description>
  </project>
  <logicalProjectContainer
      xsi:type="setup:ProjectCatalog"
      href="index:/org.eclipse.setup#//@projectCatalogs[name='org.eclipse']"/>
  <description>The setups for the Java Development Tools projects</description>
</setup:Project>
