<?xml version="1.0" encoding="UTF-8"?>
<?eclipse version="3.4"?><!--
    Copyright (c) 2009 Tasktop Technologies and others.
    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
   
    Contributors:
         Tasktop Technologies - initial API and implementation
 -->

<plugin>
   <extension
         point="org.eclipse.mylyn.discovery.core.connectorDiscovery">
      <connectorCategory
            description="%connectorCategory.description"
            id="org.eclipse.mylyn.discovery.tests.connectorCategory1"
            name="%connectorCategory.name">
      </connectorCategory>
      <connectorDescriptor
            categoryId="org.eclipse.mylyn.discovery.tests.connectorCategory1"
            description="a fictitious test connector that does nothing"
            id="org.eclipse.mylyn.discovery.tests.connectorDescriptor1"
            kind="task"
            license="UTL (Unit Test License)"
            name="Test Connector"
            provider="UnitTesting"
            siteUrl="http://foo.nodomain/site">
      </connectorDescriptor>
      <connectorDescriptor
            categoryId="org.eclipse.mylyn.discovery.tests.connectorCategory1"
            description="Connector with id org.eclipse.mylyn.discovery.test1"
            id="org.eclipse.mylyn.discovery.test1"
            kind="task"
            license="License"
            name="Installable Test Connector"
            provider="Eclipse Mylyn"
            siteUrl="http://localhost/discovery/">
      </connectorDescriptor>
      <connectorDescriptor
            categoryId="org.eclipse.mylyn.discovery.tests.connectorCategory1"
            description="Connector with id org.eclipse.mylyn.discovery.2tests"
            id="org.eclipse.mylyn.discovery.2tests"
            kind="task"
            license="License"
            name="2 Installable Test Connector"
            provider="Eclipse Mylyn"
            siteUrl="http://localhost/discovery/">
         <iu
               id="org.eclipse.mylyn.discovery.test1">
         </iu>
         <iu
               id="org.eclipse.mylyn.discovery.test2">
         </iu>
      </connectorDescriptor>
      <certification
            id="org.eclipse.mylyn.discovery.tests.certification1"
            name="%certification.name"
            url="%certification.url">
         <description>
            %certification.description
         </description>
      </certification>
      <connectorDescriptor
            categoryId="org.eclipse.mylyn.discovery.tests.connectorCategory1"
            description="Tagged as Custom"
            id="org.eclipse.mylyn.discovery.test.tagged"
            kind="Custom"
            license="License"
            name="Tagged Connector"
            provider="Eclipse Mylyn"
            siteUrl="http://localhost/discovery/">
      </connectorDescriptor>
   </extension>
   <extension
         point="org.eclipse.ui.menus">
      <menuContribution
            locationURI="menu:help?after=additions">
         <command
               commandId="org.eclipse.equinox.p2.ui.discovery.commands.ShowBundleCatalog"
               label="Show Bundle Catalog..."
               style="push">
            <parameter
                  name="org.eclipse.equinox.p2.ui.discovery.commands.DirectoryParameter"
                  value="http://www.eclipse.org/mylyn/discovery/directory-3.3.xml">
            </parameter>
            <parameter
                  name="org.eclipse.equinox.p2.ui.discovery.commands.TagsParameter"
                  value="document=Documents,task=Tasks,vcs=Version Control">
            </parameter>
         </command>
         <command
               commandId="org.eclipse.equinox.p2.ui.discovery.commands.ShowRepositoryCatalog"
               label="Show Repository Catalog..."
               style="push">
            <parameter
                  name="org.eclipse.equinox.p2.ui.discovery.commands.RepositoryParameter"
                  value="http://download.eclipse.org/tools/mylyn/update/e3.4">
            </parameter>
         </command>
      </menuContribution>
   </extension>

</plugin>
