You are viewing a plain text version of this content. The canonical link for it is here.
Posted to scm@geronimo.apache.org by sp...@apache.org on 2005/12/08 20:54:23 UTC

svn commit: r355183 - in /geronimo/devtools/trunk/modules/eclipse-plugin/plugins/org.apache.geronimo.ui: ./ META-INF/ src/org/apache/geronimo/ui/editors/ src/org/apache/geronimo/ui/pages/ src/org/apache/geronimo/ui/sections/

Author: sppatel
Date: Thu Dec  8 11:54:19 2005
New Revision: 355183

URL: http://svn.apache.org/viewcvs?rev=355183&view=rev
Log:
start moving tables over to use contentproviders in tableviewer

Modified:
    geronimo/devtools/trunk/modules/eclipse-plugin/plugins/org.apache.geronimo.ui/META-INF/MANIFEST.MF
    geronimo/devtools/trunk/modules/eclipse-plugin/plugins/org.apache.geronimo.ui/project.xml
    geronimo/devtools/trunk/modules/eclipse-plugin/plugins/org.apache.geronimo.ui/src/org/apache/geronimo/ui/editors/AbstractGeronimoDeploymentPlanEditor.java
    geronimo/devtools/trunk/modules/eclipse-plugin/plugins/org.apache.geronimo.ui/src/org/apache/geronimo/ui/pages/NamingFormPage.java
    geronimo/devtools/trunk/modules/eclipse-plugin/plugins/org.apache.geronimo.ui/src/org/apache/geronimo/ui/sections/ResourceRefSection.java

Modified: geronimo/devtools/trunk/modules/eclipse-plugin/plugins/org.apache.geronimo.ui/META-INF/MANIFEST.MF
URL: http://svn.apache.org/viewcvs/geronimo/devtools/trunk/modules/eclipse-plugin/plugins/org.apache.geronimo.ui/META-INF/MANIFEST.MF?rev=355183&r1=355182&r2=355183&view=diff
==============================================================================
--- geronimo/devtools/trunk/modules/eclipse-plugin/plugins/org.apache.geronimo.ui/META-INF/MANIFEST.MF (original)
+++ geronimo/devtools/trunk/modules/eclipse-plugin/plugins/org.apache.geronimo.ui/META-INF/MANIFEST.MF Thu Dec  8 11:54:19 2005
@@ -28,5 +28,6 @@
  org.eclipse.jst.server.generic.core,
  org.eclipse.debug.core,
  org.eclipse.emf.edit,
- org.apache.geronimo.deployment.model.edit
+ org.apache.geronimo.deployment.model.edit,
+ org.eclipse.emf.edit.ui
 Eclipse-AutoStart: true

Modified: geronimo/devtools/trunk/modules/eclipse-plugin/plugins/org.apache.geronimo.ui/project.xml
URL: http://svn.apache.org/viewcvs/geronimo/devtools/trunk/modules/eclipse-plugin/plugins/org.apache.geronimo.ui/project.xml?rev=355183&r1=355182&r2=355183&view=diff
==============================================================================
--- geronimo/devtools/trunk/modules/eclipse-plugin/plugins/org.apache.geronimo.ui/project.xml (original)
+++ geronimo/devtools/trunk/modules/eclipse-plugin/plugins/org.apache.geronimo.ui/project.xml Thu Dec  8 11:54:19 2005
@@ -189,5 +189,10 @@
       <artifactId>org.eclipse.emf.edit</artifactId>
       <version>2.1.1</version>
     </dependency>
+    <dependency>
+      <groupId>eclipse</groupId>
+      <artifactId>org.eclipse.emf.edit.ui</artifactId>
+      <version>2.1.0</version>
+    </dependency>
   </dependencies>
 </project>

Modified: geronimo/devtools/trunk/modules/eclipse-plugin/plugins/org.apache.geronimo.ui/src/org/apache/geronimo/ui/editors/AbstractGeronimoDeploymentPlanEditor.java
URL: http://svn.apache.org/viewcvs/geronimo/devtools/trunk/modules/eclipse-plugin/plugins/org.apache.geronimo.ui/src/org/apache/geronimo/ui/editors/AbstractGeronimoDeploymentPlanEditor.java?rev=355183&r1=355182&r2=355183&view=diff
==============================================================================
--- geronimo/devtools/trunk/modules/eclipse-plugin/plugins/org.apache.geronimo.ui/src/org/apache/geronimo/ui/editors/AbstractGeronimoDeploymentPlanEditor.java (original)
+++ geronimo/devtools/trunk/modules/eclipse-plugin/plugins/org.apache.geronimo.ui/src/org/apache/geronimo/ui/editors/AbstractGeronimoDeploymentPlanEditor.java Thu Dec  8 11:54:19 2005
@@ -18,12 +18,21 @@
 import java.io.InputStream;
 import java.util.ArrayList;
 import java.util.Collections;
+import java.util.List;
 
 import org.apache.geronimo.ui.internal.Messages;
 import org.apache.geronimo.ui.internal.Trace;
