Return-Path: Delivered-To: apmail-geronimo-scm-archive@www.apache.org Received: (qmail 28591 invoked from network); 15 Sep 2006 19:59:13 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (209.237.227.199) by minotaur.apache.org with SMTP; 15 Sep 2006 19:59:13 -0000 Received: (qmail 37769 invoked by uid 500); 15 Sep 2006 19:59:08 -0000 Delivered-To: apmail-geronimo-scm-archive@geronimo.apache.org Received: (qmail 37726 invoked by uid 500); 15 Sep 2006 19:59:08 -0000 Mailing-List: contact scm-help@geronimo.apache.org; run by ezmlm Precedence: bulk list-help: list-unsubscribe: List-Post: Reply-To: dev@geronimo.apache.org List-Id: Delivered-To: mailing list scm@geronimo.apache.org Received: (qmail 37709 invoked by uid 99); 15 Sep 2006 19:59:08 -0000 Received: from asf.osuosl.org (HELO asf.osuosl.org) (140.211.166.49) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 15 Sep 2006 12:59:08 -0700 X-ASF-Spam-Status: No, hits=-8.6 required=10.0 tests=ALL_TRUSTED,INFO_TLD,NO_REAL_NAME X-Spam-Check-By: apache.org Received-SPF: pass (asf.osuosl.org: local policy) Received: from [140.211.166.113] (HELO eris.apache.org) (140.211.166.113) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 15 Sep 2006 12:59:03 -0700 Received: by eris.apache.org (Postfix, from userid 65534) id 49A061A981A; Fri, 15 Sep 2006 12:57:57 -0700 (PDT) Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: svn commit: r446707 - /geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.core/src/org/apache/geronimo/st/core/GeronimoServerBehaviourDelegate.java Date: Fri, 15 Sep 2006 19:57:57 -0000 To: scm@geronimo.apache.org From: sppatel@apache.org X-Mailer: svnmailer-1.1.0 Message-Id: <20060915195757.49A061A981A@eris.apache.org> X-Virus-Checked: Checked by ClamAV on apache.org X-Spam-Rating: minotaur.apache.org 1.6.2 0/1000/N Author: sppatel Date: Fri Sep 15 12:57:56 2006 New Revision: 446707 URL: http://svn.apache.org/viewvc?view=rev&rev=446707 Log: fix, if module undeployed or stopped outside of eclipse, eclipse deployment gets out of sync and scenario ignored. Modified: geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.core/src/org/apache/geronimo/st/core/GeronimoServerBehaviourDelegate.java Modified: geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.core/src/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/org/apache/geronimo/st/core/GeronimoServerBehaviourDelegate.java?view=diff&rev=446707&r1=446706&r2=446707 ============================================================================== --- geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.core/src/org/apache/geronimo/st/core/GeronimoServerBehaviourDelegate.java (original) +++ geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.core/src/org/apache/geronimo/st/core/GeronimoServerBehaviourDelegate.java Fri Sep 15 12:57:56 2006 @@ -190,16 +190,17 @@ */ public void publishModule(int kind, int deltaKind, IModule[] module, IProgressMonitor monitor) throws CoreException { - Trace.trace(Trace.INFO, ">> publishModule(), deltaKind = " + deltaKind); + Trace.trace(Trace.INFO, ">> publishModule(), deltaKind = " + deltaKindToString(deltaKind)); Trace.trace(Trace.INFO, Arrays.asList(module).toString()); _monitor = monitor; - if (module.length == 1 && (deltaKind == ADDED || deltaKind == REMOVED)) { + //NO_CHANGE need if app is associated but not started and no delta + if (module.length == 1 && (deltaKind == ADDED || deltaKind == REMOVED || deltaKind == NO_CHANGE)) { invokeCommand(deltaKind, module[0]); } else if (deltaKind == CHANGED) { // TODO This case is flawed due to WTP Bugzilla 123676 invokeCommand(deltaKind, module[0]); - } + } setModulePublishState(module, IServer.PUBLISH_STATE_NONE); @@ -310,6 +311,10 @@ doUndeploy(module); break; } + case NO_CHANGE: { + doNoChange(module); + break; + } default: throw new IllegalArgumentException(); } @@ -450,6 +455,27 @@ Trace.trace(Trace.INFO, "<< doUndeploy()" + module.toString()); } + + protected void doNoChange(IModule module) throws Exception { + + Trace.trace(Trace.INFO, ">> doNoChange() " + module.toString()); + + boolean found = false; + try { + TargetModuleID id = DeploymentUtils.getTargetModuleID(module, DeploymentCommandFactory.getDeploymentManager(getServer())); + found = id != null; + } catch (TargetModuleIdNotFoundException e) { + Trace.trace(Trace.INFO, "TargetModuleId not found."); + } + + if(found) { + start(module); + } else { + doDeploy(module); + } + + Trace.trace(Trace.INFO, "<< doNoChange()" + module.toString()); + } protected void doRestart(IModule module) throws Exception { Trace.trace(Trace.INFO, ">> doRestart() " + module.toString()); @@ -648,4 +674,19 @@ public Target[] getTargets() { return null; } + + public static String deltaKindToString(int kind) { + switch(kind) { + case NO_CHANGE: + return "NO_CHANGE"; + case ADDED: + return "ADDED"; + case CHANGED: + return "CHANGED"; + case REMOVED: + return "REMOVED"; + } + return Integer.toString(kind); + } + }