#######################################################################################
#
# remember, trailing spaces are not trimmed in ant files,
# so it's often very helpful to trim them "manually" from this file
#
# A dependency is identified by:
# groupId: a simple component name that adheres to java
#           variable naming conventions. e.g. wtp
# url:  Url to a remote repository that can be used by a
#       http GET request to download the library
#       to a local cache repository. URL should not include the file.
#       See the next description for the file
# file: Name of the library that is used.  If the library is platform dependent
#       it must have suffixes such as: file.linux.gtk.x86
#       These suffixes are the same as those used by releng baseos,basews,basearch
#            baseos=linux or win32
#            basews=gtk or win32
#            basearch=x86
# name:  A short user-readable name for the library.
# description:  One line description for the library.
# autodownload: [optional] default true.  Set this to false if the file cannot be
#                downloaded automatically (i.e. requires license accept click through).
#                If autodownload is false, and the library is not available in the local
#                repository (cache), user must download the library and copy it into
#                the local repository.
# releng.url: [optional] Copies the original to a releng repository.  Useful for libraries
#                        that can get deleted from their original URLs.  Releng will use
#                        the local cache, original url, releng.url in that order to get the
#                        the dependency.  If a releng.url is not provided, the library will
#                        always be requested from its original site.
#
# Example:
# wtp.url=http://download.eclipse.org/webtools/downloads/drops/R-0.7-200507290654
# wtp.file=wtp-sdk-0.7.zip
# wtp.name=WTP 0.7 SDK
# wtp.description=WTP 0.7 SDK distribution
#######################################################################################


#######################################################################################
# Orbit dependency. 
# Note that this data is used for "display" only. 
# During the build, the required bundles are fetched based on the orbitBundles.map file.

orbitthirdpartyzip.build.dir=R20130517111416
orbitthirdpartyzip.build.id=R20130517111416

orbitthirdpartyzip.mirror.prefixuri=/tools/orbit/downloads/drops/${orbitthirdpartyzip.build.dir}
orbitthirdpartyzip.url=http://download.eclipse.org${orbitthirdpartyzip.mirror.prefixuri}
orbitthirdpartyzip.file=orbit-buildrepo-${orbitthirdpartyzip.build.id}.zip
orbitthirdpartyzip.name=Third Party code from Orbit.
orbitthirdpartyzip.description=Not technically required and contains much more than needed for WTP, but some committers like using it in a PDE runtime target.
orbitthirdpartyzip.build.home=http://download.eclipse.org/tools/orbit/

orbitthirdpartymap.url=http://download.eclipse.org${orbitthirdpartyzip.mirror.prefixuri}
orbitthirdpartymap.file=orbitBundles-${orbitthirdpartyzip.build.id}.map
orbitthirdpartymap.name=orbit thirdparty map
orbitthirdpartymap.description=orbit thirdparty map




#######################################################################################
# Eclipse builder used to run and compile the build
# groupID : eclipsebuilder
#eclipsebuilder.id=3.7.1
#eclipsebuilder.dir=R-3.7.1-201109091335
# updated builder as described in bug 369171
# https://bugs.eclipse.org/bugs/show_bug.cgi?id=369171
eclipsebuilder.id=3.8RC4
eclipsebuilder.dir=S-3.8RC4-201206081200
eclipsebuilder.name=Eclipse SDK
eclipsebuilder.description=(Platform, PDE, JDT)

eclipsebuilder.mirror.prefixuri=/eclipse/downloads/drops/${eclipsebuilder.dir}
eclipsebuilder.url=http://download.eclipse.org${eclipsebuilder.mirror.prefixuri}
eclipsebuilder.file.linux-gtk-x86=eclipse-SDK-${eclipsebuilder.id}-linux-gtk.tar.gz
eclipsebuilder.file.linux-gtk-ppc=eclipse-SDK-${eclipsebuilder.id}-linux-gtk-ppc.tar.gz
eclipsebuilder.file.win32-win32-x86=eclipse-SDK-${eclipsebuilder.id}-win32.zip
eclipsebuilder.file.macosx-carbon-ppc=eclipse-SDK-${eclipsebuilder.id}-macosx-carbon.tar.gz
eclipsebuilder.build.home=http://download.eclipse.org/eclipse/downloads/

