<?xml version="1.0" encoding="UTF-8"?>
<configuration>
  <!-- Package Description information to be picked up by www.eclipse.org/packages -->
  <!-- PackageName is the title of your package 
       maintainer is the project or persons that are maintaining the package
       iconurl is the fully qualified URL to the icon you wish to use on the site (48x48)
       bugzillaComponentID is used to gather bugzilla information about your package.  This should be given to you after provisioning of the package is finished
       testPlan is the fully qualified URL to the test plan for this package
   -->
  <packageMetaData
   packageName="Eclipse IDE for Java and Report Developers"
   maintainer="Eclipse BIRT Project and the Eclipse Packaging Project"
   iconurl="http://www.eclipse.org/downloads/images/birt-icon_48x48.png"
   bugzillaComponentId="reporting-package"
   testPlan="http://www.eclipse.org/epp/testplan.php" >
    <!-- Description is wrapped in CDATA tags to allow you to insert HTML code if necessary -->
     <description><![CDATA[Java EE tools and BIRT reporting tool for Java developers to create Java EE and Web applications that also have reporting needs.]]></description>
    <!-- packageTesters is a list of the people that are testing the package -->
     <packageTesters>
      <tester>Roshanak Afsarifard</tester>
    </packageTesters>
  </packageMetaData>
  <MoreInfo>
  <NewAndNoteworthy
    url="https://www.eclipse.org/birt/"
    project="Eclipse BIRT Project" />
  <NewAndNoteworthy
    url="https://www.eclipse.org/webtools/development/news/main.php"
    project="Eclipse Webtools Project" />
  <NewAndNoteworthy
    url="https://www.eclipse.org/eclipse/news/4.8/"
    project="Eclipse Platform" />
  <NewAndNoteworthy
    url="https://www.eclipse.org/mylyn/new/"
    project="Eclipse Mylyn" />
  </MoreInfo>

  <!-- version, the RCP version to build. This is used to determine the file 
    name of the root file archives -->
  <rcp version="4.9.0" />

  <!-- name, the name of the product, used in naming the created files. -->
  <product name="eclipse-reporting-2018-09-M2" />

</configuration>