+import org.apache.geronimo.xml.ns.deployment.provider.DeploymentItemProviderAdapterFactory;
+import org.apache.geronimo.xml.ns.j2ee.application.client.provider.ClientItemProviderAdapterFactory;
+import org.apache.geronimo.xml.ns.j2ee.application.provider.ApplicationItemProviderAdapterFactory;
+import org.apache.geronimo.xml.ns.j2ee.connector.provider.ConnectorItemProviderAdapterFactory;
+import org.apache.geronimo.xml.ns.j2ee.web.provider.WebItemProviderAdapterFactory;
+import org.apache.geronimo.xml.ns.naming.provider.NamingItemProviderAdapterFactory;
+import org.apache.geronimo.xml.ns.security.provider.SecurityItemProviderAdapterFactory;
 import org.eclipse.core.resources.IFile;
 import org.eclipse.core.runtime.IProgressMonitor;
 import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.edit.provider.ComposedAdapterFactory;
 import org.eclipse.jface.dialogs.MessageDialog;
 import org.eclipse.swt.widgets.Display;
 import org.eclipse.ui.IEditorInput;
@@ -34,6 +43,8 @@
 import org.eclipse.ui.forms.IManagedForm;
 import org.eclipse.ui.forms.editor.FormEditor;
 import org.eclipse.ui.forms.editor.IFormPage;
+import org.openejb.xml.ns.openejb.jar.provider.JarItemProviderAdapterFactory;
+import org.openejb.xml.ns.pkgen.provider.PkgenItemProviderAdapterFactory;
 
 /**
  * 
@@ -42,12 +53,25 @@
 public abstract class AbstractGeronimoDeploymentPlanEditor extends FormEditor {
 
 	private EObject deploymentPlan;
+	
+	private ComposedAdapterFactory factory;
 
 	/**
 	 * 
 	 */
 	public AbstractGeronimoDeploymentPlanEditor() {
 		super();
+		List factories = new ArrayList();
+		factories.add(new WebItemProviderAdapterFactory());
+		factories.add(new NamingItemProviderAdapterFactory());
+		factories.add(new DeploymentItemProviderAdapterFactory());
+		factories.add(new ApplicationItemProviderAdapterFactory());
+		factories.add(new ClientItemProviderAdapterFactory());
+		factories.add(new ConnectorItemProviderAdapterFactory());
+		factories.add(new SecurityItemProviderAdapterFactory());
+		factories.add(new JarItemProviderAdapterFactory());
+		factories.add(new PkgenItemProviderAdapterFactory());
+		factory = new ComposedAdapterFactory(factories);
 	}
 
 	/*
@@ -171,5 +195,9 @@
 	}
 
 	abstract public EObject loadDeploymentPlan(IFile file);
+
+	public ComposedAdapterFactory getFactory() {
+		return factory;
+	}
 
 }

Modified: geronimo/devtools/trunk/modules/eclipse-plugin/plugins/org.apache.geronimo.ui/src/org/apache/geronimo/ui/pages/NamingFormPage.java
URL: http://svn.apache.org/viewcvs/geronimo/devtools/trunk/modules/eclipse-plugin/plugins/org.apache.geronimo.ui/src/org/apache/geronimo/ui/pages/NamingFormPage.java?rev=355183&r1=355182&r2=355183&view=diff
==============================================================================
--- geronimo/devtools/trunk/modules/eclipse-plugin/plugins/org.apache.geronimo.ui/src/org/apache/geronimo/ui/pages/NamingFormPage.java (original)
+++ geronimo/devtools/trunk/modules/eclipse-plugin/plugins/org.apache.geronimo.ui/src/org/apache/geronimo/ui/pages/NamingFormPage.java Thu Dec  8 11:54:19 2005
@@ -15,6 +15,7 @@
  */
 package org.apache.geronimo.ui.pages;
 
+import org.apache.geronimo.ui.editors.AbstractGeronimoDeploymentPlanEditor;
 import org.apache.geronimo.ui.sections.EjbLocalRefSection;
 import org.apache.geronimo.ui.sections.EjbRefSection;
 import org.apache.geronimo.ui.sections.GBeanRefSection;
@@ -22,6 +23,7 @@
 import org.apache.geronimo.ui.sections.ResourceRefSection;
 import org.apache.geronimo.ui.sections.ServiceRefSection;
 import org.eclipse.emf.ecore.EReference;
+import org.eclipse.emf.edit.provider.ComposedAdapterFactory;
 import org.eclipse.ui.forms.IManagedForm;
 import org.eclipse.ui.forms.editor.FormEditor;
 
