[jboss-cvs] jbosside/ejb3/plugins/org.jboss.ide.eclipse.ejb3.wizards.core/src/main/org/jboss/ide/eclipse/ejb3/core/facet ...

Robert Stryker rawblem at gmail.com
Mon Nov 6 12:04:26 EST 2006


  User: rawb    
  Date: 06/11/06 12:04:26

  Added:       ejb3/plugins/org.jboss.ide.eclipse.ejb3.wizards.core/src/main/org/jboss/ide/eclipse/ejb3/core/facet    
                        Ejb30FacetPostInstallDelegate.java
                        Ejb30FacetProjectCreationDataModelProvider.java
                        Ejb30FacetInstallDelegate.java
                        Ejb30FacetInstallDataModelProvider.java
  Log:
  Completely new infrastructure to support the webtools / facets. It still needs better text messages and some cleanup but should be more than functional. 
  
  Revision  Changes    Path
  1.1      date: 2006/11/06 17:04:26;  author: rawb;  state: Exp;jbosside/ejb3/plugins/org.jboss.ide.eclipse.ejb3.wizards.core/src/main/org/jboss/ide/eclipse/ejb3/core/facet/Ejb30FacetPostInstallDelegate.java
  
  Index: Ejb30FacetPostInstallDelegate.java
  ===================================================================
  package org.jboss.ide.eclipse.ejb3.core.facet;
  
  import java.io.ByteArrayInputStream;
  import java.io.File;
  import java.io.FileFilter;
  import java.util.ArrayList;
  
  import org.eclipse.core.resources.IFile;
  import org.eclipse.core.resources.IProject;
  import org.eclipse.core.resources.ResourcesPlugin;
  import org.eclipse.core.runtime.CoreException;
  import org.eclipse.core.runtime.IPath;
  import org.eclipse.core.runtime.IProgressMonitor;
  import org.eclipse.core.runtime.NullProgressMonitor;
  import org.eclipse.core.runtime.Path;
  import org.eclipse.jdt.core.IJavaElement;
  import org.eclipse.jdt.core.IJavaProject;
  import org.eclipse.jdt.core.IPackageFragmentRoot;
  import org.eclipse.jdt.core.JavaCore;
  import org.eclipse.jdt.core.JavaModelException;
  import org.eclipse.jst.common.project.facet.core.ClasspathHelper;
  import org.eclipse.jst.j2ee.internal.common.operations.JavaModelUtil;
  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.wst.common.componentcore.ComponentCore;
  import org.eclipse.wst.common.componentcore.datamodel.properties.IFacetProjectCreationDataModelProperties;
  import org.eclipse.wst.common.frameworks.datamodel.IDataModel;
  import org.eclipse.wst.common.project.facet.core.IDelegate;
  import org.eclipse.wst.common.project.facet.core.IProjectFacetVersion;
  import org.eclipse.wst.common.project.facet.core.runtime.IRuntime;
  import org.jboss.ide.eclipse.ejb3.core.classpath.AopFromRuntimeClasspathContainer;
  import org.jboss.ide.eclipse.ejb3.core.classpath.EJB3ClasspathContainer;
  import org.jboss.ide.eclipse.jdt.aop.core.classpath.AopJdk15ClasspathContainer;
  
  public class Ejb30FacetPostInstallDelegate extends J2EEFacetInstallDelegate implements IDelegate {
  
  	public void execute(IProject project, IProjectFacetVersion fv, Object config, IProgressMonitor monitor) throws CoreException {
  
  		if (monitor != null) {
  			monitor.beginTask("", 3); //$NON-NLS-1$
  		}
  
  		wstEjbPostInstall(project, fv, config, monitor);
  		jbossPostInstall(project, fv, config, monitor);
  		
  		if (monitor != null) {
  			monitor.done();
  		}
  	}
  	
  	public void wstEjbPostInstall(IProject project, IProjectFacetVersion fv, Object config, IProgressMonitor monitor) throws CoreException {
  		IDataModel model = (IDataModel) config;
  
  		ComponentCore.createComponent(project);
  		
  		final String earProjectName = (String) model.getProperty(
  					IJ2EEModuleFacetInstallDataModelProperties.EAR_PROJECT_NAME);
  
  		// Associate with an EAR, if necessary.
  		if (model.getBooleanProperty(IJ2EEModuleFacetInstallDataModelProperties.ADD_TO_EAR)) {
  			if (earProjectName != null && !earProjectName.equals("")) { //$NON-NLS-1$
  				String j2eeVersionText = "5.0";
  				
  				final String moduleURI = model.getStringProperty(
  							IJ2EEModuleFacetInstallDataModelProperties.MODULE_URI);
  
  				installAndAddModuletoEAR( j2eeVersionText,
  									earProjectName,
  									(IRuntime) model.getProperty(IJ2EEFacetInstallDataModelProperties.FACET_RUNTIME),
  									project,
  									moduleURI,
  									monitor );
  			}
  
  			// No support for clients
  		}
  
  		if (monitor != null) {
  			monitor.worked(1);
  		}
  
  	}
  
  	public void jbossPostInstall(IProject project, IProjectFacetVersion fv, Object config, IProgressMonitor monitor) throws CoreException {
  		addClasspathEntries(project, fv, config, monitor);
  		addJNDIFile(project);
  	}
  	
  	public void addClasspathEntries(IProject project, IProjectFacetVersion fv, Object config, IProgressMonitor monitor) throws CoreException {
  	    ArrayList list = new ArrayList(); 
  	    String runtimeKey = IFacetProjectCreationDataModelProperties.FACET_RUNTIME;
  	    if( config instanceof IDataModel ) {
  	    	IDataModel model = (IDataModel)config;
  	    	Object runtime = model.getProperty(runtimeKey);
  	    	String runtimeName = null;
  	    	if( runtime instanceof IRuntime ) {
  	    		runtimeName = ((IRuntime)runtime).getName();
  	    	}
  			//list.add(JavaCore.newContainerEntry(new Path(AopJdk15ClasspathContainer.CONTAINER_ID)));
  		    list.add(JavaCore.newContainerEntry(new Path(EJB3ClasspathContainer.CONTAINER_ID).append(runtimeName)));
  		    list.add(JavaCore.newContainerEntry(new Path(AopFromRuntimeClasspathContainer.CONTAINER_ID).append(runtimeName)));
  
  			ClasspathHelper.addClasspathEntries(project, fv, list);
  	    }
  	    
  		if (monitor != null) {
  			monitor.worked(1);
  		}
  	}
  	public void addJNDIFile(IProject project) {
  		try {
  	        String sourcePath = findSourcePaths(project);
  	        createJndiProperties(new Path(sourcePath));
  		} catch( CoreException ce ) {
  		}
  	}
  	
     private class JndiPropertiesFileFilter implements FileFilter {
  	      public boolean accept(File file) {
  	         return (file.getName().equals("jndi.properties"));
  	      }
     }
     
     private void createJndiProperties(IPath srcPath) throws CoreException {
        IPath jndiPath = srcPath.append("jndi.properties");
        IFile file = ResourcesPlugin.getWorkspace().getRoot().getFile(jndiPath);
  
        String jndiProps = "java.naming.factory.initial=org.jnp.interfaces.NamingContextFactory\n"
              + "java.naming.factory.url.pkgs=org.jboss.naming:org.jnp.interfaces\n"
              + "java.naming.provider.url=localhost:1099\n";
  
        file.create(new ByteArrayInputStream(jndiProps.getBytes()), true, new NullProgressMonitor());
     }
     private String findSourcePaths(IProject project) throws CoreException {
  	   IJavaElement elem = JavaCore.create(project);
  	   IPackageFragmentRoot initRoot= null;
  	   if (elem != null) {
  			initRoot= JavaModelUtil.getPackageFragmentRoot(elem);
  			try {
  				if (initRoot == null || initRoot.getKind() != IPackageFragmentRoot.K_SOURCE) {
  					IJavaProject jproject= elem.getJavaProject();
  					if (jproject != null) {
  							initRoot= null;
  							if (jproject.exists()) {
  								IPackageFragmentRoot[] roots= jproject.getPackageFragmentRoots();
  								for (int i= 0; i < roots.length; i++) {
  									if (roots[i].getKind() == IPackageFragmentRoot.K_SOURCE) {
  										initRoot= roots[i];
  										break;
  									}
  								}							
  							}
  						if (initRoot == null) {
  							initRoot= jproject.getPackageFragmentRoot(jproject.getResource());
  						}
  					}
  				}
  			} catch (JavaModelException e) {}
  		}	
  	   return initRoot.getPath().makeRelative().toString();
     }
  
          
  }
  
  
  
  1.1      date: 2006/11/06 17:04:26;  author: rawb;  state: Exp;jbosside/ejb3/plugins/org.jboss.ide.eclipse.ejb3.wizards.core/src/main/org/jboss/ide/eclipse/ejb3/core/facet/Ejb30FacetProjectCreationDataModelProvider.java
  
  Index: Ejb30FacetProjectCreationDataModelProvider.java
  ===================================================================
  package org.jboss.ide.eclipse.ejb3.core.facet;
  
  import java.util.ArrayList;
  import java.util.Collection;
  import java.util.List;
  import java.util.Map;
  
  import org.eclipse.core.runtime.IPath;
  import org.eclipse.core.runtime.Path;
  import org.eclipse.jst.common.project.facet.IJavaFacetInstallDataModelProperties;
  import org.eclipse.jst.common.project.facet.JavaFacetInstallDataModelProvider;
  import org.eclipse.jst.j2ee.internal.project.J2EEProjectUtilities;
  import org.eclipse.jst.j2ee.project.facet.IJ2EEModuleFacetInstallDataModelProperties;
  import org.eclipse.jst.j2ee.project.facet.J2EEFacetProjectCreationDataModelProvider;
  import org.eclipse.wst.common.componentcore.datamodel.properties.IFacetDataModelProperties;
  import org.eclipse.wst.common.frameworks.datamodel.DataModelEvent;
  import org.eclipse.wst.common.frameworks.datamodel.DataModelFactory;
  import org.eclipse.wst.common.frameworks.datamodel.DataModelPropertyDescriptor;
  import org.eclipse.wst.common.frameworks.datamodel.IDataModel;
  import org.eclipse.wst.common.frameworks.datamodel.IDataModelListener;
  import org.eclipse.wst.common.project.facet.core.IProjectFacet;
  import org.eclipse.wst.common.project.facet.core.ProjectFacetsManager;
  import org.eclipse.wst.common.project.facet.core.runtime.IRuntime;
  import org.eclipse.wst.server.core.ServerCore;
  import org.jboss.ide.eclipse.as.core.server.JBossServer;
  import org.jboss.ide.eclipse.as.core.server.runtime.JBossServerRuntime;
  import org.jboss.ide.eclipse.ejb3.core.classpath.EJB3ClasspathContainer;
  
  public class Ejb30FacetProjectCreationDataModelProvider extends J2EEFacetProjectCreationDataModelProvider {
  
  	public static final String EJB30_FACET_ID = "jboss.ejb30";
  	public static final IProjectFacet EJB_30_FACET_OBJECT = ProjectFacetsManager.getProjectFacet(EJB30_FACET_ID);
  
  	public Ejb30FacetProjectCreationDataModelProvider() {
  		super();
  	}
  
  	public void init() {
  		super.init();
  		FacetDataModelMap map = (FacetDataModelMap) getProperty(FACET_DM_MAP);
  		IDataModel javaFacet = DataModelFactory.createDataModel(new JavaFacetInstallDataModelProvider());
  		map.add(javaFacet);
  		IDataModel ejbFacet = DataModelFactory.createDataModel(new Ejb30FacetInstallDataModelProvider());
  		map.add(ejbFacet);
  		javaFacet.setProperty(IJavaFacetInstallDataModelProperties.SOURCE_FOLDER_NAME,ejbFacet.getStringProperty(IJ2EEModuleFacetInstallDataModelProperties.CONFIG_FOLDER));
  		ejbFacet.addListener(new IDataModelListener() {
  			public void propertyChanged(DataModelEvent event) {
  				if (IJ2EEModuleFacetInstallDataModelProperties.EAR_PROJECT_NAME.equals(event.getPropertyName())) {
  					setProperty(EAR_PROJECT_NAME, event.getProperty());
  				}else if (IJ2EEModuleFacetInstallDataModelProperties.ADD_TO_EAR.equals(event.getPropertyName())) {
  					setProperty(ADD_TO_EAR, event.getProperty());
  				}
  			}
  		});
  		
  		Collection requiredFacets = new ArrayList();
  		requiredFacets.add(ProjectFacetsManager.getProjectFacet(javaFacet.getStringProperty(IFacetDataModelProperties.FACET_ID)));
  		requiredFacets.add(ProjectFacetsManager.getProjectFacet(ejbFacet.getStringProperty(IFacetDataModelProperties.FACET_ID)));
  		setProperty(REQUIRED_FACETS_COLLECTION, requiredFacets);
  	}
  	
  	public boolean propertySet(String propertyName, Object propertyValue) {
  		if( propertyName.equals( MODULE_URI )){
  			FacetDataModelMap map = (FacetDataModelMap) getProperty(FACET_DM_MAP);
  			IDataModel ejbFacet = map.getFacetDataModel( J2EEProjectUtilities.EJB );	
  			ejbFacet.setProperty( IJ2EEModuleFacetInstallDataModelProperties.MODULE_URI, propertyValue );
  		}
  		return super.propertySet(propertyName, propertyValue);
  	}	
  	
  	public DataModelPropertyDescriptor[] getValidPropertyDescriptors(String propertyName) {
  		if (FACET_RUNTIME.equals(propertyName)) {
  			DataModelPropertyDescriptor[] descriptors = super.getValidPropertyDescriptors(propertyName);
  			List list = new ArrayList();
  			for (int i = 0; i < descriptors.length; i++) {
  				IRuntime rt = (IRuntime) descriptors[i].getPropertyValue();
  				if( rt == null ) continue;
  				Map properties = rt.getProperties();
  				String id = (String)properties.get("id");
  				org.eclipse.wst.server.core.IRuntime wstRuntime = ServerCore.findRuntime(id);
  				try {
  					JBossServerRuntime jbrt = (JBossServerRuntime) wstRuntime.getAdapter(JBossServerRuntime.class);
  					if( hasEJB3(jbrt)) {
  						list.add(descriptors[i]);
  					}
  				} catch( Exception e ) {
  					e.printStackTrace();
  				}
  			}
  			descriptors = new DataModelPropertyDescriptor[list.size()];
  			for (int i = 0; i < descriptors.length; i++) {
  				descriptors[i] = (DataModelPropertyDescriptor) list.get(i);
  			}
  			return descriptors;
  		}
  		return super.getValidPropertyDescriptors(propertyName);
  	}
  	
  	protected boolean hasEJB3(JBossServerRuntime jbrt) {
  	      IPath jarToCheck = EJB3ClasspathContainer.jbossConfigRelativeJarPaths[0];
  
  	      String jbossBaseDir = jbrt.getRuntime().getLocation().toOSString();
  	      String jbossConfigDir = jbrt.getConfigName();
  	      IPath absoluteJarPath = new Path(jbossBaseDir).append("server").append(jbossConfigDir).append(jarToCheck);
  	      return absoluteJarPath.toFile().exists();
  	}
  
  }
  
  
  
  
  
  1.1      date: 2006/11/06 17:04:26;  author: rawb;  state: Exp;jbosside/ejb3/plugins/org.jboss.ide.eclipse.ejb3.wizards.core/src/main/org/jboss/ide/eclipse/ejb3/core/facet/Ejb30FacetInstallDelegate.java
  
  Index: Ejb30FacetInstallDelegate.java
  ===================================================================
  package org.jboss.ide.eclipse.ejb3.core.facet;
  
  import java.lang.reflect.InvocationTargetException;
  
  import org.eclipse.core.commands.ExecutionException;
  import org.eclipse.core.resources.IFile;
  import org.eclipse.core.resources.IFolder;
  import org.eclipse.core.resources.IProject;
  import org.eclipse.core.resources.IProjectDescription;
  import org.eclipse.core.resources.IWorkspace;
  import org.eclipse.core.resources.ResourcesPlugin;
  import org.eclipse.core.runtime.CoreException;
  import org.eclipse.core.runtime.IPath;
  import org.eclipse.core.runtime.IProgressMonitor;
  import org.eclipse.core.runtime.NullProgressMonitor;
  import org.eclipse.core.runtime.Path;
  import org.eclipse.jdt.core.IClasspathEntry;
  import org.eclipse.jdt.core.IJavaProject;
  import org.eclipse.jdt.core.JavaCore;
  import org.eclipse.jem.util.logger.proxy.Logger;
  import org.eclipse.jst.common.project.facet.WtpUtils;
  import org.eclipse.jst.common.project.facet.core.ClasspathHelper;
  import org.eclipse.jst.j2ee.ejb.componentcore.util.EJBArtifactEdit;
  import org.eclipse.jst.j2ee.internal.J2EEConstants;
  import org.eclipse.jst.j2ee.internal.common.J2EEVersionUtil;
  import org.eclipse.jst.j2ee.project.facet.IJ2EEModuleFacetInstallDataModelProperties;
  import org.eclipse.jst.j2ee.project.facet.J2EEFacetInstallDelegate;
  import org.eclipse.wst.common.componentcore.ComponentCore;
  import org.eclipse.wst.common.componentcore.datamodel.FacetDataModelProvider;
  import org.eclipse.wst.common.componentcore.datamodel.properties.IFacetDataModelProperties;
  import org.eclipse.wst.common.componentcore.resources.IVirtualComponent;
  import org.eclipse.wst.common.componentcore.resources.IVirtualFolder;
  import org.eclipse.wst.common.frameworks.datamodel.IDataModel;
  import org.eclipse.wst.common.frameworks.datamodel.IDataModelOperation;
  import org.eclipse.wst.common.project.facet.core.IDelegate;
  import org.eclipse.wst.common.project.facet.core.IProjectFacetVersion;
  import org.eclipse.wst.project.facet.IProductConstants;
  import org.eclipse.wst.project.facet.ProductManager;
  
  public class Ejb30FacetInstallDelegate extends J2EEFacetInstallDelegate implements IDelegate {
  
  	public void execute(IProject project, IProjectFacetVersion fv, Object config, IProgressMonitor monitor) throws CoreException {
  
  		
  		if (monitor != null) {
  			monitor.beginTask("", 1); //$NON-NLS-1$
  		}
  
  		try {
  			
  			// add java nature first
  			addProjectNature(project, JavaCore.NATURE_ID);
  
  			IDataModel model = (IDataModel) config;
  
  			final IJavaProject jproj = JavaCore.create(project);
  
  			// Add WTP natures.
  			WtpUtils.addNatures(project);
  
  			// Create the directory structure.
  			final IWorkspace ws = ResourcesPlugin.getWorkspace();
  			final IPath pjpath = project.getFullPath();
  
  			// Setup the flexible project structure.
  			final IVirtualComponent c = ComponentCore.createComponent(project);
  			c.create(0, null);
  			c.setMetaProperty("java-output-path", ProductManager.getProperty(IProductConstants.OUTPUT_FOLDER)); //$NON-NLS-1$
  
  			final IVirtualFolder ejbroot = c.getRootFolder();
  
  			IFolder ejbFolder = null;
  			String configFolder = null;
  
  			configFolder = model.getStringProperty(IJ2EEModuleFacetInstallDataModelProperties.CONFIG_FOLDER);
  			ejbroot.createLink(new Path("/" + configFolder), 0, null); //$NON-NLS-1$
  
  			String ejbFolderName = model.getStringProperty(IJ2EEModuleFacetInstallDataModelProperties.CONFIG_FOLDER);
  			IPath ejbFolderpath = pjpath.append(ejbFolderName);
  
  			ejbFolder = ws.getRoot().getFolder(ejbFolderpath);
  
  			
  			// add source folder maps
  			final IClasspathEntry[] cp = jproj.getRawClasspath();
  			for (int i = 0; i < cp.length; i++) {
  				final IClasspathEntry cpe = cp[i];
  				if (cpe.getEntryKind() == IClasspathEntry.CPE_SOURCE) {
  					ejbroot.createLink(cpe.getPath().removeFirstSegments(1), 0, null);
  				}
  			}
  
  			// Setup the classpath.
  			ClasspathHelper.removeClasspathEntries(project, fv);
  
  			if (!ClasspathHelper.addClasspathEntries(project, fv)) {
  				// TODO: Support the no runtime case.
  				// ClasspathHelper.addClasspathEntries( project, fv, <something> );
  			}
  			
  			try {
  				((IDataModelOperation) model.getProperty(FacetDataModelProvider.NOTIFICATION_OPERATION)).execute(monitor, null);
  			} catch (ExecutionException e) {
  				Logger.getLogger().logError(e);
  			}
  			
  			if (monitor != null) {
  				monitor.worked(1);
  			}
  		}
  
  		finally {
  			if (monitor != null) {
  				monitor.done();
  			}
  		}
  	}
  	
  	
  
  	   /**
  	    * Add the given project nature to the given project (if it isn't already added).
  	    */
  	   public boolean addProjectNature(IProject project, String natureId) {
  	      boolean added = false;
  	      try {
  	         if (project != null && natureId != null) {
  	            IProjectDescription desc = project.getDescription();
  
  	            if (!project.hasNature(natureId)) {
  	               String natureIds[] = desc.getNatureIds();
  	               String newNatureIds[] = new String[natureIds.length + 1];
  
  	               System.arraycopy(natureIds, 0, newNatureIds, 1, natureIds.length);
  	               newNatureIds[0] = natureId;
  	               desc.setNatureIds(newNatureIds);
  
  	               project.getProject().setDescription(desc, new NullProgressMonitor());
  	               added = true;
  	            }
  	         }
  	      }
  	      catch (CoreException e) {
  	         e.printStackTrace();
  	      }
  	      return added;
  	   }
  	
  	
  }
  
  
  
  
  1.1      date: 2006/11/06 17:04:26;  author: rawb;  state: Exp;jbosside/ejb3/plugins/org.jboss.ide.eclipse.ejb3.wizards.core/src/main/org/jboss/ide/eclipse/ejb3/core/facet/Ejb30FacetInstallDataModelProvider.java
  
  Index: Ejb30FacetInstallDataModelProvider.java
  ===================================================================
  package org.jboss.ide.eclipse.ejb3.core.facet;
  
  import java.util.Set;
  
  import org.eclipse.core.runtime.IStatus;
  import org.eclipse.jst.j2ee.internal.J2EEVersionConstants;
  import org.eclipse.jst.j2ee.internal.common.CreationConstants;
  import org.eclipse.jst.j2ee.internal.ejb.project.operations.IEjbFacetInstallDataModelProperties;
  import org.eclipse.jst.j2ee.internal.plugin.IJ2EEModuleConstants;
  import org.eclipse.jst.j2ee.project.facet.J2EEModuleFacetInstallDataModelProvider;
  import org.eclipse.wst.common.project.facet.core.IProjectFacetVersion;
  import org.eclipse.wst.common.project.facet.core.ProjectFacetsManager;
  
  public class Ejb30FacetInstallDataModelProvider extends J2EEModuleFacetInstallDataModelProvider 
  	implements IEjbFacetInstallDataModelProperties{
  
  	public static final String EJB30_FACET_ID = "jboss.ejb30";
  	public static final IProjectFacetVersion EJB_30 = ProjectFacetsManager.getProjectFacet(EJB30_FACET_ID).getVersion("1.0"); //$NON-NLS-1$
  
  	public Set getPropertyNames() {
  		Set names = super.getPropertyNames();
  		names.add(CONFIG_FOLDER);
  		return names;
  	}
  
  	public Object getDefaultProperty(String propertyName) {
  		if(propertyName.equals(FACET_ID)){
  			return EJB30_FACET_ID;
  		} else if (propertyName.equals(CONFIG_FOLDER)){
  			return CreationConstants.DEFAULT_EJB_SOURCE_FOLDER;
  		} else if (propertyName.equals(MODULE_URI)) {
  			String projectName = model.getStringProperty(FACET_PROJECT_NAME).replace(' ', '_');
  			return projectName + IJ2EEModuleConstants.JAR_EXT; 
  		}
  		return super.getDefaultProperty(propertyName);
  	}
  
  
  	protected int convertFacetVersionToJ2EEVersion(IProjectFacetVersion version) {
  		// I've only got one facet version so far, so woohoo
  		return J2EEVersionConstants.J2EE_1_4_ID;
  	}
  		
  	public boolean isPropertyEnabled(String propertyName) {
  		return super.isPropertyEnabled(propertyName);
  	}
  
  
  	public boolean propertySet(String propertyName, Object propertyValue) {
  		boolean status = super.propertySet(propertyName, propertyValue);
  		return status;
  	}	
  
  	public IStatus validate(String propertyName) {
  		return super.validate(propertyName);
  	}
  
  }
  
  
  



More information about the jboss-cvs-commits mailing list