<?xml version="1.0" encoding="UTF-8"?>
<?eclipse version="3.0"?>
<!--
  Copyright (c) 2014, 2016 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="targletContainerListeners" name="Targlet Container Listeners" schema="schema/targletContainerListeners.exsd"/>

   <extension
         point="org.eclipse.pde.core.targetLocations">
      <targetLocation
            canUpdate="true"
            locationFactory="org.eclipse.oomph.targlets.internal.core.TargletContainer$Persistence"
            type="Targlet">
      </targetLocation>
   </extension>

   <extension
         point="org.eclipse.oomph.targlets.core.targletContainerListeners">
      <targletListener class="org.eclipse.oomph.targlets.internal.core.listeners.PomArtifactUpdater"/>
      <targletListener class="org.eclipse.oomph.targlets.internal.core.listeners.PomModulesUpdater"/>
      <targletListener class="org.eclipse.oomph.targlets.internal.core.listeners.TargetDefinitionGenerator"/>
   </extension>

   <extension
         point="org.eclipse.emf.ecore.protocol_parser">
      <parser
            class="org.eclipse.oomph.targlets.internal.core.TargletContainerResourceFactory"
            protocolName="targlet_container">
      </parser>
   </extension>

   <extension
         point="org.eclipse.jdt.core.classpathVariableInitializer">
      <classpathVariableInitializer
            class="org.eclipse.oomph.targlets.internal.core.variables.TargetPlatformBundlePoolInitializer"
            readOnly="true"
            variable="TARGET_PLATFORM_BUNDLE_POOL">
      </classpathVariableInitializer>
   </extension>

   <extension
         point="org.eclipse.core.variables.dynamicVariables">
      <variable
            description="Targlet Container Profile ID"
            name="targlet_container_profile_id"
            resolver="org.eclipse.oomph.targlets.internal.core.variables.TargletContainerProfileID"
            supportsArgument="true"/>
      <variable
            description="Targlet Container Profile File"
            name="targlet_container_profile_file"
            resolver="org.eclipse.oomph.targlets.internal.core.variables.TargletContainerProfileFile"
            supportsArgument="true"/>
      <variable
            description="Targlet Container Profile Directory"
            name="targlet_container_profile_directory"
            resolver="org.eclipse.oomph.targlets.internal.core.variables.TargletContainerProfileDirectory"
            supportsArgument="true"/>
      <variable
            description="Targlet Container Bundle Pool"
            name="targlet_container_bundle_pool"
            resolver="org.eclipse.oomph.targlets.internal.core.variables.TargletContainerBundlePool"
            supportsArgument="true"/>
      <variable
            description="Targlet Container Classpath"
            name="targlet_container_classpath"
            resolver="org.eclipse.oomph.targlets.internal.core.variables.TargletContainerClasspath"
            supportsArgument="true"/>
      <variable
            description="Targlet Container Classpath File"
            name="targlet_container_classpath_file"
            resolver="org.eclipse.oomph.targlets.internal.core.variables.TargletContainerClasspathFile"
            supportsArgument="true"/>
   </extension>

</plugin>
