Download
Getting Started
Members
Projects
Community
Marketplace
Events
Planet Eclipse
Newsletter
Videos
Participate
Report a Bug
Forums
Mailing Lists
Wiki
IRC
How to Contribute
Working Groups
Automotive
Internet of Things
LocationTech
Long-Term Support
PolarSys
Science
OpenMDM
More
Community
Marketplace
Events
Planet Eclipse
Newsletter
Videos
Participate
Report a Bug
Forums
Mailing Lists
Wiki
IRC
How to Contribute
Working Groups
Automotive
Internet of Things
LocationTech
Long-Term Support
PolarSys
Science
OpenMDM
Toggle navigation
Bugzilla – Attachment 152909 Details for
Bug 295946
Create a default ModelProviderFactory for Connector 1.6
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Requests
|
Help
|
Log In
[x]
|
Terms of Use
|
Copyright Agent
Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read
this important communication.
[patch]
Create a default Connector16ModelProviderFactory
bug295946.patch (text/plain), 28.62 KB, created by
Carl Anderson
on 2009-11-23 18:02:15 EST
(
hide
)
Description:
Create a default Connector16ModelProviderFactory
Filename:
MIME Type:
Creator:
Carl Anderson
Created:
2009-11-23 18:02:15 EST
Size:
28.62 KB
patch
obsolete
>### Eclipse Workspace Patch 1.0 >#P org.eclipse.jst.j2ee.web >Index: webproject/org/eclipse/jst/j2ee/web/project/facet/WebFacetInstallDelegate.java >=================================================================== >RCS file: /cvsroot/webtools/jeetools/plugins/org.eclipse.jst.j2ee.web/webproject/org/eclipse/jst/j2ee/web/project/facet/WebFacetInstallDelegate.java,v >retrieving revision 1.49 >diff -u -r1.49 WebFacetInstallDelegate.java >--- webproject/org/eclipse/jst/j2ee/web/project/facet/WebFacetInstallDelegate.java 29 Oct 2009 15:32:16 -0000 1.49 >+++ webproject/org/eclipse/jst/j2ee/web/project/facet/WebFacetInstallDelegate.java 23 Nov 2009 23:00:58 -0000 >@@ -215,7 +215,7 @@ > final String webXmlContents = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<web-app id=\"WebApp_ID\" version=\"3.0\" xmlns=\"http://java.sun.com/xml/ns/javaee\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xsi:schemaLocation=\"http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd\">\n</web-app>"; //$NON-NLS-1$ > webxmlFile.create(new ByteArrayInputStream(webXmlContents.getBytes("UTF-8")), true, monitor); //$NON-NLS-1$ > >- // TODO do some stuff with the module >+ populateDefaultContent(project, fv); > } catch (UnsupportedEncodingException e) { > WebPlugin.logError(e); > } >@@ -232,39 +232,45 @@ > final String webXmlContents = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<web-app id=\"WebApp_ID\" version=\"2.5\" xmlns=\"http://java.sun.com/xml/ns/javaee\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xsi:schemaLocation=\"http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd\">\n</web-app>"; //$NON-NLS-1$ > webxmlFile.create(new ByteArrayInputStream(webXmlContents.getBytes("UTF-8")), true, monitor); //$NON-NLS-1$ > >- final IModelProvider provider = ModelProviderManager.getModelProvider(project, fv); >- Runnable runnable = new Runnable(){ >- >- public void run() { >- WebApp webApp = (WebApp) provider.getModelObject(); >- >- // Add the display-name tag >- DisplayName displayName = JavaeeFactory.eINSTANCE.createDisplayName(); >- displayName.setValue(project.getName()); >- webApp.getDisplayNames().add(displayName); >- >- // welcome file list >- List<String> welcomeFiles = Arrays.asList( >- "index.html", //$NON-NLS-1$ >- "index.htm", //$NON-NLS-1$ >- "index.jsp", //$NON-NLS-1$ >- "default.html", //$NON-NLS-1$ >- "default.htm", //$NON-NLS-1$ >- "default.jsp" //$NON-NLS-1$ >- ); >- >- // Add the welcome-file-list tag >- WelcomeFileList welcomeFileList = WebFactory.eINSTANCE.createWelcomeFileList(); >- welcomeFileList.getWelcomeFiles().addAll(welcomeFiles); >- webApp.getWelcomeFileLists().add(welcomeFileList); >- } >- }; >- provider.modify(runnable, null); >+ populateDefaultContent(project, fv); > } catch (UnsupportedEncodingException e) { > WebPlugin.logError(e); > } > } > } >+ >+ >+ private void populateDefaultContent(final IProject project, >+ final IProjectFacetVersion fv) { >+ final IModelProvider provider = ModelProviderManager.getModelProvider(project, fv); >+ Runnable runnable = new Runnable(){ >+ >+ public void run() { >+ WebApp webApp = (WebApp) provider.getModelObject(); >+ >+ // Add the display-name tag >+ DisplayName displayName = JavaeeFactory.eINSTANCE.createDisplayName(); >+ displayName.setValue(project.getName()); >+ webApp.getDisplayNames().add(displayName); >+ >+ // welcome file list >+ List<String> welcomeFiles = Arrays.asList( >+ "index.html", //$NON-NLS-1$ >+ "index.htm", //$NON-NLS-1$ >+ "index.jsp", //$NON-NLS-1$ >+ "default.html", //$NON-NLS-1$ >+ "default.htm", //$NON-NLS-1$ >+ "default.jsp" //$NON-NLS-1$ >+ ); >+ >+ // Add the welcome-file-list tag >+ WelcomeFileList welcomeFileList = WebFactory.eINSTANCE.createWelcomeFileList(); >+ welcomeFileList.getWelcomeFiles().addAll(welcomeFiles); >+ webApp.getWelcomeFileLists().add(welcomeFileList); >+ } >+ }; >+ provider.modify(runnable, null); >+ } > > > private static void mkdirs(final IFolder folder) >#P org.eclipse.jst.j2ee.tests >Index: j2ee-tests/org/eclipse/jst/jee/model/tests/JEE6ModelTest.java >=================================================================== >RCS file: /cvsroot/webtools/jeetools/tests/org.eclipse.jst.j2ee.tests/j2ee-tests/org/eclipse/jst/jee/model/tests/JEE6ModelTest.java,v >retrieving revision 1.2 >diff -u -r1.2 JEE6ModelTest.java >--- j2ee-tests/org/eclipse/jst/jee/model/tests/JEE6ModelTest.java 20 Oct 2009 13:39:20 -0000 1.2 >+++ j2ee-tests/org/eclipse/jst/jee/model/tests/JEE6ModelTest.java 23 Nov 2009 23:00:59 -0000 >@@ -45,6 +45,7 @@ > import org.eclipse.jst.j2ee.internal.common.J2EEVersionUtil; > import org.eclipse.jst.j2ee.internal.plugin.J2EEPlugin; > import org.eclipse.jst.j2ee.internal.plugin.J2EEPreferences; >+import org.eclipse.jst.j2ee.jca.project.facet.IConnectorFacetInstallDataModelProperties; > import org.eclipse.jst.j2ee.project.facet.IAppClientFacetInstallDataModelProperties; > import org.eclipse.jst.j2ee.project.facet.IJ2EEFacetInstallDataModelProperties; > import org.eclipse.jst.j2ee.web.project.facet.IWebFacetInstallDataModelProperties; >@@ -54,6 +55,8 @@ > import org.eclipse.jst.javaee.applicationclient.internal.util.ApplicationclientResourceImpl; > import org.eclipse.jst.javaee.ejb.EJBJar; > import org.eclipse.jst.javaee.ejb.internal.util.EjbResourceImpl; >+import org.eclipse.jst.javaee.jca.Connector; >+import org.eclipse.jst.javaee.jca.internal.util.JcaResourceImpl; > import org.eclipse.jst.javaee.web.WebApp; > import org.eclipse.jst.javaee.web.internal.util.WebResourceImpl; > import org.eclipse.wst.common.componentcore.datamodel.properties.IFacetDataModelProperties; >@@ -263,6 +266,26 @@ > } > > } >+public void testConnectorModel() throws Exception { >+ >+ String projName = "TestEE6ConnectorProject";//$NON-NLS-1$ >+ createConnectorProject(projName); >+ >+ EMFAttributeFeatureGenerator.reset(); >+ String modelPathURI = J2EEConstants.RAR_DD_URI; >+ URI uri = URI.createURI(J2EEPlugin.getDefault().getJ2EEPreferences().getString(J2EEPreferences.Keys.JCA_CONTENT_FOLDER) + "/" + modelPathURI); >+ ProjectResourceSet resSet = getResourceSet(projName); >+ >+ JcaResourceImpl connectorRes = (JcaResourceImpl) resSet.getResource(uri,true); >+ Assert.assertTrue(connectorRes.getContents().size() > 0); >+ >+ if (connectorRes.getContents().size() > 0) { >+ Connector connector = connectorRes.getConnector(); >+ populateRoot((EObjectImpl)connector); >+ connectorRes.save(null); >+ } >+ >+} > public void testWarModel() throws Exception { > > String projName = "TestEE6WarProject";//$NON-NLS-1$ >@@ -324,8 +347,8 @@ > addVersionProperties(dataModel, projName, facetVersion,IJ2EEFacetInstallDataModelProperties.ENTERPRISE_APPLICATION); > dataModel.setProperty(IFacetDataModelProperties.FACET_PROJECT_NAME, projName); > dataModel.getDefaultOperation().execute( new NullProgressMonitor(), null); >- IProject webProj = ResourcesPlugin.getWorkspace().getRoot().getProject(projName); >- return webProj; >+ IProject earProj = ResourcesPlugin.getWorkspace().getRoot().getProject(projName); >+ return earProj; > } > private IProject createAppClientProject(String projName) throws ExecutionException { > IDataModel dataModel = DataModelFactory.createDataModel(IAppClientFacetInstallDataModelProperties.class); >@@ -341,6 +364,17 @@ > IProject webProj = ResourcesPlugin.getWorkspace().getRoot().getProject(projName); > return webProj; > } >+ private IProject createConnectorProject(String projName) throws ExecutionException { >+ IDataModel dataModel = DataModelFactory.createDataModel(IConnectorFacetInstallDataModelProperties.class); >+ String versionString = J2EEVersionUtil.convertVersionIntToString(J2EEVersionConstants.JCA_1_6_ID); >+ IProjectFacet facet = ProjectFacetsManager.getProjectFacet(IConnectorFacetInstallDataModelProperties.JCA); >+ IProjectFacetVersion facetVersion = facet.getVersion(versionString); //$NON-NLS-1$ >+ addVersionProperties(dataModel, projName, facetVersion,IJ2EEFacetInstallDataModelProperties.JCA); >+ dataModel.setProperty(IFacetDataModelProperties.FACET_PROJECT_NAME, projName); >+ dataModel.getDefaultOperation().execute( new NullProgressMonitor(), null); >+ IProject connectorProj = ResourcesPlugin.getWorkspace().getRoot().getProject(projName); >+ return connectorProj; >+ } > protected IDataModel setupJavaInstallAction(String aProjectName, String srcFolder) { > IDataModel dm = DataModelFactory.createDataModel(new JavaFacetInstallDataModelProvider()); > dm.setProperty(IFacetDataModelProperties.FACET_PROJECT_NAME, aProjectName); >#P org.eclipse.jst.j2ee.core >Index: jee-models/org/eclipse/jst/javaee/jca/internal/util/JcaResourceImpl.java >=================================================================== >RCS file: /cvsroot/webtools/jeetools/plugins/org.eclipse.jst.j2ee.core/jee-models/org/eclipse/jst/javaee/jca/internal/util/JcaResourceImpl.java,v >retrieving revision 1.3 >diff -u -r1.3 JcaResourceImpl.java >--- jee-models/org/eclipse/jst/javaee/jca/internal/util/JcaResourceImpl.java 23 Nov 2009 15:08:27 -0000 1.3 >+++ jee-models/org/eclipse/jst/javaee/jca/internal/util/JcaResourceImpl.java 23 Nov 2009 23:00:59 -0000 >@@ -13,6 +13,9 @@ > import org.eclipse.emf.common.util.URI; > > import org.eclipse.emf.ecore.EObject; >+import org.eclipse.emf.ecore.xmi.XMLHelper; >+import org.eclipse.emf.ecore.xmi.XMLLoad; >+import org.eclipse.jst.javaee.core.JEEXMLLoadImpl; > import org.eclipse.jst.javaee.core.internal.util.JavaeeResourceImpl; > import org.eclipse.jst.javaee.jca.Connector; > import org.eclipse.jst.javaee.jca.ConnectorDeploymentDescriptor; >@@ -38,6 +41,18 @@ > super(uri); > } > >+ @Override >+ protected XMLLoad createXMLLoad() { >+ return new JEEXMLLoadImpl(createXMLHelper()); >+ } >+ >+ >+ @Override >+ protected XMLHelper createXMLHelper() { >+ >+ return new JcaXMLHelperImpl(this); >+ } >+ > /* (non-Javadoc) > * @see org.eclipse.jst.javaee.jca.IConnectorResource#getRootObject() > */ >Index: jee-models/org/eclipse/jst/javaee/jca/internal/util/JcaXMLHelperImpl.java >=================================================================== >RCS file: jee-models/org/eclipse/jst/javaee/jca/internal/util/JcaXMLHelperImpl.java >diff -N jee-models/org/eclipse/jst/javaee/jca/internal/util/JcaXMLHelperImpl.java >--- /dev/null 1 Jan 1970 00:00:00 -0000 >+++ jee-models/org/eclipse/jst/javaee/jca/internal/util/JcaXMLHelperImpl.java 1 Jan 1970 00:00:00 -0000 >@@ -0,0 +1,45 @@ >+/******************************************************************************* >+ * Copyright (c) 2009 IBM Corporation 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: >+ * IBM Corporation - initial API and implementation >+ *******************************************************************************/ >+package org.eclipse.jst.javaee.jca.internal.util; >+ >+import org.eclipse.emf.ecore.EPackage; >+import org.eclipse.emf.ecore.xmi.XMLResource; >+import org.eclipse.jst.javaee.core.internal.util.JEEXMLHelperImpl; >+import org.eclipse.jst.javaee.jca.internal.metadata.JcaPackage; >+ >+public class JcaXMLHelperImpl extends JEEXMLHelperImpl { >+ >+ public JcaXMLHelperImpl(XMLResource resource) { >+ super(resource); >+ } >+ >+ >+ @Override >+ public String getURI(String prefix) { >+ if (prefix != null && prefix.equals("")) //$NON-NLS-1$ >+ return JcaPackage.eNS_URI; >+ else >+ return super.getURI(prefix); >+ } >+ @Override >+ protected String getQName(EPackage ePackage, String name, boolean mustHavePrefix) >+ { >+ String nsPrefix = getPrefix(ePackage, mustHavePrefix); >+ // Not using EE5 package namespace - default jee5 namespace is used >+ if (nsPrefix.equals(JcaPackage.eNS_PREFIX)) >+ { >+ return name; >+ } >+ else return super.getQName(ePackage, name, mustHavePrefix); >+ } >+ >+ >+} >#P org.eclipse.jst.jee >Index: plugin.properties >=================================================================== >RCS file: /cvsroot/webtools/jeetools/plugins/org.eclipse.jst.jee/plugin.properties,v >retrieving revision 1.4 >diff -u -r1.4 plugin.properties >--- plugin.properties 7 Jun 2007 19:27:51 -0000 1.4 >+++ plugin.properties 23 Nov 2009 23:01:00 -0000 >@@ -15,3 +15,4 @@ > ee5webContentType=Java EE 5 Web Content > ee5earContentType=Java EE 5 EAR Content > ee5appclientContentType=Java EE 5 Application Client Content >+ee6connectorContentType=Java EE 6 Connector Content >\ No newline at end of file >Index: plugin.xml >=================================================================== >RCS file: /cvsroot/webtools/jeetools/plugins/org.eclipse.jst.jee/plugin.xml,v >retrieving revision 1.23 >diff -u -r1.23 plugin.xml >--- plugin.xml 18 Nov 2009 22:26:25 -0000 1.23 >+++ plugin.xml 23 Nov 2009 23:01:00 -0000 >@@ -38,6 +38,14 @@ > contentTypeId="org.eclipse.jst.jee.ee5earDD"> > </contentTypeBinding> > </resourceFactory> >+ <resourceFactory >+ class="org.eclipse.jst.javaee.jca.internal.util.JcaResourceFactoryImpl" >+ isDefault="false" >+ shortSegment="ra.xml"> >+ <contentTypeBinding >+ contentTypeId="org.eclipse.jst.jee.ee6connectorDD"> >+ </contentTypeBinding> >+ </resourceFactory> > </extension> > > <extension >@@ -170,7 +178,21 @@ > class="org.eclipse.jst.jee.contenttype.JEEContentDescriber"> > </describer> > </content-type> >- </extension> >+ </extension> >+ >+ <extension >+ point="org.eclipse.core.runtime.contentTypes"> >+ <content-type >+ file-names="ra.xml" >+ id="ee6connectorDD" >+ base-type="org.eclipse.core.runtime.xml" >+ name="%ee6connectorContentType" >+ priority="high"> >+ <describer >+ class="org.eclipse.jst.jee.contenttype.JEEContentDescriber"> >+ </describer> >+ </content-type> >+ </extension> > > <extension > point="org.eclipse.jst.j2ee.J2EEModelProvider"> >@@ -187,5 +209,13 @@ > <facet id="jst.appclient" versions="5.0,6.0"/> > </provider> > </extension> >- >+ >+ <extension >+ point="org.eclipse.jst.j2ee.J2EEModelProvider"> >+ <provider> >+ <modelProvider factoryClass="org.eclipse.jst.jee.model.internal.Connector16ModelProviderFactory"/> >+ <facet id="jst.connector" versions="1.6"/> >+ </provider> >+ </extension> >+ > </plugin> >Index: jeecreation/org/eclipse/jst/jee/model/internal/Connector16ModelProviderFactory.java >=================================================================== >RCS file: jeecreation/org/eclipse/jst/jee/model/internal/Connector16ModelProviderFactory.java >diff -N jeecreation/org/eclipse/jst/jee/model/internal/Connector16ModelProviderFactory.java >--- /dev/null 1 Jan 1970 00:00:00 -0000 >+++ jeecreation/org/eclipse/jst/jee/model/internal/Connector16ModelProviderFactory.java 1 Jan 1970 00:00:00 -0000 >@@ -0,0 +1,28 @@ >+/******************************************************************************* >+ * Copyright (c) 2009 IBM Corporation 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: >+ * IBM Corporation - initial API and implementation >+ *******************************************************************************/ >+package org.eclipse.jst.jee.model.internal; >+ >+import org.eclipse.core.resources.IProject; >+import org.eclipse.jst.j2ee.model.IModelProvider; >+import org.eclipse.jst.j2ee.model.IModelProviderFactory; >+import org.eclipse.wst.common.componentcore.resources.IVirtualComponent; >+ >+public class Connector16ModelProviderFactory implements IModelProviderFactory { >+ >+ public IModelProvider create(IProject project) { >+ return new Connector16ModelProvider(project); >+ } >+ >+ public IModelProvider create(IVirtualComponent component) { >+ return new Connector16ModelProvider(component.getProject()); >+ } >+ >+} >Index: jeecreation/org/eclipse/jst/jee/model/internal/Connector16ModelProvider.java >=================================================================== >RCS file: jeecreation/org/eclipse/jst/jee/model/internal/Connector16ModelProvider.java >diff -N jeecreation/org/eclipse/jst/jee/model/internal/Connector16ModelProvider.java >--- /dev/null 1 Jan 1970 00:00:00 -0000 >+++ jeecreation/org/eclipse/jst/jee/model/internal/Connector16ModelProvider.java 1 Jan 1970 00:00:00 -0000 >@@ -0,0 +1,78 @@ >+/******************************************************************************* >+ * Copyright (c) 2009 IBM Corporation 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: >+ * IBM Corporation - initial API and implementation >+ *******************************************************************************/ >+package org.eclipse.jst.jee.model.internal; >+ >+ >+import org.eclipse.core.resources.IProject; >+import org.eclipse.core.runtime.IPath; >+import org.eclipse.core.runtime.Path; >+import org.eclipse.emf.ecore.EObject; >+import org.eclipse.emf.ecore.xmi.impl.XMLResourceImpl; >+import org.eclipse.jst.j2ee.internal.J2EEConstants; >+import org.eclipse.jst.j2ee.internal.J2EEVersionConstants; >+import org.eclipse.jst.j2ee.internal.project.J2EEProjectUtilities; >+import org.eclipse.jst.javaee.core.DisplayName; >+import org.eclipse.jst.javaee.core.JavaeeFactory; >+import org.eclipse.jst.javaee.jca.Connector; >+import org.eclipse.jst.javaee.jca.ConnectorDeploymentDescriptor; >+import org.eclipse.jst.javaee.jca.IConnectorResource; >+import org.eclipse.jst.javaee.jca.JcaFactory; >+ >+public class Connector16ModelProvider extends JEE5ModelProvider { >+ >+ private static final String CONNECTOR16_CONTENT_TYPE = "org.eclipse.jst.jee.ee6connectorDD"; //$NON-NLS-1$ >+ public Connector16ModelProvider(IProject proj) { >+ super(); >+ this.proj = proj; >+ setDefaultResourcePath(new Path(J2EEConstants.RAR_DD_URI)); >+ } >+ >+ /* (non-Javadoc) >+ * @see org.eclipse.jst.j2ee.model.IModelProvider#getModelObject(org.eclipse.core.runtime.IPath) >+ */ >+ @Override >+ public Object getModelObject(IPath modelPath) { >+ IConnectorResource connectorRes = (IConnectorResource)getModelResource(modelPath); >+ if (connectorRes != null && connectorRes.getRootObject() != null) >+ return connectorRes.getConnector(); >+ return null; >+ } >+ @Override >+ protected String getContentTypeDescriber() { >+ return CONNECTOR16_CONTENT_TYPE; >+ } >+ @Override >+ public void populateRoot(XMLResourceImpl res, String name) { >+ ConnectorDeploymentDescriptor dd = JcaFactory.eINSTANCE.createConnectorDeploymentDescriptor(); >+ dd.getXMLNSPrefixMap().put("", J2EEConstants.JAVAEE_NS_URL); //$NON-NLS-1$ >+ dd.getXMLNSPrefixMap().put("xsi", J2EEConstants.XSI_NS_URL); //$NON-NLS-1$ >+ >+ Connector connector = JcaFactory.eINSTANCE.createConnector(); >+ DisplayName dn = JavaeeFactory.eINSTANCE.createDisplayName(); >+ dn.setValue(name); >+ connector.getDisplayNames().add(dn); >+ >+ String version = J2EEProjectUtilities.getJ2EEProjectVersion(proj); >+ if(version != null && version.equals(J2EEVersionConstants.VERSION_1_6_TEXT)) { >+ dd.getXSISchemaLocation().put(J2EEConstants.JAVAEE_NS_URL, J2EEConstants.CONNECTOR_SCHEMA_LOC_1_6); >+ connector.setVersion(J2EEVersionConstants.VERSION_1_6_TEXT); >+ } >+ else >+ { >+ // default to 1.6 for now >+ dd.getXSISchemaLocation().put(J2EEConstants.JAVAEE_NS_URL, J2EEConstants.CONNECTOR_SCHEMA_LOC_1_6); >+ connector.setVersion(J2EEVersionConstants.VERSION_1_6_TEXT); >+ } >+ dd.setConnector(connector); >+ res.getContents().add((EObject) dd); >+ } >+ >+} >#P org.eclipse.jst.j2ee.jca >Index: rarproject/org/eclipse/jst/j2ee/internal/jca/operations/ConnectorComponentImportDataModelProvider.java >=================================================================== >RCS file: /cvsroot/webtools/jeetools/plugins/org.eclipse.jst.j2ee.jca/rarproject/org/eclipse/jst/j2ee/internal/jca/operations/ConnectorComponentImportDataModelProvider.java,v >retrieving revision 1.8 >diff -u -r1.8 ConnectorComponentImportDataModelProvider.java >--- rarproject/org/eclipse/jst/j2ee/internal/jca/operations/ConnectorComponentImportDataModelProvider.java 14 Jul 2009 14:13:26 -0000 1.8 >+++ rarproject/org/eclipse/jst/j2ee/internal/jca/operations/ConnectorComponentImportDataModelProvider.java 23 Nov 2009 23:01:00 -0000 >@@ -15,6 +15,8 @@ > import org.eclipse.jst.j2ee.internal.common.XMLResource; > import org.eclipse.jst.j2ee.internal.project.J2EEProjectUtilities; > import org.eclipse.jst.j2ee.jca.project.facet.ConnectorFacetProjectCreationDataModelProvider; >+import org.eclipse.jst.j2ee.project.facet.IJ2EEFacetConstants; >+import org.eclipse.jst.j2ee.project.facet.IJ2EEFacetInstallDataModelProperties; > import org.eclipse.wst.common.componentcore.datamodel.properties.IFacetDataModelProperties; > import org.eclipse.wst.common.componentcore.datamodel.properties.IFacetProjectCreationDataModelProperties; > import org.eclipse.wst.common.componentcore.datamodel.properties.IFacetProjectCreationDataModelProperties.FacetDataModelMap; >@@ -36,6 +38,10 @@ > public void init() { > super.init(); > //setIntProperty(IConnectorComponentCreationDataModelProperties.COMPONENT_VERSION, J2EEVersionConstants.J2EE_1_3_ID); >+ IDataModel componentCreationDM = model.getNestedModel(NESTED_MODEL_J2EE_COMPONENT_CREATION); >+ FacetDataModelMap map = (FacetDataModelMap) componentCreationDM.getProperty(IFacetProjectCreationDataModelProperties.FACET_DM_MAP); >+ IDataModel connectorFacet = map.getFacetDataModel( IJ2EEFacetConstants.JCA ); >+ connectorFacet.setBooleanProperty(IJ2EEFacetInstallDataModelProperties.GENERATE_DD, false); > } > > @Override >Index: jca/org/eclipse/jst/j2ee/jca/project/facet/ConnectorFacetInstallDelegate.java >=================================================================== >RCS file: /cvsroot/webtools/jeetools/plugins/org.eclipse.jst.j2ee.jca/jca/org/eclipse/jst/j2ee/jca/project/facet/ConnectorFacetInstallDelegate.java,v >retrieving revision 1.30 >diff -u -r1.30 ConnectorFacetInstallDelegate.java >--- jca/org/eclipse/jst/j2ee/jca/project/facet/ConnectorFacetInstallDelegate.java 10 Nov 2009 22:41:31 -0000 1.30 >+++ jca/org/eclipse/jst/j2ee/jca/project/facet/ConnectorFacetInstallDelegate.java 23 Nov 2009 23:01:00 -0000 >@@ -1,5 +1,5 @@ > /******************************************************************************* >- * Copyright (c) 2005, 2006 IBM Corporation and others. >+ * Copyright (c) 2005, 2009 IBM Corporation 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 >@@ -19,6 +19,7 @@ > import org.eclipse.core.resources.IFile; > import org.eclipse.core.resources.IFolder; > import org.eclipse.core.resources.IProject; >+import org.eclipse.core.resources.IResource; > import org.eclipse.core.resources.IWorkspace; > import org.eclipse.core.resources.ResourcesPlugin; > import org.eclipse.core.runtime.CoreException; >@@ -39,10 +40,17 @@ > import org.eclipse.jst.j2ee.internal.common.J2EEVersionUtil; > import org.eclipse.jst.j2ee.internal.common.classpath.J2EEComponentClasspathContainer; > import org.eclipse.jst.j2ee.internal.common.classpath.J2EEComponentClasspathContainerUtils; >+import org.eclipse.jst.j2ee.internal.plugin.J2EEPlugin; > import org.eclipse.jst.j2ee.jca.Connector; > import org.eclipse.jst.j2ee.jca.modulecore.util.ConnectorArtifactEdit; >+import org.eclipse.jst.j2ee.model.IModelProvider; >+import org.eclipse.jst.j2ee.model.ModelProviderManager; >+import org.eclipse.jst.j2ee.project.facet.IJ2EEFacetConstants; >+import org.eclipse.jst.j2ee.project.facet.IJ2EEFacetInstallDataModelProperties; > import org.eclipse.jst.j2ee.project.facet.IJ2EEModuleFacetInstallDataModelProperties; > import org.eclipse.jst.j2ee.project.facet.J2EEFacetInstallDelegate; >+import org.eclipse.jst.javaee.core.DisplayName; >+import org.eclipse.jst.javaee.core.JavaeeFactory; > import org.eclipse.wst.common.componentcore.ComponentCore; > import org.eclipse.wst.common.componentcore.datamodel.FacetDataModelProvider; > import org.eclipse.wst.common.componentcore.datamodel.properties.IFacetDataModelProperties; >@@ -95,7 +103,27 @@ > IPath configFolderpath = pjpath.append(configFolderName); > sourceFolder = ws.getRoot().getFolder(configFolderpath); > >- if (!sourceFolder.getFile(J2EEConstants.RAR_DD_URI).exists()) { >+ if( fv == IJ2EEFacetConstants.JCA_16) >+ { >+ if(model.getBooleanProperty(IJ2EEFacetInstallDataModelProperties.GENERATE_DD)){ >+ // Create the deployment descriptor (ra.xml) if one doesn't exist >+ IFile rarFile = sourceFolder.getFile(new Path(J2EEConstants.RAR_DD_URI)); >+ if (!rarFile.exists()) { >+ try { >+ if(!rarFile.getParent().exists() >+ && (rarFile.getParent().getType() == IResource.FOLDER)){ >+ ((IFolder)rarFile.getParent()).create(true, true, monitor); >+ } >+ InputStream in = getClass().getResourceAsStream(CONNECTOR_XML_TEMPLATE_16); >+ rarFile.create(in, true, monitor); >+ populateDefaultContent(project, fv); >+ } catch (CoreException e) { >+ J2EEPlugin.logError(e); >+ } >+ } >+ } >+ } >+ else if (!sourceFolder.getFile(J2EEConstants.RAR_DD_URI).exists()) { > String ver = model.getStringProperty(IFacetDataModelProperties.FACET_VERSION_STR); > int nVer = J2EEVersionUtil.convertVersionStringToInt(ver); > >@@ -109,9 +137,10 @@ > else if (nVer == J2EEVersionConstants.JCA_1_5_ID) { > template = CONNECTOR_XML_TEMPLATE_15; > } >- else { >- template = CONNECTOR_XML_TEMPLATE_16; >- } >+// JCA 1.6 handled separately >+// else { >+// template = CONNECTOR_XML_TEMPLATE_16; >+// } > > InputStream in = getClass().getResourceAsStream(template); > if (in != null) { >@@ -203,4 +232,20 @@ > > } > >+ private void populateDefaultContent(final IProject project, >+ final IProjectFacetVersion fv) { >+ final IModelProvider provider = ModelProviderManager.getModelProvider(project, fv); >+ Runnable runnable = new Runnable(){ >+ >+ public void run() { >+ Connector connector = (Connector) provider.getModelObject(); >+ >+ // Add the display-name tag >+ DisplayName displayName = JavaeeFactory.eINSTANCE.createDisplayName(); >+ displayName.setValue(project.getName()); >+ connector.getDisplayNames().add(displayName); >+ } >+ }; >+ provider.modify(runnable, null); >+ } > } >Index: plugin.xml >=================================================================== >RCS file: /cvsroot/webtools/jeetools/plugins/org.eclipse.jst.j2ee.jca/plugin.xml,v >retrieving revision 1.43 >diff -u -r1.43 plugin.xml >--- plugin.xml 10 Nov 2009 22:41:30 -0000 1.43 >+++ plugin.xml 23 Nov 2009 23:01:00 -0000 >@@ -138,7 +138,7 @@ > point="org.eclipse.jst.j2ee.J2EEModelProvider"> > <provider> > <modelProvider factoryClass="org.eclipse.jst.j2ee.jca.modulecore.util.ConnectorArtifactEdit"/> >- <facet id="jst.connector" versions="1.0,1.5,1.6"/> >+ <facet id="jst.connector" versions="1.0,1.5"/> > </provider> > </extension> > </plugin>
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
Attachments on
bug 295946
: 152909 |
152911