@@ -52,7 +54,8 @@
      * @see org.apache.geronimo.ui.pages.AbstractGeronimoFormPage#fillBody(org.eclipse.ui.forms.IManagedForm)
      */
     protected void fillBody(IManagedForm managedForm) {        
-        managedForm.addPart(new ResourceRefSection(getDeploymentPlan(), body, toolkit, getStyle(), resRef));
+    	ComposedAdapterFactory factory = ((AbstractGeronimoDeploymentPlanEditor) getEditor()).getFactory();
+        managedForm.addPart(new ResourceRefSection(getDeploymentPlan(), body, toolkit, getStyle(), resRef, factory));
         managedForm.addPart(new ResourceEnvRefSection(getDeploymentPlan(), body, toolkit, getStyle(), resEnvRef));
         managedForm.addPart(new EjbRefSection(getDeploymentPlan(), body, toolkit, getStyle(), ejbRef));
         managedForm.addPart(new EjbLocalRefSection(getDeploymentPlan(), body, toolkit, getStyle(), ejbLocalRef));

Modified: geronimo/devtools/trunk/modules/eclipse-plugin/plugins/org.apache.geronimo.ui/src/org/apache/geronimo/ui/sections/ResourceRefSection.java
URL: http://svn.apache.org/viewcvs/geronimo/devtools/trunk/modules/eclipse-plugin/plugins/org.apache.geronimo.ui/src/org/apache/geronimo/ui/sections/ResourceRefSection.java?rev=355183&r1=355182&r2=355183&view=diff
==============================================================================
--- geronimo/devtools/trunk/modules/eclipse-plugin/plugins/org.apache.geronimo.ui/src/org/apache/geronimo/ui/sections/ResourceRefSection.java (original)
+++ geronimo/devtools/trunk/modules/eclipse-plugin/plugins/org.apache.geronimo.ui/src/org/apache/geronimo/ui/sections/ResourceRefSection.java Thu Dec  8 11:54:19 2005
@@ -15,16 +15,28 @@
  */
 package org.apache.geronimo.ui.sections;
 
+import java.util.ArrayList;
+import java.util.List;
+
 import org.apache.geronimo.ui.internal.GeronimoUIPlugin;
 import org.apache.geronimo.ui.internal.Messages;
 import org.apache.geronimo.ui.wizards.ResourceRefWizard;
+import org.apache.geronimo.xml.ns.j2ee.web.provider.WebItemProviderAdapterFactory;
 import org.apache.geronimo.xml.ns.naming.NamingFactory;
 import org.apache.geronimo.xml.ns.naming.NamingPackage;
+import org.apache.geronimo.xml.ns.naming.provider.NamingItemProviderAdapterFactory;
+import org.eclipse.emf.common.notify.AdapterFactory;
 import org.eclipse.emf.ecore.EAttribute;
 import org.eclipse.emf.ecore.EFactory;
 import org.eclipse.emf.ecore.EObject;
 import org.eclipse.emf.ecore.EReference;
+import org.eclipse.emf.edit.provider.ComposedAdapterFactory;
+import org.eclipse.emf.edit.ui.provider.AdapterFactoryContentProvider;
+import org.eclipse.emf.edit.ui.provider.AdapterFactoryLabelProvider;
 import org.eclipse.jface.resource.ImageDescriptor;
+import org.eclipse.jface.viewers.TableViewer;
+import org.eclipse.jface.viewers.Viewer;
+import org.eclipse.jface.viewers.ViewerFilter;
 import org.eclipse.jface.wizard.Wizard;
 import org.eclipse.swt.widgets.Composite;
 import org.eclipse.ui.forms.widgets.FormToolkit;
@@ -32,13 +44,59 @@
 public class ResourceRefSection extends DynamicTableSection {
     
     EReference resourceRefERef;
+    
+    AdapterFactory factory;
 
     public ResourceRefSection(EObject plan, Composite parent,
-            FormToolkit toolkit, int style, EReference resourceRefERef) {
+            FormToolkit toolkit, int style, EReference resourceRefERef, AdapterFactory factory) {
         super(plan, parent, toolkit, style);
         this.resourceRefERef = resourceRefERef;
-        create();
+        this.factory = factory;
+        //create();
+        super.createClient();
     }
+    
+    public void createClient() {
+
+		getSection().setText(getTitle());
+		getSection().setDescription(getDescription());
+		getSection().setLayoutData(getSectionLayoutData());
+		Composite composite = createTableComposite(getSection());
+		getSection().setClient(composite);
+		createTable(composite);
+		
+		List factories = new ArrayList();
+		factories.add(new WebItemProviderAdapterFactory());
+		factories.add(new NamingItemProviderAdapterFactory());
+
+		ComposedAdapterFactory a = new ComposedAdapterFactory(factories);
+
+		tableViewer = new TableViewer(table);
+		tableViewer.setContentProvider(new AdapterFactoryContentProvider(
+				a));
+		tableViewer.setLabelProvider(new AdapterFactoryLabelProvider(a));
+		tableViewer.setInput(plan);
+
+		tableViewer.addFilter(new ViewerFilter() {
+			public boolean select(Viewer viewer, Object parentElement,
+					Object element) {
+				return NamingPackage.eINSTANCE.getResourceRefType().isInstance(
+						element);
+			}
+		});
+
+		if (getTableColumnNames().length > 0) {
+			tableViewer.setColumnProperties(getTableColumnNames());
+		}
+
+		Composite buttonComp = createButtonComposite(composite);
+		createAddButton(toolkit, buttonComp);
+		createRemoveButton(toolkit, buttonComp);
+		createEditButton(toolkit, buttonComp);
+    
+	}
+
+
 
     /*
      * (non-Javadoc)