You are viewing a plain text version of this content. The canonical link for it is here.
Posted to scm@geronimo.apache.org by mc...@apache.org on 2009/07/25 05:29:40 UTC

svn commit: r797712 - /geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.core/src/main/java/org/apache/geronimo/st/core/GeronimoServerBehaviourDelegate.java

Author: mcconne
Date: Sat Jul 25 03:29:39 2009
New Revision: 797712

URL: http://svn.apache.org/viewvc?rev=797712&view=rev
Log:
GERONIMODEVTOOLS-575 Set module publish state to UNKNOWN when there is a deployment exception

Modified:
    geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.core/src/main/java/org/apache/geronimo/st/core/GeronimoServerBehaviourDelegate.java

Modified: geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.core/src/main/java/org/apache/geronimo/st/core/GeronimoServerBehaviourDelegate.java
URL: http://svn.apache.org/viewvc/geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.core/src/main/java/org/apache/geronimo/st/core/GeronimoServerBehaviourDelegate.java?rev=797712&r1=797711&r2=797712&view=diff
==============================================================================
--- geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.core/src/main/java/org/apache/geronimo/st/core/GeronimoServerBehaviourDelegate.java (original)
+++ geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.core/src/main/java/org/apache/geronimo/st/core/GeronimoServerBehaviourDelegate.java Sat Jul 25 03:29:39 2009
@@ -294,16 +294,27 @@
 
 		_monitor = monitor;
 
-		try {
-			//NO_CHANGE need if app is associated but not started and no delta
-			if (deltaKind == NO_CHANGE && module.length == 1) {
-				invokeCommand(deltaKind, module[0]);
-			} else if (deltaKind == CHANGED || deltaKind == ADDED || deltaKind == REMOVED) {
-				invokeCommand(deltaKind, module[0]);
-			} 
-		} finally {
-			setModulePublishState(module, IServer.PUBLISH_STATE_NONE);
-		}
+        setModulePublishState(module, IServer.PUBLISH_STATE_NONE);
+        try {
+            //NO_CHANGE need if app is associated but not started and no delta
+            if (deltaKind == NO_CHANGE && module.length == 1) {
+                invokeCommand(deltaKind, module[0]);
+            }
+            else if (deltaKind == CHANGED || deltaKind == ADDED || deltaKind == REMOVED) {
+                invokeCommand(deltaKind, module[0]);
+            }
+        }
+        catch (CoreException e) {
+            //
+            // Set the module publish state to UNKNOWN so that WTP will not display "Synchronized"
+            // for the module and server. What we should see in the Eclipse Server View in this case
+            // is nothing for the module, but "Republish" for the server. This is a very subtle
+            // distinction but the only indication to the GEP end-user that their module was not 
+            // successfully deployed.
+            //
+            setModulePublishState(module, IServer.PUBLISH_STATE_UNKNOWN);
+            throw e;
+        }
 
         Trace.tracePoint("Exit ", "GeronimoServerBehaviourDelegate.publishModule");
 	}