#######################################################################################
# Eclipse builder used to run and compile the build
# groupID : egit
egit.id=updates-nightly
egit.dir=updates-nightly
egit.name=EGit
egit.description=EGit

egit.mirror.prefixuri=/egit/${gitFetchFactory.dir}
egit.repo=
egit.tobeinstalledfeaturegroups=org.eclipse.egit.feature.group
egit.url=http://download.eclipse.org${egit.mirror.prefixuri}
egit.build.home=http://download.eclipse.org/egit/downloads/

#######################################################################################
# Eclipse builder used to run and compile the build
# groupID : gitFetchFactory
gitFetchFactory.id=updates-nightly
gitFetchFactory.dir=updates-nightly
gitFetchFactory.name=Git Fetch Factory
gitFetchFactory.description=Git Fetch Factory

gitFetchFactory.mirror.prefixuri=/egit/pde/${gitFetchFactory.dir}
gitFetchFactory.repo=
gitFetchFactory.tobeinstalledfeaturegroups=org.eclipse.egit.fetchfactory.feature.group
gitFetchFactory.url=http://download.eclipse.org${gitFetchFactory.mirror.prefixuri}
gitFetchFactory.build.home=http://download.eclipse.org/egit/downloads/



#######################################################################################
# WTP builder tools that provide our custom build tasks
# groupID : wtpBuildTools
# Remember this is not (and could not be) the one that is built during the run. 
# If updates needed, can do a seperate run (of "wtpbuilder job") and promote that T-build specificially. 
wtpBuildTools.id=I-3.3.0-20110308040211
wtpBuildTools.dir.id=T3.3.0/I-3.3.0-20110308040211

wtpBuildTools.mirror.prefixuri=/webtools/downloads/drops/${wtpBuildTools.dir.id}
wtpBuildTools.file=

wtpBuildTools.repo=wtpbuildTools-repo-${wtpBuildTools.id}.zip
wtpBuildTools.tobeinstalledfeaturegroups=org.eclipse.wtp.releng.tools.feature.feature.group

wtpBuildTools.name=WTP Tools
wtpBuildTools.description=WTP Releng Buider Tools

wtpBuildTools.url=http://download.eclipse.org${wtpBuildTools.mirror.prefixuri}
wtpBuildTools.build.home=http://download.eclipse.org/webtools/downloads/

#######################################################################################
# Eclipse SDK Dependency
# groupID : eclipse

eclipse.id=4.3.2RC1
eclipse.dir=M-4.3.2RC1-201401170910
eclipse.name=Eclipse SDK v4.3.2 RC1
eclipse.description=(Platform, PDE, JDT)

eclipse.mirror.prefixuri=/eclipse/downloads/drops4/${eclipse.dir}
eclipse.url=http://download.eclipse.org${eclipse.mirror.prefixuri}
eclipse.file.linux-gtk-x86=eclipse-SDK-${eclipse.id}-linux-gtk.tar.gz
eclipse.file.linux-gtk-ppc=eclipse-SDK-${eclipse.id}-linux-gtk-ppc.tar.gz
eclipse.file.win32-win32-x86=eclipse-SDK-${eclipse.id}-win32.zip
eclipse.file.macosx-carbon-ppc=eclipse-SDK-${eclipse.id}-macosx-carbon.tar.gz
eclipse.build.home=http://download.eclipse.org/eclipse/downloads/

#######################################################################################

