<?xml version="1.0" encoding="UTF-8"?>
<?eclipse version="3.2"?><!--
  Copyright (c) 2007, 2010 Oracle. 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:
    Oracle - initial API and implementation
 -->

<plugin>

	<extension
		point="org.eclipse.jpt.jpa.ui.jpaPlatformUis">
		 
		<jpaPlatformUi
			id="org.eclipse.eclipselink.platform.ui"
			jpaPlatform="org.eclipse.eclipselink.platform"
			factoryClass="org.eclipse.jpt.jpa.eclipselink.ui.internal.platform.EclipseLinkJpaPlatformUiFactory"/>
			
		<jpaPlatformUi
			id="eclipselink1_1.ui"
			jpaPlatform="eclipselink1_1"
			factoryClass="org.eclipse.jpt.jpa.eclipselink.ui.internal.v1_1.platform.EclipseLink1_1JpaPlatformUiFactory"/>
			
		<jpaPlatformUi
			id="eclipselink1_2.ui"
			jpaPlatform="eclipselink1_2"
			factoryClass="org.eclipse.jpt.jpa.eclipselink.ui.internal.v1_2.platform.EclipseLink1_2JpaPlatformUiFactory"/>
		
		<jpaPlatformUi
			id="eclipselink2_0.ui"
			jpaPlatform="eclipselink2_0"
			factoryClass="org.eclipse.jpt.jpa.eclipselink.ui.internal.v2_0.platform.EclipseLink2_0JpaPlatformUiFactory"/>
		
		<jpaPlatformUi
			id="eclipselink2_1.ui"
			jpaPlatform="eclipselink2_1"
			factoryClass="org.eclipse.jpt.jpa.eclipselink.ui.internal.v2_1.platform.EclipseLink2_1JpaPlatformUiFactory"/>
		
		<jpaPlatformUi
			id="eclipselink2_2.ui"
			jpaPlatform="eclipselink2_2"
			factoryClass="org.eclipse.jpt.jpa.eclipselink.ui.internal.v2_2.platform.EclipseLink2_2JpaPlatformUiFactory"/>
		
	</extension>
	
	
	<extension
		point="org.eclipse.ui.newWizards">
		
		<category
			id="org.eclipse.jpt.jpa.eclipselink"
			name="%eclipseLinkWizardCategoryName"
			parentCategory="org.eclipse.jpt.jpa"/>
		
		<wizard
            id="org.eclipse.jpt.jpa.eclipselink.ui.wizard.newEclipseLinkMappingFile"
			name="%newEclipseLinkMappingFileWizardName"
			icon="platform:/plugin/org.eclipse.jpt.jpa.ui/icons/full/etool16/new_jpa_file_wiz.gif"
			category="org.eclipse.jpt/org.eclipse.jpt.jpa.eclipselink">
			<description>%newEclipseLinkJpaMappingFileWizardDesc</description>
			<class class="org.eclipse.jpt.jpa.eclipselink.ui.internal.wizards.EclipseLinkMappingFileWizard"> 
				<parameter name="javaeeartifact" value="true"/> 
				<parameter name="menuIndex" value="40" /> 
				<parameter name="jptartifact" value="true"/> 
			</class> 
		</wizard>
		    
	</extension>


	<extension
		point="org.eclipse.ui.navigator.navigatorContent">
		
		<commonWizard
			menuGroupId="org.eclipse.jpt.jpa.ui"
			type="new"
			wizardId="org.eclipse.jpt.jpa.eclipselink.ui.wizard.newEclipseLinkMappingFile">
			<enablement>
				<and>
					<or>
						<instanceof value="org.eclipse.core.resources.IProject"/>
                    	<instanceof value="org.eclipse.core.resources.IFolder"/>
						<instanceof value="org.eclipse.jdt.core.IPackageFragmentRoot"/>
						<instanceof value="org.eclipse.jdt.core.IPackageFragment"/>
					</or>
					<adapt type="org.eclipse.core.resources.IResource">
						<test 
							forcePluginActivation="true"
							property="org.eclipse.wst.common.project.facet.core.projectFacet"
							value="jpt.jpa" />
					</adapt>
					<test
						property="org.eclipse.jpt.jpa.core.jpaPlatformGroup"
						value="eclipselink">
					</test>
				</and>
			</enablement>
		</commonWizard>
		
	</extension>
	
	
	<extension
		point="org.eclipse.ui.perspectiveExtensions">
		
		<perspectiveExtension
			targetID="org.eclipse.jpt.ui.jpaPerspective">
			<newWizardShortcut
				id="org.eclipse.jpt.jpa.eclipselink.ui.wizard.newEclipseLinkMappingFile">
			</newWizardShortcut>
		</perspectiveExtension>
		
	</extension>
	
</plugin>
