<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!--
   Copyright (C) 2014 Matthias Sohn <matthias.sohn@sap.com>

   All rights reserved. This program and the accompanying materials
   are made available under the terms of the Eclipse Public License v1.0
   which accompanies this distribution, and is available at
   http://www.eclipse.org/legal/epl-v10.html
-->
<?pde version="3.6"?>
<target name="jgit.target" sequenceNumber="1">
  <locations>
    <location includeAllPlatforms="false" includeConfigurePhase="true" includeMode="slicer" includeSource="true" type="InstallableUnit">
      <repository location="http://download.eclipse.org/jetty/updates/jetty-bundles-7.x/7.6.14.v20131031/"/>
      <unit id="org.eclipse.jetty.client" version="7.6.14.v20131031"/>
      <unit id="org.eclipse.jetty.client.source" version="7.6.14.v20131031"/>
      <unit id="org.eclipse.jetty.continuation" version="7.6.14.v20131031"/>
      <unit id="org.eclipse.jetty.continuation.source" version="7.6.14.v20131031"/>
      <unit id="org.eclipse.jetty.http" version="7.6.14.v20131031"/>
      <unit id="org.eclipse.jetty.http.source" version="7.6.14.v20131031"/>
      <unit id="org.eclipse.jetty.io" version="7.6.14.v20131031"/>
      <unit id="org.eclipse.jetty.io.source" version="7.6.14.v20131031"/>
      <unit id="org.eclipse.jetty.security" version="7.6.14.v20131031"/>
      <unit id="org.eclipse.jetty.security.source" version="7.6.14.v20131031"/>
      <unit id="org.eclipse.jetty.server" version="7.6.14.v20131031"/>
      <unit id="org.eclipse.jetty.server.source" version="7.6.14.v20131031"/>
      <unit id="org.eclipse.jetty.servlet" version="7.6.14.v20131031"/>
      <unit id="org.eclipse.jetty.servlet.source" version="7.6.14.v20131031"/>
      <unit id="org.eclipse.jetty.util" version="7.6.14.v20131031"/>
      <unit id="org.eclipse.jetty.util.source" version="7.6.14.v20131031"/>
    </location>
    <location includeAllPlatforms="false" includeConfigurePhase="true" includeMode="slicer" includeSource="true" type="InstallableUnit">
      <repository location="http://download.eclipse.org/tools/orbit/downloads/drops/S20141023165154/repository/"/>
      <unit id="org.apache.ant.source" version="1.9.4.v201410062020"/>
      <unit id="org.apache.ant" version="1.9.4.v201410062020"/>
      <unit id="org.apache.commons.compress" version="1.6.0.v201310281400"/>
      <unit id="org.apache.commons.compress.source" version="1.6.0.v201310281400"/>
      <unit id="org.apache.commons.logging" version="1.1.1.v201101211721"/>
      <unit id="org.apache.commons.logging.source" version="1.1.1.v201101211721"/>
      <unit id="org.apache.httpcomponents.httpcore" version="4.1.4.v201203221030"/>
      <unit id="org.apache.httpcomponents.httpcore.source" version="4.1.4.v201203221030"/>
      <unit id="org.apache.httpcomponents.httpclient" version="4.1.3.v201209201135"/>
      <unit id="org.apache.httpcomponents.httpclient.source" version="4.1.3.v201209201135"/>
      <unit id="org.apache.log4j" version="1.2.15.v201012070815"/>
      <unit id="org.apache.log4j.source" version="1.2.15.v201012070815"/>
      <unit id="org.kohsuke.args4j" version="2.0.21.v201301150030"/>
      <unit id="org.kohsuke.args4j.source" version="2.0.21.v201301150030"/>
      <unit id="org.hamcrest.core" version="1.3.0.v201303031735"/>
      <unit id="org.hamcrest.core.source" version="1.3.0.v201303031735"/>
      <unit id="javaewah" version="0.7.9.v201401101600"/>
      <unit id="javaewah.source" version="0.7.9.v201401101600"/>
      <unit id="org.objenesis" version="1.0.0.v201105211943"/>
      <unit id="org.objenesis.source" version="1.0.0.v201105211943"/>
      <unit id="org.mockito" version="1.8.4.v201303031500"/>
      <unit id="org.mockito.source" version="1.8.4.v201303031500"/>
      <unit id="com.jcraft.jsch" version="0.1.51.v201410231640"/>
      <unit id="com.jcraft.jsch.source" version="0.1.51.v201410231640"/>
      <unit id="org.junit" version="4.11.0.v201303080030"/>
      <unit id="org.junit.source" version="4.11.0.v201303080030"/>
      <unit id="javax.servlet" version="2.5.0.v201103041518"/>
      <unit id="javax.servlet.source" version="2.5.0.v201103041518"/>
      <unit id="org.tukaani.xz" version="1.3.0.v201308270617"/>
      <unit id="org.tukaani.xz.source" version="1.3.0.v201308270617"/>
    </location>
    <location includeAllPlatforms="false" includeConfigurePhase="true" includeMode="slicer" includeSource="true" type="InstallableUnit">
      <repository location="http://download.eclipse.org/releases/mars/"/>
      <unit id="org.eclipse.osgi" version="0.0.0"/>
    </location>
  </locations>
</target>