eclipseplatform.name=Eclipse Platform
eclipseplatform.description=(Platform Only) 
eclipseplatform.mirror.prefixuri=/eclipse/downloads/drops4/${eclipse.dir}
eclipseplatform.url=http://download.eclipse.org${eclipse.mirror.prefixuri}
eclipseplatform.file.linux-gtk-x86=eclipse-platform-${eclipse.id}-linux-gtk.tar.gz
eclipseplatform.file.linux-gtk-ppc=eclipse-platform-${eclipse.id}-linux-gtk-ppc.tar.gz
eclipseplatform.file.win32-win32-x86=eclipse-platform-${eclipse.id}-win32.zip
eclipseplatform.file.macosx-carbon-ppc=eclipse-platform-${eclipse.id}-macosx-carbon.tar.gz
eclipseplatform.build.home=http://download.eclipse.org/eclipse/downloads/
eclipseplatform.repo=org.eclipse.platform-${eclipse.id}.zip
#special temporary hack, specifically for https://bugs.eclipse.org/bugs/show_bug.cgi?id=337071
#eclipseplatform.tobeinstalledfeaturegroups=org.eclipse.help.appserver

#######################################################################################
# Eclipse Test Framework
# groupID : eclipseTestFramework

eclipseTestFramework.id=${eclipse.id}
eclipseTestFramework.url=http://download.eclipse.org${eclipse.mirror.prefixuri}
eclipseTestFramework.file=eclipse-test-framework-${eclipseTestFramework.id}.zip

eclipseTestFramework.repo=eclipse-test-framework-${eclipseTestFramework.id}.zip
eclipseTestFramework.tobeinstalledfeaturegroups=org.eclipse.test.feature.group

eclipseTestFramework.name=Eclipse Test Framework v3.7.
eclipseTestFramework.description=Infrastructure to assist running automated JUnits. Provided only as archived repository.
eclipseTestFramework.mirror.prefixuri=${eclipse.mirror.prefixuri}
eclipseTestFramework.build.home=${eclipse.build.home}

#######################################################################################
# Eclipse releng tool
# For display only. Purely a handy link for committers. Not used during build.

eclipsereleng.url=http://download.eclipse.org${eclipse.mirror.prefixuri}
eclipsereleng.file=org.eclipse.releng.tools-${eclipse.id}.zip
eclipsereleng.name=Eclipse Releng Tool v3.7.
eclipsereleng.description=Team tool to assist in releasing code. (provided as archived repository)
eclipsereleng.mirror.prefixuri=${eclipse.mirror.prefixuri}
eclipsereleng.build.home=${eclipse.build.home}

#######################################################################################
# Eclipse 4.3.2 SDK Dependency
# groupID : e4x

e4x.build.id=4.3.2RC1
e4x.build.dir=M-4.3.2RC1-201401170910

e4x.name=Eclipse SDK v4.3.2 RC1
e4x.description=(Platform, PDE, JDT, EMF Core)

e4x.mirror.prefixuri=/eclipse/downloads/drops4/${e4x.build.dir}
e4x.url=http://download.eclipse.org${e4x.mirror.prefixuri}
e4x.file.linux-gtk-x86=eclipse-SDK-${e4x.build.id}-linux-gtk.tar.gz
e4x.file.linux-gtk-ppc=eclipse-SDK-${e4x.build.id}-linux-gtk-ppc64.tar.gz
e4x.file.win32-win32-x86=eclipse-SDK-${e4x.build.id}-win32.zip
e4x.file.macosx-carbon-ppc=eclipse-SDK-${e4x.build.id}-macosx-carbon.tar.gz
e4x.build.home=http://download.eclipse.org/e4/sdk

#######################################################################################
# Eclipse Modeling Framework (EMF) and EMF XSD Dependency
# We used the "combined" emf and xsd distribution for convience.
# groupID : emfandxsd
# https://bugs.eclipse.org/bugs/show_bug.cgi?id=317256

emfandxsd.id=2.9.2
emfandxsd.dir.id=2.9.2/R201312120558

emfandxsd.mirror.prefixuri=/modeling/emf/emf/downloads/drops/${emfandxsd.dir.id}
emfandxsd.file=emf-xsd-SDK-${emfandxsd.id}.zip

emfandxsd.repo=emf-xsd-Update-${emfandxsd.id}.zip
emfandxsd.tobeinstalledfeaturegroups=org.eclipse.emf.sdk.feature.group,org.eclipse.xsd.sdk.feature.group

