<?xml version="1.0" encoding="UTF-8"?>
<setup:Product
    xmi:version="2.0"
    xmlns:xmi="http://www.omg.org/XMI"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:setup="http://www.eclipse.org/oomph/setup/1.0"
    xmlns:setup.p2="http://www.eclipse.org/oomph/setup/p2/1.0"
    name="papyrus-rt-devtest"
    label="Papyrus-RT development testing">
  <annotation
      source="http://www.eclipse.org/oomph/setup/BrandingInfo">
    <detail
        key="folderName">
      <value>eclipse</value>
    </detail>
    <detail
        key="folderName.macosx">
      <value>Eclipse</value>
    </detail>
  </annotation>
  <setupTask
      xsi:type="setup.p2:P2Task"
      label="${scope.product.label}">
    <requirement
        name="org.eclipse.platform.ide"/>
    <requirement
        name="org.eclipse.platform.feature.group"/>
    <requirement
        name="org.eclipse.rcp.feature.group"/>
    <requirement
        name="org.eclipse.oomph.setup.feature.group"/>
    <requirement
        name="org.eclipse.papyrusrt.feature.feature.group"/>
    <requirement
        name="org.eclipse.papyrusrt.codegen-feature.feature.group"/>
    <requirement
        name="org.eclipse.papyrusrt.rts-feature.feature.group"/>
    <requirement
        name="org.eclipse.papyrusrt.xtumlrt.xtext.feature.feature.group"/>
    <requirement
        name="org.eclipse.papyrusrt.umlrt.cpp.feature.feature.group"/>
    <requirement
        name="org.eclipse.cdt.feature.group"/>
    <requirement
        name="org.eclipse.egit.feature.group"/>
    <requirement
        name="org.eclipse.emf.compare.diagram.papyrus.feature.group"/>
    <requirement
        name="org.eclipse.emf.compare.egit.feature.group"/>
    <repository
        url="http://download.eclipse.org/oomph/updates/latest"/>
  </setupTask>
  <setupTask
      xsi:type="setup:ResourceCreationTask"
      id="plugin.customization.ini"
      excludedTriggers="STARTUP MANUAL"
      content="org.eclipse.ui/defaultPerspectiveId=org.eclipse.papyrus.infra.core.perspective&#xD;&#xA;"
      targetURL="${installation.location|uri}/${installation.relativeProductFolder}/plugin_customization.ini"/>
  <setupTask
      xsi:type="setup:EclipseIniTask"
      excludedTriggers="STARTUP MANUAL"
      option="-pluginCustomization"
      value="${plugin.customization.ini.targetURL|file}"/>
  <setupTask
      xsi:type="setup:PreferenceTask"
      key="/instance/org.eclipse.papyrus.infra.viewpoints.policy/papyrusViewpointsConfigurationType"
      value="extension">
    <description></description>
  </setupTask>
  <setupTask
      xsi:type="setup:PreferenceTask"
      key="/instance/org.eclipse.papyrus.infra.viewpoints.policy/papyrusViewpointsSelectedViewpoint"
      value="UML-RT Viewpoint"/>
  <setupTask
      xsi:type="setup:PreferenceTask"
      key="/instance/org.eclipse.papyrus.infra.viewpoints.policy/papyrusViewpointsSelectedStakeholder"
      value="UML-RT Modeler"/>
  <setupTask
      xsi:type="setup:PreferenceTask"
      key="/instance/org.eclipse.egit.ui/enable_logical_model"
      value="true"/>
  <setupTask
      xsi:type="setup:PreferenceTask"
      key="/instance/org.eclipse.egit.core/core_preferredMergeStrategy"
      value="model recursive"/>
  <setupTask
      xsi:type="setup:PreferenceTask"
      key="/instance/org.eclipse.emf.compare.ide.ui/org.eclipse.emf.compare.ide.ui.preference.resolutionScope"
      value="WORKSPACE"/>
  <setupTask
      xsi:type="setup:PreferenceTask"
      key="/instance/org.eclipse.emf.compare.rcp/org.eclipse.emf.compare.preference.conflict.detector"
      value="org.eclipse.emf.compare.rcp.fast.conflictDetector"/>
  <setupTask
      xsi:type="setup:VariableTask"
      type="URI"
      name="base.downloads.url"
      value="http://download.eclipse.org"/>
  <setupTask
      xsi:type="setup:VariableTask"
      name="eclipse.target.platform"
      defaultValue="Neon"
      storageURI="scope://Workspace"/>
  <setupTask
      xsi:type="setup:VariableTask"
      name="papyrus.buildtype"
      defaultValue="nightly"
      storageURI="scope://Installation">
    <choice
        value="nightly"
        label="Nightly Builds (bleeding edge)"/>
    <choice
        value="milestones"
        label="Milestone Builds (more stable)"/>
    <choice
        value="releases"
        label="Release Builds (most stable)"/>
    <description>The kind of Papyrus build (stability level) to include in the configuration.</description>
  </setupTask>
  <version name="latest"
      label="Latest Successful Build for testers - USE AT YOUR OWN RISK!"
      requiredJavaVersion="1.7">
    <setupTask
        xsi:type="setup.p2:P2Task">
      <requirement
          name="org.eclipse.papyrus.sdk.feature.feature.group"
          versionRange="[2.0.0,3.0.0)"/>
      <requirement
          name="org.eclipse.papyrus.designer.languages.cpp.cdt.texteditor"/>
      <requirement
          name="org.eclipse.papyrus.designer.languages.common.extensionpoints"/>
      <requirement
          name="org.eclipse.papyrus.designer.languages.common.base"/>
      <requirement
          name="org.eclipse.papyrus.designer.languages.cpp.library"/>
      <requirement
          name="org.eclipse.egit.feature.group"/>
      <requirement
          name="org.eclipse.emf.compare.diagram.papyrus.feature.group"/>
      <requirement
          name="org.eclipse.emf.compare.egit.feature.group"/>
      <requirement
          name="org.eclipse.papyrus.infra.gmfdiag.elk.feature.feature.group"/>
      <requirement
          name="org.eclipse.elk.sdk.feature.feature.group"/>
      <requirement
          name="org.eclipse.papyrusrt.umlrt.migration.rsa.feature.feature.group"/>
      <requirement
          name="org.eclipse.papyrusrt.umlrt.tooling.compare.feature.feature.group"/>
      <repository
          url="${base.downloads.url}/papyrus-rt/updates/nightly/neon/"/>
      <repository
          url="${base.downloads.url}/modeling/mdt/papyrus/updates/${papyrus.buildtype}/neon/main/"/>
      <repository
          url="${base.downloads.url}/modeling/mdt/papyrus/updates/${papyrus.buildtype}/neon/extra/"/>
      <repository
          url="${base.downloads.url}/tools/cdt/releases/9.0"/>
      <repository
          url="${base.downloads.url}/modeling/tmf/xtext/updates/composite/milestones/"/>
      <repository
          url="${base.downloads.url}/tools/orbit/downloads/drops/R20160221192158/repository/"/>
      <repository
          url="${base.downloads.url}/releases/neon/"/>
      <repository
          url="${base.downloads.url}/modeling/mdt/papyrus/components/designer/"/>
      <repository
          url="https://hudson.eclipse.org/papyrus/job/Papyrus-Master-Developer/lastSuccessfulBuild/artifact/repository"/>
      <repository
          url="http://download.eclipse.org/modeling/emf/compare/updates/logical/emf.compare/nightly/latest"/>
      <repository
          url="http://download.eclipse.org/modeling/emf/compare/updates/egit-logical/nightly"/>
      <repository
          url="${base.downloads.url}/elk/updates/releases/0.1.0/"/>
    </setupTask>
    <description>Papyrus-RT Latest Successful Build for testers - USE AT YOUR OWN RISK!</description>
  </version>
  <description>Papyrus-RT with tooling and CDT plus development builds of code-generator and run-time. These configurations are for testing versions of Papyrus-RT under development.</description>
</setup:Product>
