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

    
<!-- ====================================================== -->
<!--                                                        -->
<!-- Purpose: Extension for the J2EE ACtion Sets            -->
<!-- Extension point: org.eclipse.ui.actionSets             -->
<!-- ====================================================== -->
   <extension
         point="org.eclipse.ui.actionSets">
      <actionSet
            label="%connectors.actionSet"
            description="%connectors.actionSet"
            visible="false"
            id="org.eclipse.jst.j2ee.J2eeMainActionSet4">
         <action
               label="%new.jca.module.description_ui_"
               icon="icons/full/ctool16/newconnectionprj_wiz.gif"
               tooltip="%new.jca.module.description_ui_"
               class="org.eclipse.jst.j2ee.jca.ui.internal.actions.NewConnectorComponentAction"
               toolbarPath="J2EEMain4"
               id="org.eclipse.jst.j2ee.jca.ui.internal.actions.NewConnectorComponent">
         </action>
      </actionSet>
	</extension>
   <!-- Connector Module Wizard -->
    <extension
         id="J2EEUIProjectWizards"
         point="org.eclipse.ui.newWizards">
      <category
            name="%jca.module_ui_"
            id="org.eclipse.jst.j2ee.jca.ui">
      </category>
      <wizard
            name="%connector_module_ui_"
            icon="icons/full/ctool16/newconnectionprj_wiz.gif"
            category="org.eclipse.jst.j2ee.internal"
            class="org.eclipse.jst.j2ee.jca.ui.internal.wizard.ConnectorComponentCreationWizard"
            project="true"
            finalPerspective="org.eclipse.jst.j2ee.J2EEPerspective"
            id="org.eclipse.jst.j2ee.jca.ui.ConnectorComponentCreationWizard">
         <description>
            %new.connector.module.description_ui_
         </description>
         <selection
               class="org.eclipse.core.resources.IResource">
         </selection>
      </wizard>
    </extension>
<!-- JCA Import Wizard --> 
   <extension
         point="org.eclipse.ui.importWizards">
      <wizard
            name="%connector.jar.file_ui_"
            icon="icons/full/ctool16/import_rar.gif"
            class="org.eclipse.jst.j2ee.jca.ui.internal.wizard.ConnectorComponentImportWizard"
            id="org.eclipse.jst.j2ee.jca.ui.ConnectorComponentImportWizard">
         <description>
            %connector.import.description_ui_
         </description>
         <selection
               class="org.eclipse.core.resources.IResource">
         </selection>
       </wizard>
     </extension>

<!-- JCA Export Wizard --> 
    <extension
         point="org.eclipse.ui.exportWizards">
     <wizard
            name="%connector.jar.file_ui_"
            icon="icons/full/ctool16/export_rar.gif"
            class="org.eclipse.jst.j2ee.jca.ui.internal.wizard.ConnectorComponentExportWizard"
            id="org.eclipse.jst.j2ee.jca.ui.ConnectorComponentExportWizard">
         <description>
            %connector.export.description_ui_
         </description>
         <selection
               class="org.eclipse.core.resources.IResource">
         </selection>
       </wizard>
     </extension>