emfandxsd.name=EMF and XSD SDK
emfandxsd.description=Combined EMF and EMF-XSD SDK.

emfandxsd.url=http://download.eclipse.org${emfandxsd.mirror.prefixuri}
emfandxsd.build.home=http://www.eclipse.org/modeling/emf/downloads/


#######################################################################################
# Eclipse Modeling Framework (EMF) Transaction Dependency
# groupID : emftransaction

emftransaction.id=I201212112241
emftransaction.dir.id=I201212112241

emftransaction.mirror.prefixuri=/modeling/emf/transaction/downloads/drops/1.7.0/${emftransaction.dir.id}
emftransaction.file=emf-transaction-runtime-${emftransaction.id}.zip

emftransaction.repo=emf-transaction-Update-${emftransaction.id}.zip
#emftransaction.tobeinstalledfeaturegroups=org.eclipse.emf.transaction.feature.group,org.eclipse.emf.workspace.feature.group

emftransaction.name=EMF Transaction v1.7.0
emftransaction.description=(Required for JPA Diagram Editor)

emftransaction.url=http://download.eclipse.org${emftransaction.mirror.prefixuri}
emftransaction.build.home=http://www.eclipse.org/modeling/emf/downloads/?project=transaction


#######################################################################################
# Eclipse Modeling Framework (EMF) Validation Dependency
# groupID : emfvalidation

emfvalidation.id=I201212052000
emfvalidation.dir.id=I201212052000

emfvalidation.mirror.prefixuri=/modeling/emf/validation/downloads/drops/1.7.0/${emfvalidation.dir.id}
emfvalidation.file=emf-validation-runtime-${emfvalidation.id}.zip

emfvalidation.repo=emf-validation-Update-${emfvalidation.id}.zip
#emfvalidation.tobeinstalledfeaturegroups=org.eclipse.emf.validation.feature.group

emfvalidation.name=EMF Validation v1.7.0
emfvalidation.description=(Required for JPA Diagram Editor)

emfvalidation.url=http://download.eclipse.org${emfvalidation.mirror.prefixuri}
emfvalidation.build.home=http://www.eclipse.org/modeling/emf/downloads/?project=validation


#################################################################################
# Graphiti Dependency
# groupID : graphiti
graphiti.id=0.10.0.201306120936
graphiti.dir.id=0.10.0

graphiti.mirror.prefixuri=/graphiti/updates/${graphiti.dir.id}
graphiti.mirror.zip.prefixuri=/graphiti/archives/${graphiti.dir.id}
graphiti.file=org.eclipse.graphiti.site_0.10.0.201306120936.zip

graphiti.repo=org.eclipse.graphiti.site_${graphiti.id}.zip
graphiti.tobeinstalledfeaturegroups=org.eclipse.graphiti.feature.feature.group

graphiti.name=Graphiti v0.10.0
graphiti.description=(Required for JPA Diagram Editor)

graphiti.url=http://download.eclipse.org${graphiti.mirror.prefixuri}
graphiti.build.home=http://www.eclipse.org/graphiti/download.php


#######################################################################################

# Eclipse Graphical Editing Framework (GEF) Dependency
# groupID : gef

gef.id=3.9.0M7
gef.dir.id=3.9.0/S201305060205/

gef.mirror.prefixuri=/tools/gef/downloads/drops/${gef.dir.id}
gef.file=GEF-SDK-${gef.id}.zip

gef.repo=GEF-Update-${gef.id}.zip
#gef.tobeinstalledfeaturegroups=org.eclipse.gef.sdk.feature.group

gef.name=GEF SDK 3.9
gef.description=(GEF Code and Source)

gef.url=http://download.eclipse.org${gef.mirror.prefixuri}
gef.build.home=http://download.eclipse.org/tools/gef/downloads/

#######################################################################################
# Eclipse Data Tools Platform (DTP) Dependency
# groupID : dtp

