JBoss Tools SVN: r2990 - in trunk: seam/plugins/org.jboss.tools.seam.core/META-INF and 1 other directories.
by jbosstools-commits@lists.jboss.org
Author: max.andersen(a)jboss.com
Date: 2007-08-08 21:07:40 -0400 (Wed, 08 Aug 2007)
New Revision: 2990
Modified:
trunk/as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core/server/stripped/DeployableServerBehavior.java
trunk/seam/plugins/org.jboss.tools.seam.core/META-INF/MANIFEST.MF
trunk/seam/plugins/org.jboss.tools.seam.core/src/org/jboss/tools/seam/internal/core/project/facet/SeamFacetInstallDelegete.java
Log:
trying to auto deploy ds.xml
Modified: trunk/as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core/server/stripped/DeployableServerBehavior.java
===================================================================
--- trunk/as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core/server/stripped/DeployableServerBehavior.java 2007-08-08 23:50:12 UTC (rev 2989)
+++ trunk/as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core/server/stripped/DeployableServerBehavior.java 2007-08-09 01:07:40 UTC (rev 2990)
@@ -8,6 +8,7 @@
import org.eclipse.core.runtime.IStatus;
import org.eclipse.core.runtime.MultiStatus;
import org.eclipse.core.runtime.NullProgressMonitor;
+import org.eclipse.core.runtime.Status;
import org.eclipse.debug.core.ILaunchConfigurationWorkingCopy;
import org.eclipse.wst.server.core.IModule;
import org.eclipse.wst.server.core.IServer;
@@ -168,12 +169,12 @@
((Server)getServer()).getServerPublishInfo().clearCache();
((Server)getServer()).getServerPublishInfo().save();
- return null;
+ return Status.OK_STATUS;
} catch( Exception e ) {
}
- return null;
+ return Status.CANCEL_STATUS;
}
protected void addAndRemoveModules(IModule[] module, int deltaKind) {
Modified: trunk/seam/plugins/org.jboss.tools.seam.core/META-INF/MANIFEST.MF
===================================================================
--- trunk/seam/plugins/org.jboss.tools.seam.core/META-INF/MANIFEST.MF 2007-08-08 23:50:12 UTC (rev 2989)
+++ trunk/seam/plugins/org.jboss.tools.seam.core/META-INF/MANIFEST.MF 2007-08-09 01:07:40 UTC (rev 2990)
@@ -33,7 +33,9 @@
org.eclipse.datatools.connectivity.db.generic.ui,
org.eclipse.datatools.connectivity.ui,
org.eclipse.datatools.connectivity.ui.dse,
- org.eclipse.jst.common.project.facet.core
+ org.eclipse.jst.common.project.facet.core,
+ org.jboss.ide.eclipse.as.core,
+ org.eclipse.wst.server.core
Provide-Package: org.jboss.tools.seam.core,
org.jboss.tools.seam.internal.core,
org.jboss.tools.seam.internal.core.scanner,
Modified: trunk/seam/plugins/org.jboss.tools.seam.core/src/org/jboss/tools/seam/internal/core/project/facet/SeamFacetInstallDelegete.java
===================================================================
--- trunk/seam/plugins/org.jboss.tools.seam.core/src/org/jboss/tools/seam/internal/core/project/facet/SeamFacetInstallDelegete.java 2007-08-08 23:50:12 UTC (rev 2989)
+++ trunk/seam/plugins/org.jboss.tools.seam.core/src/org/jboss/tools/seam/internal/core/project/facet/SeamFacetInstallDelegete.java 2007-08-09 01:07:40 UTC (rev 2990)
@@ -12,6 +12,7 @@
import java.io.File;
import java.io.IOException;
+import java.util.Iterator;
import org.apache.tools.ant.types.FilterSet;
import org.apache.tools.ant.types.FilterSetCollection;
@@ -20,6 +21,7 @@
import org.eclipse.core.resources.IResource;
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.IStatus;
import org.eclipse.core.runtime.Path;
@@ -32,7 +34,16 @@
import org.eclipse.wst.common.componentcore.resources.IVirtualFolder;
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.IFacetedProject;
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.IRuntime;
+import org.eclipse.wst.server.core.IServer;
+import org.eclipse.wst.server.core.ServerCore;
+import org.eclipse.wst.server.core.model.ServerBehaviourDelegate;
+import org.jboss.ide.eclipse.as.core.server.stripped.DeployableServerBehavior;
+import org.jboss.ide.eclipse.as.core.singledeployable.SingleDeployableFactory;
import org.jboss.tools.common.model.util.EclipseResourceUtil;
import org.jboss.tools.seam.core.ISeamProject;
import org.jboss.tools.seam.core.SeamCorePlugin;
@@ -172,7 +183,7 @@
WebArtifactEdit edit = WebArtifactEdit.getWebArtifactEditForRead(project);
IVirtualComponent com = ComponentCore.createComponent(project);
IVirtualFolder webRootFolder = com.getRootFolder().getFolder(new Path("/"));
- IVirtualFolder srcRootFolder = com.getRootFolder().getFolder(new Path("/WEB-INF/classes"));
+ final IVirtualFolder srcRootFolder = com.getRootFolder().getFolder(new Path("/WEB-INF/classes"));
IContainer folder = webRootFolder.getUnderlyingFolder();
edit.dispose();
model.setProperty(ISeamFacetDataModelProperties.SEAM_PROJECT_NAME, project.getName());
@@ -296,6 +307,68 @@
if(model.getProperty(ISeamFacetDataModelProperties.JDBC_DRIVER_JAR_PATH)!=null)
AntCopyUtils.copyFiles((String[])model.getProperty(ISeamFacetDataModelProperties.JDBC_DRIVER_JAR_PATH), webLibFolder);
+ Job create = new Job("Deploying datasource to server") {
+ @Override
+ protected IStatus run(IProgressMonitor monitor) {
+
+ IFacetedProject facetedProject;
+ try {
+ facetedProject = ProjectFacetsManager.create(project);
+ } catch (CoreException e) {
+ return new Status(Status.WARNING, SeamCorePlugin.PLUGIN_ID, "No server selected to deploy datasource to");
+ }
+ org.eclipse.wst.common.project.facet.core.runtime.IRuntime primaryRuntime = facetedProject.getPrimaryRuntime();
+ IServer s = null;
+ IServer[] servers = ServerCore.getServers();
+ for (IServer server : servers) {
+ String primaryName = primaryRuntime.getName();
+ IRuntime runtime = server.getRuntime();
+ if(runtime!=null) {
+ String serverName = runtime.getName();
+ if(primaryName.equals(serverName)) {
+ s = server;
+ }
+ }
+ }
+
+
+
+
+
+
+ if(s==null) {
+ return new Status(Status.WARNING, SeamCorePlugin.PLUGIN_ID, "No server selected to deploy datasource to");
+ }
+
+ // convert it to a DeployableServer instance
+ DeployableServerBehavior deployer = (DeployableServerBehavior) s.loadAdapter(DeployableServerBehavior.class, null);
+
+ // if its not null, the adaptation worked.
+ if( deployer == null ) {
+ return new Status(Status.WARNING, SeamCorePlugin.PLUGIN_ID, "Server did not support deploy of datasource.");
+ }
+
+ IContainer underlyingFolder = srcRootFolder.getUnderlyingFolder();
+
+ IPath projectPath = new Path("/"+underlyingFolder.getProject().getName());
+ IPath projectRelativePath = underlyingFolder.getProjectRelativePath();
+
+ IPath append = projectPath.append(projectRelativePath).append(project.getName()+"-ds.xml");
+
+ if(SingleDeployableFactory.makeDeployable(append)) {
+
+ IModule module = SingleDeployableFactory.findModule(append);
+
+ // custom API to deploy / publish only one module.
+ IStatus t = deployer.publishOneModule(IServer.PUBLISH_FULL, new IModule[] { module}, ServerBehaviourDelegate.ADDED, monitor);
+ return t;
+ } else {
+ return new Status(Status.WARNING, SeamCorePlugin.PLUGIN_ID, "Could not deploy datasource " + append);
+ }
+ }
+ };
+ create.setRule(ResourcesPlugin.getWorkspace().getRoot());
+ create.schedule();
} else {
18 years, 4 months
JBoss Tools SVN: r2989 - trunk/as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core/singledeployable.
by jbosstools-commits@lists.jboss.org
Author: max.andersen(a)jboss.com
Date: 2007-08-08 19:50:12 -0400 (Wed, 08 Aug 2007)
New Revision: 2989
Modified:
trunk/as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core/singledeployable/SingleDeployableFactory.java
Log:
fixes NPE's
Modified: trunk/as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core/singledeployable/SingleDeployableFactory.java
===================================================================
--- trunk/as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core/singledeployable/SingleDeployableFactory.java 2007-08-08 22:24:58 UTC (rev 2988)
+++ trunk/as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core/singledeployable/SingleDeployableFactory.java 2007-08-08 23:50:12 UTC (rev 2989)
@@ -105,12 +105,14 @@
protected boolean addModule(IPath path) {
IResource resource = ResourcesPlugin.getWorkspace().getRoot().findMember(path);
- if( resource.exists() ) {
+ if( resource != null && resource.exists() ) {
IModule module = createModule(path.toString(), path.toString(), MODULE_TYPE, VERSION, resource.getProject());
moduleIdToModule.put(path, module);
moduleToDelegate.put(module, new SingleDeployableModuleDelegate(path));
- }
- return resource.exists();
+ return true;
+ } else {
+ return false;
+ }
}
protected void removeModule(IPath path) {
18 years, 4 months
JBoss Tools SVN: r2988 - in trunk/as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core: singledeployable and 1 other directory.
by jbosstools-commits@lists.jboss.org
Author: rob.stryker(a)jboss.com
Date: 2007-08-08 18:24:58 -0400 (Wed, 08 Aug 2007)
New Revision: 2988
Modified:
trunk/as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core/server/stripped/DeployableServerBehavior.java
trunk/as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core/singledeployable/SingleDeployableFactory.java
trunk/as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core/singledeployable/SingleFilePublisher.java
Log:
new deployable factory for single deployable. will need a ui change shortly.
poublisher for them
Modified: trunk/as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core/server/stripped/DeployableServerBehavior.java
===================================================================
--- trunk/as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core/server/stripped/DeployableServerBehavior.java 2007-08-08 22:19:34 UTC (rev 2987)
+++ trunk/as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core/server/stripped/DeployableServerBehavior.java 2007-08-08 22:24:58 UTC (rev 2988)
@@ -84,7 +84,7 @@
} else if( isPackagesTypeModule(module[i]) ) {
publisher = new PackagesPublisher(getServer(), root);
} else if( module[i].getModuleType().equals("jboss.singlefile")){
- publisher = new SingleFilePublisher();
+ publisher = new SingleFilePublisher(getServer());
} else {
publisher = new NullPublisher();
}
Modified: trunk/as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core/singledeployable/SingleDeployableFactory.java
===================================================================
--- trunk/as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core/singledeployable/SingleDeployableFactory.java 2007-08-08 22:19:34 UTC (rev 2987)
+++ trunk/as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core/singledeployable/SingleDeployableFactory.java 2007-08-08 22:24:58 UTC (rev 2988)
@@ -148,5 +148,8 @@
return Status.OK_STATUS;
}
+ public IPath getGlobalSourcePath() {
+ return this.global;
+ }
}
}
Modified: trunk/as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core/singledeployable/SingleFilePublisher.java
===================================================================
--- trunk/as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core/singledeployable/SingleFilePublisher.java 2007-08-08 22:19:34 UTC (rev 2987)
+++ trunk/as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core/singledeployable/SingleFilePublisher.java 2007-08-08 22:24:58 UTC (rev 2988)
@@ -1,15 +1,27 @@
package org.jboss.ide.eclipse.as.core.singledeployable;
import org.eclipse.core.runtime.CoreException;
+import org.eclipse.core.runtime.IPath;
import org.eclipse.core.runtime.IProgressMonitor;
import org.eclipse.core.runtime.IStatus;
+import org.eclipse.core.runtime.NullProgressMonitor;
+import org.eclipse.core.runtime.Path;
import org.eclipse.wst.server.core.IModule;
import org.eclipse.wst.server.core.IServer;
import org.eclipse.wst.server.core.model.IModuleResourceDelta;
import org.jboss.ide.eclipse.as.core.publishers.IJBossServerPublisher;
+import org.jboss.ide.eclipse.as.core.server.attributes.IDeployableServer;
+import org.jboss.ide.eclipse.as.core.singledeployable.SingleDeployableFactory.SingleDeployableModuleDelegate;
+import org.jboss.ide.eclipse.as.core.util.FileUtil;
+import org.jboss.ide.eclipse.as.core.util.ServerConverter;
public class SingleFilePublisher implements IJBossServerPublisher {
+ private IDeployableServer server;
+ public SingleFilePublisher(IServer server) {
+ this.server = ServerConverter.getDeployableServer(server);
+ }
+
public int getPublishState() {
return IServer.PUBLISH_STATE_NONE;
}
@@ -19,6 +31,10 @@
throws CoreException {
// COPY THE FILE HERE!!!
+ SingleDeployableModuleDelegate delegate = (SingleDeployableModuleDelegate)module.loadAdapter(SingleDeployableModuleDelegate.class, new NullProgressMonitor());
+ IPath sourcePath = delegate.getGlobalSourcePath();
+ IPath destFolder = new Path(server.getDeployDirectory());
+ FileUtil.fileSafeCopy(sourcePath.toFile(), destFolder.append(sourcePath.lastSegment()).toFile());
return null;
}
18 years, 4 months
JBoss Tools SVN: r2987 - in trunk/as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core: singledeployable and 1 other directory.
by jbosstools-commits@lists.jboss.org
Author: rob.stryker(a)jboss.com
Date: 2007-08-08 18:19:34 -0400 (Wed, 08 Aug 2007)
New Revision: 2987
Added:
trunk/as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core/singledeployable/SingleFilePublisher.java
Modified:
trunk/as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core/server/stripped/DeployableServerBehavior.java
Log:
new deployable factory for single deployable. will need a ui change shortly.
poublisher for them
Modified: trunk/as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core/server/stripped/DeployableServerBehavior.java
===================================================================
--- trunk/as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core/server/stripped/DeployableServerBehavior.java 2007-08-08 21:42:29 UTC (rev 2986)
+++ trunk/as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core/server/stripped/DeployableServerBehavior.java 2007-08-08 22:19:34 UTC (rev 2987)
@@ -27,6 +27,7 @@
import org.jboss.ide.eclipse.as.core.publishers.NullPublisher;
import org.jboss.ide.eclipse.as.core.publishers.PackagesPublisher;
import org.jboss.ide.eclipse.as.core.publishers.PublisherEventLogger;
+import org.jboss.ide.eclipse.as.core.singledeployable.SingleFilePublisher;
public class DeployableServerBehavior extends ServerBehaviourDelegate {
@@ -82,6 +83,8 @@
publisher = new JstPublisher(getServer(), root);
} else if( isPackagesTypeModule(module[i]) ) {
publisher = new PackagesPublisher(getServer(), root);
+ } else if( module[i].getModuleType().equals("jboss.singlefile")){
+ publisher = new SingleFilePublisher();
} else {
publisher = new NullPublisher();
}
Added: trunk/as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core/singledeployable/SingleFilePublisher.java
===================================================================
--- trunk/as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core/singledeployable/SingleFilePublisher.java (rev 0)
+++ trunk/as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core/singledeployable/SingleFilePublisher.java 2007-08-08 22:19:34 UTC (rev 2987)
@@ -0,0 +1,30 @@
+package org.jboss.ide.eclipse.as.core.singledeployable;
+
+import org.eclipse.core.runtime.CoreException;
+import org.eclipse.core.runtime.IProgressMonitor;
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.wst.server.core.IModule;
+import org.eclipse.wst.server.core.IServer;
+import org.eclipse.wst.server.core.model.IModuleResourceDelta;
+import org.jboss.ide.eclipse.as.core.publishers.IJBossServerPublisher;
+
+public class SingleFilePublisher implements IJBossServerPublisher {
+
+ public int getPublishState() {
+ return IServer.PUBLISH_STATE_NONE;
+ }
+
+ public IStatus publishModule(int kind, int deltaKind,
+ int modulePublishState, IModule module, IProgressMonitor monitor)
+ throws CoreException {
+
+ // COPY THE FILE HERE!!!
+
+ return null;
+ }
+
+ public void setDelta(IModuleResourceDelta[] delta) {
+ // ignore delta
+ }
+
+}
18 years, 4 months
JBoss Tools SVN: r2986 - trunk/as/plugins/org.jboss.ide.eclipse.as.core.
by jbosstools-commits@lists.jboss.org
Author: rob.stryker(a)jboss.com
Date: 2007-08-08 17:42:29 -0400 (Wed, 08 Aug 2007)
New Revision: 2986
Modified:
trunk/as/plugins/org.jboss.ide.eclipse.as.core/plugin.xml
Log:
new deployable factory for single deployable. will need a ui change shortly.
Modified: trunk/as/plugins/org.jboss.ide.eclipse.as.core/plugin.xml
===================================================================
--- trunk/as/plugins/org.jboss.ide.eclipse.as.core/plugin.xml 2007-08-08 21:42:21 UTC (rev 2985)
+++ trunk/as/plugins/org.jboss.ide.eclipse.as.core/plugin.xml 2007-08-08 21:42:29 UTC (rev 2986)
@@ -199,6 +199,15 @@
types="jboss.package"
versions="1.0"/>
</moduleFactory>
+ <moduleFactory
+ class="org.jboss.ide.eclipse.as.core.singledeployable.SingleDeployableFactory"
+ id="org.jboss.ide.eclipse.as.core.singledeployablefactory"
+ projects="false">
+ <moduleType
+ types="jboss.singlefile"
+ versions="1.0">
+ </moduleType>
+ </moduleFactory>
</extension>
18 years, 4 months
JBoss Tools SVN: r2985 - trunk/as/plugins/org.jboss.ide.eclipse.as.core/META-INF.
by jbosstools-commits@lists.jboss.org
Author: rob.stryker(a)jboss.com
Date: 2007-08-08 17:42:21 -0400 (Wed, 08 Aug 2007)
New Revision: 2985
Modified:
trunk/as/plugins/org.jboss.ide.eclipse.as.core/META-INF/MANIFEST.MF
Log:
new exported package
Modified: trunk/as/plugins/org.jboss.ide.eclipse.as.core/META-INF/MANIFEST.MF
===================================================================
--- trunk/as/plugins/org.jboss.ide.eclipse.as.core/META-INF/MANIFEST.MF 2007-08-08 21:41:43 UTC (rev 2984)
+++ trunk/as/plugins/org.jboss.ide.eclipse.as.core/META-INF/MANIFEST.MF 2007-08-08 21:42:21 UTC (rev 2985)
@@ -33,6 +33,7 @@
org.jboss.ide.eclipse.as.core.server,
org.jboss.ide.eclipse.as.core.server.attributes,
org.jboss.ide.eclipse.as.core.server.stripped,
+ org.jboss.ide.eclipse.as.core.singledeployable,
org.jboss.ide.eclipse.as.core.util
Bundle-ClassPath: dom4j-1.6.1.jar,
jaxen-1.1-beta-6.jar,
18 years, 4 months
JBoss Tools SVN: r2984 - in trunk/as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core: singledeployable and 1 other directory.
by jbosstools-commits@lists.jboss.org
Author: rob.stryker(a)jboss.com
Date: 2007-08-08 17:41:43 -0400 (Wed, 08 Aug 2007)
New Revision: 2984
Added:
trunk/as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core/singledeployable/
trunk/as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core/singledeployable/SingleDeployableFactory.java
Log:
new deployable factory for single deployable. will need a ui change shortly.
Added: trunk/as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core/singledeployable/SingleDeployableFactory.java
===================================================================
--- trunk/as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core/singledeployable/SingleDeployableFactory.java (rev 0)
+++ trunk/as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core/singledeployable/SingleDeployableFactory.java 2007-08-08 21:41:43 UTC (rev 2984)
@@ -0,0 +1,152 @@
+package org.jboss.ide.eclipse.as.core.singledeployable;
+
+import java.util.Collection;
+import java.util.HashMap;
+import java.util.Iterator;
+
+import org.eclipse.core.resources.IResource;
+import org.eclipse.core.resources.ResourcesPlugin;
+import org.eclipse.core.runtime.CoreException;
+import org.eclipse.core.runtime.IPath;
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.core.runtime.NullProgressMonitor;
+import org.eclipse.core.runtime.Path;
+import org.eclipse.core.runtime.Status;
+import org.eclipse.wst.server.core.IModule;
+import org.eclipse.wst.server.core.internal.ModuleFactory;
+import org.eclipse.wst.server.core.internal.ModuleFile;
+import org.eclipse.wst.server.core.internal.ServerPlugin;
+import org.eclipse.wst.server.core.model.IModuleResource;
+import org.eclipse.wst.server.core.model.ModuleDelegate;
+import org.eclipse.wst.server.core.model.ModuleFactoryDelegate;
+import org.jboss.ide.eclipse.as.core.JBossServerCorePlugin;
+import org.jboss.ide.eclipse.as.core.packages.PackageModuleFactory;
+
+public class SingleDeployableFactory extends ModuleFactoryDelegate {
+ public static final String FACTORY_ID = "org.jboss.ide.eclipse.as.core.singledeployablefactory";
+ private static SingleDeployableFactory factDelegate;
+ public static final String MODULE_TYPE = "jboss.singlefile";
+ public static final String VERSION = "1.0";
+ private static final String PREFERENCE_KEY = "org.jboss.ide.eclipse.as.core.singledeployable.deployableList";
+ private static final String DELIM = "\r";
+
+
+ private static ModuleFactory factory;
+ public static SingleDeployableFactory getFactory() {
+ if( factDelegate == null ) {
+ ModuleFactory[] factories = ServerPlugin.getModuleFactories();
+ for( int i = 0; i < factories.length; i++ ) {
+ if( factories[i].getId().equals(FACTORY_ID)) {
+ Object o = factories[i].getDelegate(new NullProgressMonitor());
+ if( o instanceof SingleDeployableFactory ) {
+ factory = factories[i];
+ factDelegate = (SingleDeployableFactory)o;
+ return factDelegate;
+ }
+ }
+ }
+ }
+ return factDelegate;
+ }
+
+ public static boolean makeDeployable(IResource resource) {
+ return makeDeployable(resource.getFullPath());
+ }
+
+ public static boolean makeDeployable(IPath workspaceRelative) {
+ boolean ret = getFactory().addModule(workspaceRelative);
+ getFactory().saveDeployableList();
+ return ret;
+ }
+
+ public static void unmakeDeployable(IResource resource) {
+ unmakeDeployable(resource.getFullPath());
+ }
+
+ public static void unmakeDeployable(IPath workspaceRelative) {
+ getFactory().removeModule(workspaceRelative);
+ getFactory().saveDeployableList();
+ }
+
+ public static IModule findModule(IResource resource) {
+ return findModule(resource.getFullPath());
+ }
+ public static IModule findModule(IPath workspaceRelative) {
+ return getFactory().getModule(workspaceRelative);
+ }
+
+
+
+ private HashMap moduleIdToModule;
+ private HashMap moduleToDelegate;
+ public SingleDeployableFactory() {
+ moduleIdToModule = new HashMap();
+ moduleToDelegate = new HashMap();
+ String files = JBossServerCorePlugin.getDefault().getPluginPreferences().getString(PREFERENCE_KEY);
+ if( files.equals("")) return;
+ String[] files2 = files.split(DELIM);
+ for( int i = 0; i < files2.length; i++ ) {
+ addModule(new Path(files2[i]));
+ }
+ }
+
+ public IModule getModule(IPath path) {
+ return (IModule)moduleIdToModule.get(path);
+ }
+ public void saveDeployableList() {
+ Iterator i = moduleIdToModule.keySet().iterator();
+ String val = "";
+ while(i.hasNext()) {
+ val += ((IPath)i.next()).toString() + DELIM;
+ }
+ JBossServerCorePlugin.getDefault().getPluginPreferences().setValue(PREFERENCE_KEY, val);
+ JBossServerCorePlugin.getDefault().savePluginPreferences();
+ }
+
+ protected boolean addModule(IPath path) {
+ IResource resource = ResourcesPlugin.getWorkspace().getRoot().findMember(path);
+ if( resource.exists() ) {
+ IModule module = createModule(path.toString(), path.toString(), MODULE_TYPE, VERSION, resource.getProject());
+ moduleIdToModule.put(path, module);
+ moduleToDelegate.put(module, new SingleDeployableModuleDelegate(path));
+ }
+ return resource.exists();
+ }
+
+ protected void removeModule(IPath path) {
+ IModule mod = (IModule)moduleIdToModule.get(path);
+ moduleIdToModule.remove(path);
+ moduleToDelegate.remove(mod);
+ }
+
+ public IModule[] getModules() {
+ Collection c = moduleIdToModule.values();
+ return (IModule[]) c.toArray(new IModule[c.size()]);
+ }
+
+ public ModuleDelegate getModuleDelegate(IModule module) {
+ return (ModuleDelegate)moduleToDelegate.get(module);
+ }
+
+ public class SingleDeployableModuleDelegate extends ModuleDelegate {
+ private IPath global;
+ public SingleDeployableModuleDelegate(IPath workspaceRelative) {
+ global = ResourcesPlugin.getWorkspace().getRoot().getLocation().append(workspaceRelative);
+ }
+ public IModule[] getChildModules() {
+ return new IModule[0];
+ }
+
+ public IModuleResource[] members() throws CoreException {
+ return new IModuleResource[] {
+ new ModuleFile(global.lastSegment(),
+ new Path(global.lastSegment()),
+ global.toFile().lastModified()) };
+ }
+
+ public IStatus validate() {
+ return Status.OK_STATUS;
+ }
+
+ }
+}
18 years, 4 months
JBoss Tools SVN: r2982 - trunk/hibernatetools/plugins/org.jboss.tools.hibernate.ui.view/src/org/jboss/tools/hibernate/ui/view/views.
by jbosstools-commits@lists.jboss.org
Author: max.andersen(a)jboss.com
Date: 2007-08-08 15:13:05 -0400 (Wed, 08 Aug 2007)
New Revision: 2982
Modified:
trunk/hibernatetools/plugins/org.jboss.tools.hibernate.ui.view/src/org/jboss/tools/hibernate/ui/view/views/HibernateUtils.java
Log:
fix broken tablename method.
Modified: trunk/hibernatetools/plugins/org.jboss.tools.hibernate.ui.view/src/org/jboss/tools/hibernate/ui/view/views/HibernateUtils.java
===================================================================
--- trunk/hibernatetools/plugins/org.jboss.tools.hibernate.ui.view/src/org/jboss/tools/hibernate/ui/view/views/HibernateUtils.java 2007-08-08 17:11:20 UTC (rev 2981)
+++ trunk/hibernatetools/plugins/org.jboss.tools.hibernate.ui.view/src/org/jboss/tools/hibernate/ui/view/views/HibernateUtils.java 2007-08-08 19:13:05 UTC (rev 2982)
@@ -9,9 +9,9 @@
public class HibernateUtils {
public static String getTableName(Table table) {
+ String catalog = table.getCatalog();
String schema = table.getSchema();
- String catalog = table.getCatalog();
- return (schema != null ? schema + "." : "") + (catalog != null ? catalog + "." : "") + table.getName();
+ return (catalog != null ? catalog + "." : "") + (schema != null ? schema + "." : "") + table.getName();
}
public static boolean isPrimaryKey(Column column){
18 years, 4 months
JBoss Tools SVN: r2981 - trunk/seam/plugins/org.jboss.tools.seam.ui/src/org/jboss/tools/seam/ui/views.
by jbosstools-commits@lists.jboss.org
Author: max.andersen(a)jboss.com
Date: 2007-08-08 13:11:20 -0400 (Wed, 08 Aug 2007)
New Revision: 2981
Modified:
trunk/seam/plugins/org.jboss.tools.seam.ui/src/org/jboss/tools/seam/ui/views/SeamLabelProvider.java
Log:
JBIDE-664 show short name when under a seam package node
Modified: trunk/seam/plugins/org.jboss.tools.seam.ui/src/org/jboss/tools/seam/ui/views/SeamLabelProvider.java
===================================================================
--- trunk/seam/plugins/org.jboss.tools.seam.ui/src/org/jboss/tools/seam/ui/views/SeamLabelProvider.java 2007-08-08 16:34:59 UTC (rev 2980)
+++ trunk/seam/plugins/org.jboss.tools.seam.ui/src/org/jboss/tools/seam/ui/views/SeamLabelProvider.java 2007-08-08 17:11:20 UTC (rev 2981)
@@ -55,6 +55,12 @@
} else if(element instanceof ISeamComponent) {
ISeamComponent c = (ISeamComponent)element;
String name = c.getName();
+
+ int lastIndexOf = name.lastIndexOf('.');
+ if(lastIndexOf!=-1&&lastIndexOf!=name.length()) {
+ name = name.substring(lastIndexOf+1); // temp fix for JBIDE-644; shouldn't need to do this here. shold be a method to getShortName or similar but ISeamComponent extends ISeamContextVariable so ended up being weird to do clean.
+ }
+
if(ScopePresentationActionProvider.isScopePresentedAsLabel()) {
name += " (" + ((ISeamScope)c.getParent()).getType().getLabel() + ")";
}
18 years, 4 months