<?xml version="1.0" encoding="UTF-8"?>
<?eclipse version="3.0"?>
<!--
  Copyright (c) 2014, 2015 Eike Stepper (Loehne, Germany) and others.
  All rights reserved. This program and the accompanying materials
  are made available under the terms of the Eclipse Public License v2.0
  which accompanies this distribution, and is available at
  http://www.eclipse.org/legal/epl-v20.html

  Contributors:
    Eike Stepper - initial API and implementation
-->

<plugin>

   <extension-point id="preferenceHandlerFactories" name="Preference Handler Factories" schema="schema/preferenceHandlerFactories.exsd"/>

   <extension point="org.eclipse.emf.ecore.generated_package">
      <!-- @generated setup -->
      <package
            uri="http://www.eclipse.org/oomph/setup/1.0"
            class="org.eclipse.oomph.setup.SetupPackage"
            genModel="model/Setup.genmodel"/>
   </extension>

   <extension
         point="org.eclipse.emf.ecore.content_parser">
      <parser
            class="org.eclipse.oomph.base.util.BaseResourceFactoryImpl"
            contentTypeIdentifier="org.eclipse.oomph.setup">
      </parser>
   </extension>

   <extension
         point="org.eclipse.core.variables.dynamicVariables">
      <variable
            description="Converts a file system path to a file: URI. The argument itself can contain a variables that will be resolved recursively,e.g., ${file_uri:${project_loc:my project}}."
            name="file_uri"
            resolver="org.eclipse.oomph.internal.setup.URIVariableResolver"
            supportsArgument="true">
      </variable>
   </extension>
   
   <extension
        point="org.eclipse.core.contenttype.contentTypes">
     <content-type
           base-type="org.eclipse.emf.ecore.xmi"
           file-extensions="setup"
           id="org.eclipse.oomph.setup"
           name="%_UI_Setup_content_type"
           priority="normal">
        <describer
              class="org.eclipse.emf.ecore.xmi.impl.RootXMLContentHandlerImpl$Describer">
           <parameter
                 name="namespace"
                 value="http://www.eclipse.org/oomph/setup/1.0">
           </parameter>
           <parameter
                 name="kind"
                 value="xmi">
           </parameter>
        </describer>
     </content-type>
   </extension>

</plugin>
