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

<plugin id="org.eclipse.wst.server.core"
  name="%pluginName"
  version="3.0.0"
  provider-name="%providerName"
  class="org.eclipse.wst.server.core.internal.ServerPlugin">

  <requires>
    <import plugin="org.eclipse.core.runtime"/>
    <import plugin="org.eclipse.core.resources"/>
    <import plugin="org.eclipse.debug.core"/>
  </requires>

  <runtime>
    <library name="servercore.jar">
      <export name="*"/>
      <packages prefixes="org.eclipse.wst.server.core"/>
    </library>
  </runtime>

  <extension-point id="startup" name="%extensionPointServerStartup" schema="schema/startup.exsd"/>
  <extension-point id="moduleKinds" name="%extensionPointModuleKinds" schema="schema/moduleKinds.exsd"/>
  <extension-point id="runtimeTypes" name="%extensionPointRuntimeTypes" schema="schema/runtimeTypes.exsd"/>
  <extension-point id="runtimeTargetHandlers" name="%extensionPointRuntimeTargetHandlers" schema="schema/runtimeTargetHandlers.exsd"/>
  <extension-point id="runtimeLocators" name="%extensionPointRuntimeLocators" schema="schema/runtimeLocators.exsd"/>
  <extension-point id="serverTypes" name="%extensionPointServerTypes" schema="schema/serverTypes.exsd"/>
  <extension-point id="serverLocators" name="%extensionPointServerLocators" schema="schema/serverLocators.exsd"/>
  <extension-point id="serverConfigurationTypes" name="%extensionPointServerConfigurationTypes" schema="schema/serverConfigurationTypes.exsd"/>
  <extension-point id="publish" name="%extensionPointPublishManager" schema="schema/publishManager.exsd"/>
  <extension-point id="moduleFactories" name="%extensionPointModuleFactories" schema="schema/moduleFactories.exsd"/>
  <extension-point id="moduleObjectAdapters" name="%extensionPointModuleObjectAdapters" schema="schema/moduleObjectAdapters.exsd"/>
  <extension-point id="launchableAdapters" name="%extensionPointLaunchableAdapters" schema="schema/launchableAdapters.exsd"/>
  <extension-point id="clients" name="%extensionPointClients" schema="schema/clients.exsd"/>
  <extension-point id="serverTasks" name="%extensionPointServerTasks" schema="schema/serverTasks.exsd"/>
  <extension-point id="moduleTasks" name="%extensionPointModuleTasks" schema="schema/moduleTasks.exsd"/>
  <extension-point id="serverMonitors" name="%extensionPointServerMonitors" schema="schema/serverMonitors.exsd"/>

  <extension point="org.eclipse.core.resources.natures"
     id="nature"
     name="%serverProjectNatureTitle">
     <runtime>
        <run class="org.eclipse.wst.server.core.internal.ServerProjectNature">
        </run>
     </runtime>
  </extension>

  <extension point="org.eclipse.core.resources.builders"
     id="builder"
     name="%builderName">
     <builder>
        <run class="org.eclipse.wst.server.core.internal.ServerBuilder">
        </run>
     </builder>
  </extension>

  <extension point="org.eclipse.wst.server.core.publish">
     <publish
           name="%publisherFullName"
           description="%publisherFullDescription"
           class="org.eclipse.wst.server.core.internal.FullPublisher"
           id="org.eclipse.wst.server.core.publish.full">
     </publish>
     <publish
           name="%publisherSmartName"
           description="%publisherSmartDescription"
           class="org.eclipse.wst.server.core.internal.SmartPublisher"
           id="org.eclipse.wst.server.core.publish.smart">
     </publish>
  </extension>
  
  <extension point="org.eclipse.wst.server.core.moduleKinds">
    <moduleKind
       id="*"
       name="%moduleTypeUnknown"/>
  </extension>

  <extension point="org.eclipse.wst.server.core.moduleFactories">
     <moduleFactory
           projects="false"
           class="org.eclipse.wst.server.core.util.MissingModuleFactoryDelegate"
           id="org.eclipse.wst.server.core.missingModuleFactory">
     </moduleFactory>
  </extension>

   <extension point="org.eclipse.wst.server.core.clients">
     <client
           id="org.eclipse.wst.server.core.client.null"
           name="%nullLaunchableClient"
           description="%nullLaunchableClientDescription"
           class="org.eclipse.wst.server.core.util.NullLaunchableClient">
     </client>
  </extension>
</plugin>