<?xml version="1.0" encoding="UTF-8"?>
<?eclipse version="3.0"?>

<!--
 Copyright (c) 2004 - 2008 Eike Stepper, Germany.
 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:
    Eike Stepper - initial API and implementation

 $Id: plugin.xml,v 1.1 2008-08-08 10:10:35 estepper Exp $
-->

<plugin>

   <extension point="org.eclipse.emf.edit.itemProviderAdapterFactories">
      <factory
            uri="http://www.eclipse.org/pop/project/1.0.0"
            class="org.eclipse.net4j.pop.project.provider.ProjectItemProviderAdapterFactory"
            supportedTypes=
              "org.eclipse.emf.edit.provider.IEditingDomainItemProvider
               org.eclipse.emf.edit.provider.IStructuredItemContentProvider
               org.eclipse.emf.edit.provider.ITreeItemContentProvider
               org.eclipse.emf.edit.provider.IItemLabelProvider
               org.eclipse.emf.edit.provider.IItemPropertySource
               org.eclipse.emf.edit.provider.IItemColorProvider
               org.eclipse.emf.edit.provider.IItemFontProvider"/>
   </extension>

   <extension point="org.eclipse.emf.ecore.generated_package">
      <package
            uri="http://www.eclipse.org/pop/project/1.0.0"
            class="org.eclipse.net4j.pop.project.ProjectPackage"
            genModel="model/Project.genmodel"/>
   </extension>

   <extension point="org.eclipse.emf.ecore.content_parser">
      <parser
            contentTypeIdentifier="pop.project"
            class="org.eclipse.emf.ecore.xmi.impl.XMIResourceFactoryImpl"/>
   </extension>

   <extension point="org.eclipse.core.runtime.contentTypes">
      <content-type
            base-type="org.eclipse.emf.ecore.xmi"
            file-extensions="xml"
            id="pop.project"
            name="%_UI_Project_content_type"
            priority="normal">
         <describer class="org.eclipse.emf.ecore.xmi.impl.RootXMLContentHandlerImpl$Describer">
            <parameter name="namespace" value="http://www.eclipse.org/pop/project/1.0.0"/>
            <parameter name="kind" value="xmi"/>
         </describer>
      </content-type>
   </extension>

</plugin>