dtp.mirror.prefixuri=/datatools/downloads/1.10
dtp.file=dtp-sdk_1.10.2.zip

dtp.repo=dtp-p2repo_1.10.2.zip
dtp.tobeinstalledfeaturegroups=org.eclipse.datatools.enablement.feature.feature.group,org.eclipse.datatools.sqldevtools.feature.feature.group,org.eclipse.datatools.connectivity.feature.feature.group

dtp.name=DTP sdk v1.10.2
dtp.description=(Code and Source)

dtp.url=http://download.eclipse.org${dtp.mirror.prefixuri}
dtp.build.home=http://www.eclipse.org/datatools/downloads.php

#######################################################################################
# SourceForge DITA-OT
# DITA zip to be downloaded
# DITA will be used for Eclipse Help
# groupID : dita
dita.url=http://osdn.dl.sourceforge.net/sourceforge/dita-ot/
dita.file=DITA-OT1.2.1_bin-ASL.zip
dita.name=SourceForge DITA-OT 1.2.1
dita.description=DITA-OT 1.2.1 Binary ASL Distribution

#######################################################################################
# Jakarta Tomcat Dependency
# tomcat zip to be downloaded
# Tomcat will be used for testing the distribution
# groupID : tomcat.5
tomcat.5.url=http://archive.apache.org/dist/tomcat/tomcat-5/v5.0.28/bin
tomcat.5.file=jakarta-tomcat-5.0.28.zip
tomcat.5.name=Jakarta Tomcat v5.0.28
tomcat.5.description=Jakarta Tomcat v5.0.28
#######################################################################################

#######################################################################################
# Apache Tomcat Dependency
# tomcat zip to be downloaded
# Tomcat will be used for testing the distribution
# groupID : tomcat.4
tomcat.4.url=http://archive.apache.org/dist/tomcat/tomcat-4/v4.1.36/bin
tomcat.4.file=apache-tomcat-4.1.36.zip
tomcat.4.name=Apache Tomcat v4.1.36
tomcat.4.description=${tomcat.4.name}
#######################################################################################

#######################################################################################
# ObjectWeb JOnAS Dependency
# jonas zip to be downloaded
# JOnAS will be used for testing the distribution
# groupID : jonas.4
jonas.4.url=http://download.forge.objectweb.org/jonas/
jonas.4.file=jonas4.3.2-tomcat5.0.30.tgz
jonas.4.name=ObjectWeb JOnAS Tomcat v4.3.2
jonas.4.description=ObjectWeb JOnAS Tomcat v4.3.2
#######################################################################################

#######################################################################################
# OAGIS Dependency
# oagis_release zip to be downloaded (CANNOT BE DOWNLOADED AUTOMATICALLY)
# oagis_release will be used for testing the distribution
# groupID : oagis.release
oagis.release.url=http://www.openapplications.org/downloads/oagis/rls80/
oagis.release.file=oagis_release_8.0_GA-withSP3.zip
oagis.release.autodownload=true
oagis.release.name=OAGIS Release v8.0 SP3
oagis.release.description=OAGIS Release v8.0 SP3
#######################################################################################

#######################################################################################
# OAGIS WSDL
# oagis_wsdl_8.0.zip to be downloaded (CANNOT BE DOWNLOADED AUTOMATICALLY)
# oagis_wdl will be used for testing the distribution
# groupID : oagis.wsdl
oagis.wsdl.url=http://www.openapplications.org/downloads/oagis/rls80
oagis.wsdl.file=WSDL_1.1_for%20OAGIS_8.0.zip
oagis.wsdl.autodownload=true
oagis.wsdl.name=OAGIS WSDL v8.0 SP3
oagis.wsdl.description=OAGIS WSDL v8.0 SP3
#######################################################################################

#######################################################################################
# Apache Derby
# Derby zip to be downloaded
# Derby will be used for performance testing
# groupID : derby
derby.url=http://cvs.apache.org/dist/incubator/derby/10.0.2.1
derby.file=incubating-derby-10.0.2.1-bin.zip
derby.name=Apache Derby 10.0.2.1
derby.description=Apache Derby 10.0.2.1
#######################################################################################

