Author: rob.stryker(a)jboss.com
Date: 2009-06-22 04:28:57 -0400 (Mon, 22 Jun 2009)
New Revision: 16110
Removed:
trunk/esb/plugins/org.jboss.tools.esb.project.core/src/org/jboss/tools/esb/core/module/JBossESBModule.java
Modified:
trunk/esb/plugins/org.jboss.tools.esb.project.core/src/org/jboss/tools/esb/core/module/JBossESBModuleFactory.java
Log:
Cleaned up a bit
Deleted:
trunk/esb/plugins/org.jboss.tools.esb.project.core/src/org/jboss/tools/esb/core/module/JBossESBModule.java
===================================================================
---
trunk/esb/plugins/org.jboss.tools.esb.project.core/src/org/jboss/tools/esb/core/module/JBossESBModule.java 2009-06-22
07:59:54 UTC (rev 16109)
+++
trunk/esb/plugins/org.jboss.tools.esb.project.core/src/org/jboss/tools/esb/core/module/JBossESBModule.java 2009-06-22
08:28:57 UTC (rev 16110)
@@ -1,87 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2007 Red Hat, Inc.
- * Distributed under license by Red Hat, Inc. All rights reserved.
- * This program is 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:
- * Red Hat, Inc. - initial API and implementation
- ******************************************************************************/
-package org.jboss.tools.esb.core.module;
-
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.wst.common.project.facet.core.IFacetedProject;
-import org.eclipse.wst.common.project.facet.core.IProjectFacet;
-import org.eclipse.wst.common.project.facet.core.IProjectFacetVersion;
-import org.eclipse.wst.common.project.facet.core.ProjectFacetsManager;
-import org.eclipse.wst.server.core.IModule;
-import org.eclipse.wst.server.core.IModuleType;
-import org.eclipse.wst.server.core.internal.ModuleType;
-import org.eclipse.wst.server.core.model.ModuleDelegate;
-import org.eclipse.wst.server.core.model.ModuleFactoryDelegate;
-import org.jboss.tools.esb.core.ESBProjectConstant;
-import org.jboss.tools.esb.core.ESBProjectCorePlugin;
-
-public class JBossESBModule implements IModule{
-
- private IProject project;
- private ModuleFactoryDelegate factory;
- private String factoryId;
- public JBossESBModule(IProject project, ModuleFactoryDelegate factory, String
factoryId){
- this.project = project;
- this.factory = factory;
- this.factoryId = factoryId;
-
- }
- public Object getAdapter(Class adapter) {
- return null;
- }
-
- public String getId() {
- return factoryId + ":" + project.getName();
- }
-
- public IModuleType getModuleType() {
- IFacetedProject facetPrj;
- try {
- facetPrj = ProjectFacetsManager.create(project);
- if (facetPrj == null) {
- return null;
- }
- final IProjectFacet esbfacet =
ProjectFacetsManager.getProjectFacet(ESBProjectConstant.ESB_PROJECT_FACET);
- final IProjectFacetVersion fv = facetPrj.getInstalledVersion(esbfacet);
- return ModuleType.getModuleType(esbfacet.getId(), fv.getVersionString());
- } catch (CoreException e) {
- ESBProjectCorePlugin.getDefault().getLog().log(e.getStatus());
- }
-
- return null;
- }
-
- public String getName() {
- return project.getName();
- }
-
- public IProject getProject() {
- return project;
- }
-
- public boolean isExternal() {
- return false;
- }
-
- public Object loadAdapter(Class adapter, IProgressMonitor monitor) {
- ModuleDelegate delegate = factory.getModuleDelegate(this);
- if(adapter.isInstance(delegate))
- return delegate;
- return null;
- }
-
- public boolean exists() {
- return false;
- }
-
-}
Modified:
trunk/esb/plugins/org.jboss.tools.esb.project.core/src/org/jboss/tools/esb/core/module/JBossESBModuleFactory.java
===================================================================
---
trunk/esb/plugins/org.jboss.tools.esb.project.core/src/org/jboss/tools/esb/core/module/JBossESBModuleFactory.java 2009-06-22
07:59:54 UTC (rev 16109)
+++
trunk/esb/plugins/org.jboss.tools.esb.project.core/src/org/jboss/tools/esb/core/module/JBossESBModuleFactory.java 2009-06-22
08:28:57 UTC (rev 16110)
@@ -10,11 +10,14 @@
******************************************************************************/
package org.jboss.tools.esb.core.module;
+import java.util.HashMap;
+
import org.eclipse.core.resources.IProject;
import org.eclipse.core.runtime.CoreException;
import org.eclipse.core.runtime.NullProgressMonitor;
import org.eclipse.wst.common.project.facet.core.IFacetedProject;
import org.eclipse.wst.common.project.facet.core.IProjectFacet;
+import org.eclipse.wst.common.project.facet.core.IProjectFacetVersion;
import org.eclipse.wst.common.project.facet.core.ProjectFacetsManager;
import org.eclipse.wst.server.core.IModule;
import org.eclipse.wst.server.core.internal.ModuleFactory;
@@ -23,9 +26,12 @@
import org.eclipse.wst.server.core.util.ProjectModuleFactoryDelegate;
import org.jboss.tools.esb.core.ESBProjectConstant;
import org.jboss.tools.esb.core.ESBProjectCorePlugin;
+import org.jboss.tools.esb.core.facet.IJBossESBFacetDataModelProperties;
public class JBossESBModuleFactory extends ProjectModuleFactoryDelegate {
public static final String FACTORY_ID =
"org.jboss.tools.esb.project.core.moduleFactory";
+ public static final String MODULE_TYPE =
IJBossESBFacetDataModelProperties.JBOSS_ESB_FACET_ID;
+ public static final String MODULE_ID_PREFIX =
IJBossESBFacetDataModelProperties.JBOSS_ESB_FACET_ID + ".";
private static ModuleFactory factory;
private static JBossESBModuleFactory factDelegate;
@@ -47,16 +53,21 @@
return factDelegate;
}
+
+ private HashMap<IModule, JBossESBModuleDelegate> moduleToDelegate;
public JBossESBModuleFactory() {
+ moduleToDelegate = new HashMap<IModule, JBossESBModuleDelegate>();
}
@Override
+ protected void clearCache(IProject project) {
+ super.clearCache(project);
+ moduleToDelegate.remove(project);
+ }
+
+ @Override
public ModuleDelegate getModuleDelegate(IModule module) {
- if (module instanceof JBossESBModule) {
- IProject project = module.getProject();
- return new JBossESBModuleDelegate(project);
- }
- return null;
+ return moduleToDelegate.get(module);
}
protected IModule[] createModules(IProject project) {
@@ -70,8 +81,14 @@
.getProjectFacet(ESBProjectConstant.ESB_PROJECT_FACET);
if (facetProject.hasProjectFacet(esbFacet)) {
- JBossESBModule module = new JBossESBModule(project, this, this
- .getId());
+ IProjectFacetVersion version = facetProject.getProjectFacetVersion(esbFacet);
+ IModule module = createModule(
+ MODULE_ID_PREFIX + project.getName(),
+ project.getName(),
+ MODULE_TYPE,
+ version.getVersionString(),
+ project);
+ moduleToDelegate.put(module, new JBossESBModuleDelegate(project));
return new IModule[] { module };
}
} catch (CoreException e) {