[jboss-cvs] jbosside/as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core/server/stripped ...
Robert Stryker
rob.stryker at jboss.com
Mon Mar 19 18:49:35 EDT 2007
User: rawb
Date: 07/03/19 18:49:35
Modified: as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core/server/stripped
DeployableServerBehavior.java
Log:
Integration with packages
Removal of path publisher for individual files
Changes to event log label providers
Revision Changes Path
1.7 +44 -51 jbosside/as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core/server/stripped/DeployableServerBehavior.java
(In the diff below, changes in quantity of whitespace are not shown.)
Index: DeployableServerBehavior.java
===================================================================
RCS file: /cvsroot/jboss/jbosside/as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core/server/stripped/DeployableServerBehavior.java,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -b -r1.6 -r1.7
--- DeployableServerBehavior.java 9 Mar 2007 01:52:28 -0000 1.6
+++ DeployableServerBehavior.java 19 Mar 2007 22:49:35 -0000 1.7
@@ -3,8 +3,6 @@
import java.util.ArrayList;
import java.util.List;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.ResourcesPlugin;
import org.eclipse.core.runtime.CoreException;
import org.eclipse.core.runtime.IProgressMonitor;
import org.eclipse.core.runtime.IStatus;
@@ -19,16 +17,16 @@
import org.eclipse.wst.server.core.internal.ProgressUtil;
import org.eclipse.wst.server.core.internal.Server;
import org.eclipse.wst.server.core.internal.ServerPlugin;
-import org.eclipse.wst.server.core.model.IModuleResourceDelta;
import org.eclipse.wst.server.core.model.PublishOperation;
import org.eclipse.wst.server.core.model.ServerBehaviourDelegate;
-import org.jboss.ide.eclipse.as.core.ServerConverter;
+import org.jboss.ide.eclipse.as.core.model.EventLogModel;
+import org.jboss.ide.eclipse.as.core.model.EventLogModel.EventLogTreeItem;
import org.jboss.ide.eclipse.as.core.module.PackageModuleFactory;
import org.jboss.ide.eclipse.as.core.publishers.IJBossServerPublisher;
-import org.jboss.ide.eclipse.as.core.publishers.JstPackagesPublisher;
+import org.jboss.ide.eclipse.as.core.publishers.JstPublisher;
import org.jboss.ide.eclipse.as.core.publishers.NullPublisher;
import org.jboss.ide.eclipse.as.core.publishers.PackagesPublisher;
-import org.jboss.ide.eclipse.packages.core.model.PackagesCore;
+import org.jboss.ide.eclipse.as.core.publishers.PublisherEventLogger;
public class DeployableServerBehavior extends ServerBehaviourDelegate {
@@ -45,16 +43,12 @@
- // By default, goes to check if the members are all the same or any changes
- public IModuleResourceDelta[] getPublishedResourceDelta(IModule[] module) {
- return ((Server)getServer()).getPublishedResourceDelta(module);
- }
-
- protected void publishModule(int kind, int deltaKind, IModule[] module, IProgressMonitor monitor) throws CoreException {
- // kind = [incremental, full, auto, clean] = [1,2,3,4]
- // delta = [no_change, added, changed, removed] = [0,1,2,3]
+// public IModuleResourceDelta[] getPublishedResourceDelta(IModule[] module) {
+// return ((Server)getServer()).getPublishedResourceDelta(module);
+// }
- System.out.print("publishing module (" + module[0].getName() + "): ");
+ private void print(int kind, int deltaKind, String name) {
+ System.out.print("publishing module (" + name + "): ");
switch( kind ) {
case IServer.PUBLISH_INCREMENTAL: System.out.print("incremental, "); break;
case IServer.PUBLISH_FULL: System.out.print("full, "); break;
@@ -68,55 +62,53 @@
case ServerBehaviourDelegate.REMOVED: System.out.print("removed"); break;
}
System.out.println(" to server " + getServer().getId());
-
+ }
+ protected void publishModule(int kind, int deltaKind, IModule[] module, IProgressMonitor monitor) throws CoreException {
+ // kind = [incremental, full, auto, clean] = [1,2,3,4]
+ // delta = [no_change, added, changed, removed] = [0,1,2,3]
if( module.length == 0 ) return;
IJBossServerPublisher publisher;
-
+ print(kind, deltaKind, module[0].getName());
int modulePublishState = getServer().getModulePublishState(module) + 0;
- /**
- * If our modules are already packaged as ejb jars, wars, aop files,
- * then go ahead and publish
- */
- if( areJstStyleModules(module)){
- publisher = new JstPackagesPublisher(ServerConverter.getDeployableServer(getServer()));
- } else if( module[0].getModuleType().getId().equals(PackageModuleFactory.MODULE_TYPE)) {
- publisher = new PackagesPublisher(ServerConverter.getDeployableServer(getServer()));
+ EventLogTreeItem root = EventLogModel.getModel(getServer()).getRoot();
+ if( module.length > 1 ) {
+ root = PublisherEventLogger.createMultipleModuleTopLevelEvent(root, module.length);
+ }
+
+ for( int i = 0; i < module.length; i++ ) {
+ try {
+ if( isJstModule(module[i]) ) {
+ publisher = new JstPublisher(getServer(), root);
+ } else if( isPackagesTypeModule(module[i]) ) {
+ publisher = new PackagesPublisher(getServer(), root);
+ ((PackagesPublisher)publisher).setDelta(getPublishedResourceDelta(module));
} else {
publisher = new NullPublisher();
}
-
- publisher.publishModule(kind, deltaKind, modulePublishState, module, monitor);
+ publisher.publishModule(kind, deltaKind, modulePublishState, module[0], monitor);
setModulePublishState(module, publisher.getPublishState());
}
+ catch( Throwable e ) {e.printStackTrace();}
+ }
+ }
+
+
/* Temporary and will need to be fixed */
// TODO: Change to if it is a flex project. Don't know how to do that yet.
- protected boolean areJstStyleModules(IModule[] module) {
- String type;
- for( int i = 0; i < module.length; i++ ) {
- type = module[i].getModuleType().getId();
+ protected boolean isJstModule(IModule mod) {
+ String type = mod.getModuleType().getId();
if( type.equals("jst.ejb") || type.equals("jst.client")
|| type.equals("jst.web") || type.equals("jst.ear")
|| type.equals("jbide.ejb30"))
- continue;
- return false;
- }
return true;
- }
- /* Temporary and will need to be fixed */
- protected boolean hasPackagingConfiguration(IModule[] module) {
- try {
- String projectName = module[0].getName();
- IProject proj = ResourcesPlugin.getWorkspace().getRoot().getProject(projectName);
- return PackagesCore.getProjectPackages(proj, new NullProgressMonitor()).length == 0 ? false : true;
- } catch( Exception e ) {}
return false;
}
-
-
-
+ protected boolean isPackagesTypeModule(IModule module) {
+ return module.getModuleType().getId().equals(PackageModuleFactory.MODULE_TYPE);
+ }
/*
* Change the state of the server
@@ -138,6 +130,7 @@
}
+ // Basically stolen from RunOnServerActionDelegate
public IStatus publishOneModule(int kind, IModule[] module, int deltaKind, IProgressMonitor monitor) {
addAndRemoveModules( module, deltaKind);
ArrayList moduleList = new ArrayList();
More information about the jboss-cvs-commits
mailing list