<!-- Navigator Object Contributions --> 
<!-- Connector Group Contributions -->
   <extension
         point="org.eclipse.ui.popupMenus">
      <objectContribution
            objectClass="org.eclipse.wst.common.navigator.internal.groups.NavigatorGroup"
            id="org.eclipse.jst.j2ee.internal.ui.navigator.rarNewProjectActions">
         <action
               label="%jca.module_ui_"
               icon="icons/full/ctool16/newconnectionprj_wiz.gif"
               class="org.eclipse.jst.j2ee.jca.ui.internal.actions.NewConnectorComponentAction"
               menubarPath="org.eclipse.wst.common.frameworks.internal.navigator.new.menu/additions"
               enablesFor="1"
               id="org.eclipse.jst.j2ee.jca.ui.internal.actions.NewConnectorComponentAction">
         </action>
         <visibility>
            <objectState
                  name="projectNature"
                  value="org.eclipse.jst.j2ee.jca.ConnectorNature">
            </objectState>
         </visibility>
      </objectContribution>
      
      <objectContribution
            objectClass="org.eclipse.wst.common.navigator.internal.groups.NavigatorGroup"
            id="org.eclipse.jst.j2ee.internal.ui.navigator.rarProjectActions">
         <action
               label="%connector.jar.file_ui_"
               icon="icons/full/ctool16/import_rar.gif"
               class="org.eclipse.jst.j2ee.jca.ui.internal.actions.ImportRARAction"
               menubarPath="org.eclipse.wst.common.frameworks.internal.navigator.import.menu/additions"
               enablesFor="1"
               id="org.eclipse.jst.j2ee.jca.ui.internal.actions.ImportRARAction">
         </action>
         <action
               label="%connector.jar.file_ui_"
               icon="icons/full/ctool16/export_rar.gif"
               class="org.eclipse.jst.j2ee.jca.ui.internal.actions.ExportRARAction"
               menubarPath="org.eclipse.wst.common.frameworks.internal.navigator.export.menu/additions"
               enablesFor="1"
               id="org.eclipse.jst.j2ee.jca.ui.internal.actions.ExportRARAction">
         </action>
         <visibility>
            <objectState
                  name="projectNature"
                  value="org.eclipse.jst.j2ee.jca.ConnectorNature">
            </objectState>
         </visibility>
      </objectContribution>
   </extension>
   
    <extension
         point="org.eclipse.wst.common.navigator.workbench.commonWizard">
      <!-- Connector New -->
        <commonWizard
            type="new"
            wizardId="org.eclipse.jst.j2ee.jca.ui.ConnectorComponentCreationWizard">
         <enablement>
         <or>
               <objectClass
	                  name="org.eclipse.core.resources.IWorkspaceRoot">
	           </objectClass>
                <and>
                   <objectClass
	                     name="org.eclipse.core.resources.IProject">
	               </objectClass>
	               <or>
	                  <objectState
	                        name="projectNature"
	                        value="org.eclipse.wst.common.modulecore.ModuleCoreNature">
	                  </objectState>
	               </or> 
                </and> 
                <objectClass
                 name="org.eclipse.jst.j2ee.application.Application">
           	   </objectClass>
           	    <objectClass
                 name="org.eclipse.jst.j2ee.internal.provider.ModulesItemProvider">
           	   </objectClass>
           	   <objectClass
                 name="org.eclipse.jst.j2ee.application.Module">
           	   </objectClass>
            </or>
         </enablement>
       </commonWizard>
        <!-- Connector import -->
      <commonWizard
            type="import"
            wizardId="org.eclipse.jst.j2ee.jca.ui.ConnectorModuleImportWizard">
         <enablement>
          <or>
               <objectClass
	                  name="org.eclipse.core.resources.IWorkspaceRoot">
	           </objectClass>
               <and>
            	   <objectClass
                     name="org.eclipse.wst.common.navigator.internal.groups.NavigatorGroup">
               	   </objectClass>
               	   <objectState
                        name="projectNature"
                        value="org.eclipse.jst.j2ee.jca.ConnectorNature">
                  </objectState>
                </and>
                <and>
                   <objectClass
	                     name="org.eclipse.core.resources.IProject">
	               </objectClass>
	               <or>
	                  <objectState
	                        name="projectNature"
	                        value="org.eclipse.jst.j2ee.EARNature">
	                  </objectState>
	                  <objectState
	                        name="projectNature"
	                        value="org.eclipse.jst.j2ee.jca.ConnectorNature">
	                  </objectState>
	               </or> 
                </and> 
                  <objectClass
	                     name="org.eclipse.jst.j2ee.jca.internal.impl.ConnectorImpl">
	               </objectClass>
	                <objectClass
                 name="org.eclipse.jst.j2ee.application.internal.impl.ApplicationImpl">
           	   </objectClass>
           	    <objectClass
                 name="org.eclipse.jst.j2ee.internal.provider.ModulesItemProvider">
           	   </objectClass>
           	    <objectClass
                 name="org.eclipse.jst.j2ee.application.internal.impl.ModuleImpl">
           	   </objectClass>
           	     <objectClass
                 name="org.eclipse.jst.j2ee.jca.internal.impl.ResourceAdapterImpl">
           	   </objectClass>
           	   
           	                       
         </or>
         </enablement>
       </commonWizard>
         <!-- Connector Export -->
      <commonWizard
            type="export"
            wizardId="org.eclipse.jst.j2ee.jca.ui.ConnectorModuleExportWizard">
         <enablement>
         <or>
            <and>
               <or>
                  <objectClass
                     name="org.eclipse.wst.common.navigator.internal.groups.NavigatorGroup">
               	   </objectClass>
	               <objectClass
	                     name="org.eclipse.core.resources.IProject">
	               </objectClass>
               </or>
               <or>
                  <objectState
                        name="sNature"
                        value="org.eclipse.jst.j2ee.jca.ConnectorNature">
                  </objectState>
               </or>
            </and>     
             <objectClass
	                     name="org.eclipse.jst.j2ee.jca.internal.impl.ConnectorImpl">
	         </objectClass>     
	         <objectClass
                 name="org.eclipse.jst.j2ee.jca.internal.impl.ResourceAdapterImpl">
           	   </objectClass>  
            </or>
         </enablement>
       </commonWizard>
        <!-- Import Classes Wizard -->
        <commonWizard
            type="import"
            wizardId="org.eclipse.jst.j2ee.internal.wizard.ClassesImportWizard">
         <enablement>
          <or>
             <objectClass
	                     name="org.eclipse.jst.j2ee.jca.internal.impl.ConnectorImpl">
	         </objectClass>    
	              <objectClass
                 name="org.eclipse.jst.j2ee.jca.internal.impl.ResourceAdapterImpl">
           	   </objectClass>
           </or> 
         </enablement>
       </commonWizard>
    </extension>
</plugin>
