<?xml version="1.0" encoding="UTF-8"?>
<?eclipse version="3.4"?><!--
      Copyright (c) 2010 Eteration A.S. 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:
         Naci Dai and Murat Yener, Eteration A.S. - Initial API and implementation
 -->
<plugin>  
   <extension
         point="org.eclipse.wst.server.core.runtimeTypes">
      <runtimeType
            id="org.eclipse.libra.framework.jonas.runtimeType"
            name="%runtimeTypeJonasLabel"
            description="%runtimeTypeJonasDescription"
            vendor="%libra"
            version="2.0"
            class="org.eclipse.libra.framework.jonas.JonasFramework">
		    <moduleType
		         types="osgi.bundle"
		         versions="4.2"/>     
		        <moduleType
		         types="java"
		         versions="1.6"/>  
		    <moduleType
		         types="java"
		         versions="1.5"/>
      </runtimeType>
 </extension>
  <extension point="org.eclipse.wst.server.core.runtimeLocators">
    <runtimeLocator
       id="org.eclipse.libra.framework.jonas.runtime.locator"
       typeIds="org.eclipse.libra.framework.jonas.runtimeType.*"
       class="org.eclipse.libra.framework.core.OSGIFrameworkLocatorDelegate"/>
  </extension>

  <extension point="org.eclipse.jst.server.core.runtimeClasspathProviders">
     <runtimeClasspathProvider
        id="org.eclipse.libra.framework.jonas.runtimeTarget"
        runtimeTypeIds="org.eclipse.libra.framework.jonas.runtimeType"
        class="org.eclipse.libra.framework.jonas.internal.JonasFrameworkClasspathProvider"/>
   </extension>
   
   
   <extension
         point="org.eclipse.wst.server.core.serverTypes">
      <serverType
            id="org.eclipse.libra.framework.jonas.serverType"
            name="%runtimeInstanceTypeJonasLabel"
            description="%runtimeInstanceTypeJonasDescription"
            supportsRemoteHosts="false"
            runtime="true"
            startTimeout="120000"
            stopTimeout="120000"
            initialState="stopped"
            startBeforePublish="false"
            hasConfiguration="true"
            launchConfigId="org.eclipse.libra.framework.jonas.launchConfigurationType"
            runtimeTypeId="org.eclipse.libra.framework.jonas.runtimeType"           
            class="org.eclipse.libra.framework.jonas.JonasFrameworkInstance"
            behaviourClass="org.eclipse.libra.framework.jonas.internal.JonasFrameworkInstanceBehavior">
      </serverType>
   </extension>


  <extension point="org.eclipse.wst.server.core.serverLocators">
    <serverLocator
       id="org.eclipse.libra.framework.jonas.server.locator"
       supportsRemoteHosts="false"
       typeIds="org.eclipse.libra.framework.jonas.serverType"
       class="org.eclipse.libra.framework.core.OSGIFrameworkInstanceLocatorDelegate"/>
  </extension>

  <extension point="org.eclipse.wst.server.core.launchableAdapters">
     <launchableAdapter
        class="org.eclipse.libra.framework.core.launching.LaunchableAdapterDelegate"
        id="org.eclipse.libra.framework.jonas.osgi"/>
  </extension>

  <extension point="org.eclipse.debug.core.sourcePathComputers">
     <sourcePathComputer
        id="org.eclipse.libra.framework.jonas.sourcePathComputer"
        class="org.eclipse.libra.framework.core.internal.debug.OSGIFrameworkSourcePathComputerDelegate"/>
  </extension>

  <extension point="org.eclipse.debug.core.launchConfigurationTypes">
     <launchConfigurationType
        id="org.eclipse.libra.framework.jonas.launchConfigurationType"
        name="%jonasLaunchConfigurationType"
        delegate="org.eclipse.libra.framework.core.launching.LaunchConfigurationDelegate"
        modes="run, debug, profile"
        sourceLocatorId="org.eclipse.jdt.launching.sourceLocator.JavaSourceLookupDirector"
        sourcePathComputerId="org.eclipse.libra.framework.jonas.sourcePathComputer"/>
  </extension>

  <extension point="org.eclipse.wst.server.core.publishTasks">
     <publishTask
        id="org.eclipse.libra.framework.jonas.publishTask"
        typeIds="org.eclipse.libra.framework.jonas.serverType"
        class="org.eclipse.libra.framework.core.publish.PublishTask"/>
  </extension>

  <extension point="org.eclipse.wst.common.project.facet.core.runtimes">
    <runtime-component-type
       id="org.eclipse.libra.framework.jonas.runtimeType"/>

    <runtime-component-version
       type="org.eclipse.libra.framework.jonas.runtimeType"
       version="6.0"/>
 
    <adapter>
      <runtime-component
         id="org.eclipse.libra.framework.jonas.runtimeType"/>
      <factory
         class="org.eclipse.jst.server.core.internal.RuntimeClasspathProvider$Factory"/>
      <type
         class="org.eclipse.jst.common.project.facet.core.IClasspathProvider"/>
    </adapter>
  <supported>
    <runtime-component id="org.eclipse.libra.framework.jonas.runtimeType"/>
    <facet id="osgi.bundle" />
  </supported>
      
  </extension>
                    
  <extension point="org.eclipse.wst.common.project.facet.core.defaultFacets">
    <default-facets>
    <runtime-component id="org.eclipse.libra.framework.jonas.runtimeType">
         </runtime-component>
         <facet
               id="osgi.bundle" version="4.2">
         </facet>
    </default-facets>
  </extension>
  
  <extension point="org.eclipse.jst.server.core.runtimeFacetMappings">
    <runtimeFacetMapping
      runtimeTypeId="org.eclipse.libra.framework.jonas.runtimeType"
      runtime-component="org.eclipse.libra.framework.jonas.runtimeType"
      version="6.0"/>
  </extension>
  <extension point="org.eclipse.wst.server.core.installableRuntimes">
    <runtime
      id="org.eclipse.libra.framework.jonas.runtimeType"
      licenseUrl="http://www.gnu.org/licenses/lgpl-2.1.html"
      archiveUrl="http://download.forge.objectweb.org/jonas/micro-jonas-5.3.0-M2-bin.zip"
      archivePath="micro-jonas-5.3.0-M2"
      os="win32"/>
   <runtime
      id="org.eclipse.libra.framework.jonas.runtimeType"
      licenseUrl="http://www.gnu.org/licenses/lgpl-2.1.html"
      archiveUrl="http://download.forge.objectweb.org/jonas/micro-jonas-5.3.0-M2-bin.tar.gz"
      archivePath="micro-jonas-5.3.0-M2"
      os="linux"/>
   <runtime
      id="org.eclipse.libra.framework.jonas.runtimeType"
      licenseUrl="http://www.gnu.org/licenses/lgpl-2.1.html"
      archiveUrl="http://download.forge.objectweb.org/jonas/micro-jonas-5.3.0-M2-bin.tar.gz"
      archivePath="micro-jonas-5.3.0-M2"
      os="macosx"/>     
  </extension>
  
</plugin>