<?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.ui.jpaPlatformUis">
		 
		<jpaPlatformUi
			id="org.eclipse.eclipselink.platform.ui"
			jpaPlatform="org.eclipse.eclipselink.platform"
			factoryClass="org.eclipse.jpt.eclipselink.ui.internal.platform.EclipseLinkJpaPlatformUiFactory"/>
			
		<jpaPlatformUi
			id="eclipselink1_1.ui"
			jpaPlatform="eclipselink1_1"
			factoryClass="org.eclipse.jpt.eclipselink.ui.internal.v1_1.platform.EclipseLink1_1JpaPlatformUiFactory"/>
			
		<jpaPlatformUi
			id="eclipselink1_2.ui"
			jpaPlatform="eclipselink1_2"
			factoryClass="org.eclipse.jpt.eclipselink.ui.internal.v1_2.platform.EclipseLink1_2JpaPlatformUiFactory"/>
		
		<jpaPlatformUi
			id="eclipselink2_0.ui"
			jpaPlatform="eclipselink2_0"
			factoryClass="org.eclipse.jpt.eclipselink.ui.internal.v2_0.platform.EclipseLink2_0JpaPlatformUiFactory"/>
		
		<jpaPlatformUi
			id="eclipselink2_1.ui"
			jpaPlatform="eclipselink2_1"
			factoryClass="org.eclipse.jpt.eclipselink.ui.internal.v2_1.platform.EclipseLink2_1JpaPlatformUiFactory"/>
		
		<jpaPlatformUi
			id="eclipselink2_2.ui"
			jpaPlatform="eclipselink2_2"
			factoryClass="org.eclipse.jpt.eclipselink.ui.internal.v2_2.platform.EclipseLink2_2JpaPlatformUiFactory"/>
		
	</extension>
	
	
	<extension
		point="org.eclipse.ui.newWizards">
		
		<category
			id="org.eclipse.jpt.eclipselink"
			name="%eclipseLinkWizardCategoryName"
			parentCategory="org.eclipse.jpt"/>
		
		<wizard
            id="org.eclipse.jpt.eclipselink.ui.wizard.newEclipseLinkMappingFile"
			name="%newEclipseLinkMappingFileWizardName"
			icon="platform:/plugin/org.eclipse.jpt.ui/icons/full/etool16/new_jpa_file_wiz.gif"
			category="org.eclipse.jpt/org.eclipse.jpt.eclipselink">
			<description>%newEclipseLinkJpaMappingFileWizardDesc</description>
			<class class="org.eclipse.jpt.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.ui"
			type="new"
			wizardId="org.eclipse.jpt.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.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.eclipselink.ui.wizard.newEclipseLinkMappingFile">
			</newWizardShortcut>
		</perspectiveExtension>
		
	</extension>
	
</plugin>