#######################################################################################
# JavaServer Faces(JSF) Runtime Library Dependency
# jsf runtime library zip to be downloaded
# JSF Runtime Library will be used for testing the JSF Tools features
# groupID : jsf.1_1
jsf.1_1.url=http://archive.apache.org/dist/myfaces/binaries/
jsf.1_1.file=myfaces-core-1.1.5-bin.zip
jsf.1_1.name=Apache MyFaces 1.1.5
jsf.1_1.description=Apache MyFaces 1.1.5 reference implementation libraries
#######################################################################################

#######################################################################################
# Java Persistence API Tools(JPT) Runtime Library Dependency
# EclipseLink library zip to be downloaded
# EclipseLink Library will be used for JUnit testing the Dali distribution
# groupID: eclipselink
eclipselink.url=http://download.eclipse.org/rt/eclipselink/milestones/2.5.1/RC1/
eclipselink.file=eclipselink-2.5.1.v20130824-981335c.zip
eclipselink.name=EclipseLink v2.5.1
eclipselink.description=EclipseLink libraries
#eclipselink.url=http://download.eclipse.org/rt/eclipselink/releases/2.4.0/
#eclipselink.file=eclipselink-2.4.0.v20120608-r11652.zip
########################################################################################


#URL to Web Tools downloads
# non-mirrored site: webtoolsDownloadURL=http://download.eclipse.org/webtools/downloads/drops
# use mirrored site as follows:
webtoolsDownloadURL=http://www.eclipse.org/downloads/download.php?file=/webtools/downloads/drops

eclipse.fspath.prefix=/home/data/httpd/download.eclipse.org



# WST or XML is required for XSL build

wst.file=wst-sdk-R-3.2.0-20100615235519.zip
wst.name=WST
wst.description=WST
wst.build.home=http://download.eclipse.org/webtools/downloads/drops/R3.2.0/R-3.2.0-20100615235519
wst.mirror.prefixuri=/webtools/downloads/drops/R3.2.0/R-3.2.0-20100615235519
wst.url=http://download.eclipse.org/${wst.mirror.prefixuri}


jst.file=wtp-jst-sdk-S-3.2.0M4-20091210120653.zip
jst.name=JST
jst.description=JST for prereqs
jst.build.home=${wst.build.home}
jst.mirror.prefixuri=${wst.mirror.prefixuri}
jst.url=${wst.url}

# WTP 
wtp.id=R-3.2.2-20100915173744
wtp.dir.id=R3.2.2/R-3.2.2-20100915173744
wtp.file=wtp-sdk-${wtp.id}.zip
wtp.name=WTP
wtp.description=Release used for Patch Builds
wtp.build.home=http://download.eclipse.org/webtools/downloads/
wtp.mirror.prefixuri=/webtools/downloads/drops/${wtp.dir.id}
wtp.url=http://download.eclipse.org${wtp.mirror.prefixuri}

# WTP tests, for patch builds
wtptests.id=${wtp.id}
wtptests.dir.id=${wtp.dir.id}
wtptests.file = wtp-tests-${wtptests.id}.zip
wtptests.name = WTP Tests 3.2.2
wtptests.description = WTP Tests 3.2.2 for Patch Builds
wtptests.build.home=http://download.eclipse.org/webtools/downloads/
wtptests.mirror.prefixuri=/webtools/downloads/drops/${wtptests.dir.id}
wtptests.url=http://download.eclipse.org${wtptests.mirror.prefixuri}


wtpandtests.id=${wtp.id}
wtpandtests.dir.id=${wtp.dir.id}
wtpandtests.repo = wtp-and-tests-buildrepo-${wtpandtests.id}.zip
wtpandtests.name = WTP Tests 3.2.2
wtpandtests.description = WTP Tests 3.2.2 for Patch Builds
wtpandtests.build.home=http://download.eclipse.org/webtools/downloads/
wtpandtests.mirror.prefixuri=/webtools/downloads/drops/${wtpandtests.dir.id}
wtpandtests.url=http://download.eclipse.org${wtpandtests.mirror.prefixuri}
wtpandtests.tobeinstalledfeaturegroups=org.eclipse.jpt.jpa.tests.feature.feature.group,org.eclipse.jpt.jpa.eclipselink.tests.feature.feature.group,org.eclipse.jpt.jaxb.tests.feature.feature.group,org.eclipse.jpt.jaxb.eclipselink.tests.feature.feature.group,org.eclipse.jpt.jpadiagrameditor.tests.feature.feature.group,org.eclipse.jst.enterprise_tests.feature.feature.group,org.eclipse.jst.jsf.tests.feature.feature.group,org.eclipse.jst.server_adapters.ext_tests.feature.feature.group,org.eclipse.jst.server_tests.feature.feature.group,org.eclipse.jst.web_tests.feature.feature.group,org.eclipse.jst.ws.cxf_tests.feature.feature.group,org.eclipse.jst.ws.jaxws.dom_tests.feature.feature.group,org.eclipse.jst.ws.jaxws_tests.feature.feature.group,org.eclipse.wst.common_tests.feature.feature.group,org.eclipse.wst.jsdt_tests.feature.feature.group,org.eclipse.wst.server_tests.feature.feature.group,org.eclipse.wst.web_tests.feature.feature.group,org.eclipse.wst.ws_tests.feature.feature.group,org.eclipse.wst.xml_tests.feature.feature.group,org.eclipse.wst.xsl_tests.feature.feature.group,org.eclipse.wtp.releng.tests.feature.feature.group,org.eclipse.wst.common.fproj.sdk.feature.group,org.eclipse.wst.jsdt_sdk.feature.feature.group,org.eclipse.wst.xml_sdk.feature.feature.group,org.eclipse.wst.web_sdk.feature.feature.group,org.eclipse.wst.xsl_sdk.feature.feature.group,org.eclipse.wst.server_adapters.sdk.feature.feature.group,org.eclipse.jst.common.fproj.enablement.jdt.sdk.feature.group,org.eclipse.jst.server_sdk.feature.feature.group,org.eclipse.jst.web_sdk.feature.feature.group,org.eclipse.jst.enterprise_sdk.feature.feature.group,org.eclipse.jst.server_adapters.sdk.feature.feature.group,org.eclipse.jst.server_adapters.ext.sdk.feature.feature.group,org.eclipse.jst.ws.axis2tools_sdk.feature.feature.group,org.eclipse.jst.ws.jaxws_sdk.feature.feature.group,org.eclipse.jst.ws.cxf_sdk.feature.feature.group,org.eclipse.jst.ws.jaxws.dom_sdk.feature.feature.group,org.eclipse.jst.jsf.apache.trinidad.tagsupport_sdk.feature.feature.group,org.eclipse.jst.webpageeditor_sdk.feature.feature.group,org.eclipse.jsf_sdk.feature.feature.group,org.eclipse.jpt_sdk.feature.feature.group,org.eclipse.jpt.eclipselink_sdk.feature.feature.group


### DLTK
dltk.mirror.prefixuri=/technology/dltk/downloads/drops/R1.0/M-M200911111238-200911111238/
dltk.file=dltk-core-sdk-M-M200911111238-200911111238.zip
dltk.name=DLTK sdk v1 

dltk.url=http://download.eclipse.org${dltk.mirror.prefixuri}
dltk.description=DLTK Code and Source.
dltk.build.home=http://download.eclipse.org/technology/dltk/downloads/

# WST or XML is required for XSL build

wst.file=wst-sdk-R-3.2.0-20100615235519.zip
wst.name=WST
wst.description=WST
wst.build.home=http://download.eclipse.org/webtools/downloads/drops/R3.2.0/R-3.2.0-20100615235519
wst.mirror.prefixuri=/webtools/downloads/drops/R3.2.0/R-3.2.0-20100615235519
wst.url=http://download.eclipse.org/${wst.mirror.prefixuri}

